在 Kubernetes 上使用 CUDA

随着大语言模型(LLM)时代的到来,我一直想玩玩一些开源的自托管小工具。我正在使用一台老工作站作为家庭实验室,方便的是它安装了一个老的 NVIDIA GPU。由于我正在运行一个 Kubernetes 集群,我希望将 GPU 暴露给工作负载,以便利用现有的基础设施轻松托管、调度和部署 GPU 助力的应用程序。

译自 CUDA on Kubernetes。作者 Vegard S. Hagen 。

这篇文章主要是为了作为参考材料,当我开始实际的应用程序时,希望它也能帮助其他人。

我目前在一台运行 Debian 11 的裸机单节点上使用 containerd 运行 Kubernetes 1.28“集群”,所以这篇文章将假设一个类似的设置,尽管我尝试链接到其他设置的相关资源。

将来,当我切换到使用 Proxmox 或类似的虚拟化时,我可能也会更新这篇文章以新增配置。

配置

NVIDIA k8s-device-plugin 的前提条件是节点上运行工作负载的 NVIDIA CUDA 驱动程序和容器工具包能够正常工作。

CUDA 驱动程序

开始之前,请确保您没有任何现有的 NVIDIA 驱动程序,可以使用以下命令卸载它们:

sudo apt-get autoremove cuda* nvidia* nouveau* --purge

并重新启动计算机。

卸载图形驱动程序可能会破坏您的桌面环境。它应该会在下面的步骤中使用新的驱动程序自行修复。

在安装 GPU 驱动程序之前,我们需要适当的内核头文件,可以通过运行以下命令获取:

sudo apt-get install linux-headers-$(uname -r)

接下来我们添加 CUDA 驱动程序的密钥环和仓库

distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g')
wget https://developer.download.nvidia.com/compute/cuda/repos/$distribution/x86_64/cuda-keyring_1.1-1_all.deb 
sudo dpkg -i cuda-keyring_1.1-1_all.deb

这样我们就可以轻松地使用 apt-get 安装驱动程序:

sudo apt-get update
sudo apt-get install cuda-drivers

重启并通过运行以下命令确保驱动程序正常工作:

nvidia-smi

然后您应该会看到有关连接的 GPU 和驱动程序版本的信息。

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 545.23.08              Driver Version: 545.23.08    CUDA Version: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值