**文書の過去の版を表示しています。**
NVIDIA driverのインストール
https://www.server-world.info/query?os=CentOS_7&p=nvidia を参照。
システムのランレベルを変更する場合は以下のようにします。 [1] ランレベルは /etc/systemd/system/default.target へのリンクで決定されています。 例えばGUI無しの場合のデフォルトは以下のようになっています。 # 現在の設定を表示 [root@dlp ~]# systemctl get-default multi-user.target # /etc/systemd/system/default.target へのリンク元は /lib/systemd/system/multi-user.target [root@dlp ~]# ll /etc/systemd/system/default.target lrwxrwxrwx. 1 root root 37 Jul 9 06:04 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target [2] 例えば、グラフィカルログインに変更するには以下のようにします。 [root@dlp ~]# systemctl set-default graphical.target rm '/etc/systemd/system/default.target' ln -s '/usr/lib/systemd/system/graphical.target' '/etc/systemd/system/default.target' # 確認 [root@dlp ~]# systemctl get-default graphical.target [root@dlp ~]# ll /etc/systemd/system/default.target lrwxrwxrwx 1 root root 36 Jul 9 21:55 /etc/systemd/system/default.target -> /lib/systemd/system/graphical.target
NVIDIAドライバーをインストールする2018/01/28 システムに NVIDIA 社のグラフィックカードを搭載している場合、NVIDIA 社提供のグラフィックドライバーをインストールすることで、よりよいパフォーマンスを得ることができます。 なお、[yum update kernel] 等でカーネルを更新した際は、都度、ドライバーの更新も必要になります。 [1] デスクトップ環境をインストールしている場合は、こちらを参考に、グラフィカルログイン無しでシステムを起動しておきます。 ドライバーのインストール完了後はグラフィカルログインに戻して OK です。 [2] デフォルトでロードされている nouveau ドライバーを無効化しておきます。 [root@dlp ~]# lsmod | grep nouveau nouveau 1622010 1 video 24520 1 nouveau mxm_wmi 13021 1 nouveau wmi 19070 2 mxm_wmi,nouveau i2c_algo_bit 13413 1 nouveau drm_kms_helper 159169 1 nouveau ttm 99345 1 nouveau drm 370825 4 ttm,drm_kms_helper,nouveau i2c_core 40756 5 drm,i2c_i801,drm_kms_helper,i2c_algo_bit,nouveau [root@dlp ~]# vi /etc/modprobe.d/blacklist-nouveau.conf # 最終行に追記 (ファイルがない場合は新規作成) blacklist nouveau options nouveau modeset=0 [root@dlp ~]# dracut --force [root@dlp ~]# reboot
sudo yum -y install kernel-devel-$(uname -r) kernel-header-$(uname -r) #ただ、kernelが古すぎると、同じバージョンのカーネルが無いので、バージョンを消した下記のコマンドを実行 #sudo yum -y install kernel-devel kernel #reboot sudo bash ~/download/NVIDIA-Linux-x86_64-470.63.01.run sudo nano /etc/rc.d/rc.local #ファイルの末尾に nvidia-persistenced
Podmanへのインストール @ Rocky Linux 9.2
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html を見るに、RHEL9もCentOS8のリポジトリとおなじみたい。
curl -s -L https://nvidia.github.io/nvidia-docker/centos8/nvidia-docker.repo > /etc/yum.repos.d/nvidia-docker.repo dnf install -y nvidia-container-toolkit-base nano /etc/nvidia-container-runtime/config.toml #下記のように変更 [nvidia-container-cli] #no-cgroups = false no-cgroups = true [nvidia-container-runtime] #debug = "/var/log/nvidia-container-runtime.log" debug = "~/.local/nvidia-container-runtime.log" 下記で確認 podman run --security-opt=no-new-privileges --cap-drop=ALL --security-opt \ label=type:nvidia_container_t --hooks-dir=/usr/share/containers/oci/hooks.d/ \ docker.io/nvidia/cuda:10.2-base nvidia-smi では動かなかったので dnf -y install nvidia-container-toolkit して podman run nvidia/cuda:10.2-base nvidia-smi だとユーザ権限で動いた
CUDAのインストール2023/07/03
#wget https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda-repo-rhel9-12-2-local-12.2.0_535.54.03-1.x86_64.rpm #dnf -y install /suikou/download9/cuda-repo-rhel9-12-2-local-12.2.0_535.54.03-1.x86_64.rpm #dnf -y install cuda #pytorchに合わせてバージョンを変えるためリポジトリを使ってインストール config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo dnf clean all dnf -y module install nvidia-driver:latest-dkms dnf -y install cuda #各ユーザで pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
Dockerのインストール
sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker sudo docker run --rm hello-world sudo usermod -aG docker $USER
curl https://nvidia.github.io/nvidia-docker/centos7/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo #yum -y install nvidia-container-toolkit sudo yum install -y nvidia-docker2 sudo systemctl restart docker docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
zabbix登録
sudo mkdir /etc/zabbix/scripts sudo nano /etc/zabbix/scripts/get_gpus_info.sh
下記のファイルを作る
#!/bin/bash result=$(/usr/bin/nvidia-smi -L) first=1 echo "{" echo "\"data\":[" while IFS= read -r line do if (( "$first" != "1" )) then echo , fi index=$(echo -n $line | cut -d ":" -f 1 | cut -d " " -f 2) gpuuuid=$(echo -n $line | cut -d ":" -f 3 | tr -d ")" | tr -d " ") echo -n {"\"{#GPUINDEX}"\":\"$index"\", \"{#GPUUUID}"\":\"$gpuuuid\"} if (( "$first" == "1" )) then # echo , first=0 fi done < <(printf '%s\n' "$result") echo echo "]" echo "}"
sudo nano /etc/zabbix/zabbix_agentd.conf
UserParameter=gpu.number,/usr/bin/nvidia-smi -L | /usr/bin/wc -l UserParameter=gpu.discovery,/etc/zabbix/scripts/get_gpus_info.sh UserParameter=gpu.fanspeed[*],nvidia-smi --query-gpu=fan.speed --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.power[*],nvidia-smi --query-gpu=power.draw --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.temp[*],nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.utilization[*],nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.memfree[*],nvidia-smi --query-gpu=memory.free --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.memused[*],nvidia-smi --query-gpu=memory.used --format=csv,noheader,nounits -i $1 | tr -d "\n" UserParameter=gpu.memtotal[*],nvidia-smi --query-gpu=memory.total --format=csv,noheader,nounits -i $1 | tr -d "\n"
sudo systemctl restart zabbix-agent.service