From 4f90405092869d4a497b389480079f7382727526 Mon Sep 17 00:00:00 2001 From: Massaki Archambault Date: Wed, 7 Aug 2024 00:49:54 -0400 Subject: [PATCH] add nvidia gpu drivers to k3s --- hosts | 2 ++ roles/k3s/defaults/main.yml | 3 ++- roles/k3s/tasks/vm.yml | 21 ++++++++++++++++++++ roles/proxmox/files/pve-no-subscription.list | 2 +- roles/proxmox/tasks/main.yml | 6 ------ 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/hosts b/hosts index 85d2b7a..2f341e4 100644 --- a/hosts +++ b/hosts @@ -23,6 +23,8 @@ all: vfio_pci_ids: - '1002:731f' # Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] - '1002:ab38' # Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 HDMI Audio + - '10de:13f1' # VGA compatible controller [0300]: NVIDIA Corporation GM204GL [Quadro M4000] + - '10de:0fbb' # Audio device [0403]: NVIDIA Corporation GM204 High Definition Audio Controller bastion: hosts: bastion: diff --git a/roles/k3s/defaults/main.yml b/roles/k3s/defaults/main.yml index 527a2e3..bf1c27a 100644 --- a/roles/k3s/defaults/main.yml +++ b/roles/k3s/defaults/main.yml @@ -1 +1,2 @@ -platform: lxc \ No newline at end of file +platform: lxc +nvidia_driver_branch: 550 \ No newline at end of file diff --git a/roles/k3s/tasks/vm.yml b/roles/k3s/tasks/vm.yml index 3d14a28..c2518b2 100644 --- a/roles/k3s/tasks/vm.yml +++ b/roles/k3s/tasks/vm.yml @@ -7,3 +7,24 @@ group: root mode: 0755 notify: reboot + +# Begin nvidia +# https://dev.to/mweibel/add-nvidia-gpu-support-to-k3s-with-containerd-4j17 +- name: Download nvidia repository gpg key + get_url: + url: https://nvidia.github.io/libnvidia-container/gpgkey + dest: /usr/share/keyrings/nvidia-container-toolkit-keyring.asc + +- name: Add nvidia repository + apt_repository: + repo: deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.asc] https://nvidia.github.io/libnvidia-container/stable/deb/$(ARCH) / + +- name: Install nvidia drivers and nvidia container toolkit + apt: + update_cache: true + name: + - linux-modules-nvidia-{{ nvidia_driver_branch }}-server-generic + - nvidia-utils-{{ nvidia_driver_branch }}-server + - nvidia-container-toolkit + notify: reboot +# End nvidia \ No newline at end of file diff --git a/roles/proxmox/files/pve-no-subscription.list b/roles/proxmox/files/pve-no-subscription.list index 91808ec..58ccea0 100644 --- a/roles/proxmox/files/pve-no-subscription.list +++ b/roles/proxmox/files/pve-no-subscription.list @@ -1 +1 @@ -deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription +deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription diff --git a/roles/proxmox/tasks/main.yml b/roles/proxmox/tasks/main.yml index 9073918..2eb3e56 100644 --- a/roles/proxmox/tasks/main.yml +++ b/roles/proxmox/tasks/main.yml @@ -1,9 +1,3 @@ -- name: Install linux-tools - apt: - update_cache: true - name: - - linux-tools-generic - - name: Enable IOMMU lineinfile: path: /etc/default/grub