Ubuntu 22.04 下 NVIDIA H100 服务器完整部署攻略:驱动、Fabric Manager 与 Container Toolkit 配置

最近在 Ubuntu 22.04 下部署 NVIDIA H100 服务器,可真是经历了九九八十一难,不过好在最后成功啦,现在就把完整的部署指南分享给大家!

驱动安装

一开始安装驱动的时候,我真是晕了。按照常规方法,先得禁用 Nouveau 驱动,不然会和 NVIDIA 驱动冲突。在 /etc/modprobe.d/blacklist-nouveau.conf 文件里添加两行代码:

plaintext

blacklist nouveau options nouveau modeset=0

然后更新 initramfs:

plaintext

sudo update-initramfs -u

接着重启系统,就可以开始安装 NVIDIA 驱动啦。从 NVIDIA 官网下载对应版本的驱动,给它加上执行权限:

plaintext

chmod +x NVIDIA-Linux-x86_64-xxx.run

再用 root 权限运行安装程序:

plaintext

sudo ./NVIDIA-Linux-x86_64-xxx.run

安装过程中会有一些选项,按照提示选就好啦。

Fabric Manager 配置

Fabric Manager 的配置也不简单啊。首先要安装它,通过包管理器来安装:

plaintext

sudo apt-get install nvidia-fabricmanager

安装好之后,启动服务:

plaintext

sudo systemctl start nvidia-fabricmanager

还要设置开机自启:

plaintext

sudo systemctl enable nvidia-fabricmanager

配置过程中可能会遇到各种问题,比如服务启动失败,这时候就得检查日志文件 /var/log/syslog,看看具体的错误信息,一步步排查解决。

Container Toolkit 配置

最后就是 Container Toolkit 的配置啦。先添加 NVIDIA 的包仓库:

plaintext

distribution=(. /etc/os-release;echo IDVERSION_ID) \\ \&\& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey \| sudo apt-key add - \\ \&\& curl -s -L https://nvidia.github.io/nvidia-docker/distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

更新包列表并安装:

plaintext

sudo apt-get update sudo apt-get install -y nvidia-docker2

安装完成后,重启 Docker 服务:

plaintext

sudo systemctl restart docker

这样 Container Toolkit 就配置好啦!

NVIDIA H100 服务器以其强大的计算能力,成为了众多科研机构、企业进行高性能计算和人工智能研究的首选。而在 Ubuntu 22.04 系统下对 NVIDIA H100 服务器进行完整部署,包括驱动、Fabric Manager 与 Container Toolkit 的配置,是充分发挥其性能的关键步骤。今天,就让我们一起来详细了解这个部署过程。

准备工作

硬件检查

在开始部署之前,我们要确保服务器硬件的正常。首先,检查 NVIDIA H100 GPU 是否正确安装在服务器中,连接是否稳固。同时,查看服务器的电源供应是否能够满足 H100 的高功率需求。一般来说,H100 的功率较高,需要稳定且充足的电源支持。

系统更新

打开终端,输入以下命令来更新 Ubuntu 22.04 系统:

bash

sudo apt update sudo apt upgrade -y

这一步非常重要,它可以确保系统是最新版本,避免因系统版本过旧而导致的兼容性问题。

NVIDIA 驱动安装

禁用 Nouveau 驱动

Nouveau 是 Linux 系统中对 NVIDIA 显卡的开源驱动,它可能会与 NVIDIA 官方驱动产生冲突。我们需要先禁用它。

编辑 /etc/modprobe.d/blacklist-nouveau.conf 文件:

bash

sudo nano /etc/modprobe.d/blacklist-nouveau.conf

在文件中添加以下内容

plaintext

blacklist nouveau options nouveau modeset=0

保存并退出文件,然后更新 initramfs:

bash

sudo update-initramfs -u

重启服务器:

bash

sudo reboot

下载并安装 NVIDIA 驱动

访问 NVIDIA 官方网站(https://www.nvidia.com/Download/index.aspx),根据服务器的 GPU 型号(H100)和系统版本(Ubuntu 22.04)选择合适的驱动程序进行下载。

下载完成后,给驱动文件添加执行权限:

bash

chmod +x NVIDIA-Linux-x86_64-<version>.run

然后,在终端中以 root 用户身份运行驱动安装程序:

bash

sudo ./NVIDIA-Linux-x86_64-<version>.run

在安装过程中,按照提示进行操作,同意许可协议等。安装完成后,重启服务器。

验证驱动安装

重启后,打开终端,输入以下命令来验证 NVIDIA 驱动是否安装成功:

bash

nvidia-smi

如果能够正常显示 NVIDIA GPU 的信息,说明驱动安装成功。

Fabric Manager 配置

安装 Fabric Manager

Fabric Manager 是 NVIDIA 提供的用于管理和监控 GPU 网络的工具。我们可以通过以下命令来安装它:

bash

wget https://developer.download.nvidia.com/compute/nvidia-dcgm/2.4.7/ubuntu2204/dists/x86_64/main/binary-amd64/nvidia-fabricmanager_2.4.7-1_amd64.deb sudo dpkg -i nvidia-fabricmanager_2.4.7-1_amd64.deb

配置 Fabric Manager

安装完成后,需要对 Fabric Manager 进行配置。首先,启动 Fabric Manager 服务:

bash

sudo systemctl start nvidia-fabricmanager

设置服务开机自启:

bash

sudo systemctl enable nvidia-fabricmanager

验证 Fabric Manager

使用以下命令来验证 Fabric Manager 是否正常运行:

bash

sudo nvidia-fabricmanager-cli -s

如果显示正常的状态信息,说明 Fabric Manager 配置成功。

Container Toolkit 配置

安装 Docker

Container Toolkit 依赖于 Docker,所以我们先安装 Docker。

添加 Docker 的官方 GPG 密钥:

bash

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

设置 Docker 的稳定版仓库:

bash

echo \ "deb [arch=(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg\] https://download.docker.com/linux/ubuntu \\ (lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新 apt 包索引并安装 Docker:

bash

sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io -y

启动 Docker 服务并设置开机自启:

bash

sudo systemctl start docker sudo systemctl enable docker

安装 NVIDIA Container Toolkit

添加 NVIDIA Container Toolkit 的仓库:

bash

distribution=(. /etc/os-release;echo IDVERSION_ID) \\ \&\& curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey \| sudo apt-key add - \\ \&\& curl -s -L https://nvidia.github.io/libnvidia-container/distribution/libnvidia-container.list | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

更新 apt 包索引并安装 NVIDIA Container Toolkit:

bash

sudo apt update sudo apt install -y nvidia-docker2

重启 Docker 服务:

bash

sudo systemctl restart docker

验证 Container Toolkit

运行以下命令来验证 NVIDIA Container Toolkit 是否配置成功:

bash

sudo docker run --rm --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

如果能够正常显示 GPU 信息,说明 Container Toolkit 配置成功。

常见问题及解决方法

驱动安装失败

如果在驱动安装过程中出现失败的情况,可能是由于系统中残留的旧驱动或者依赖问题。可以尝试使用 sudo apt purge nvidia* 命令来彻底清除旧驱动,然后重新安装。

Fabric Manager 无法启动

如果 Fabric Manager 无法启动,检查日志文件 /var/log/nvidia-fabricmanager.log 来查看具体的错误信息。可能是权限问题或者配置文件错误,根据日志进行相应的修改。

Container Toolkit 验证失败

如果在验证 Container Toolkit 时失败,检查 Docker 服务是否正常运行,以及 NVIDIA Container Toolkit 的安装是否正确。可以尝试重新安装 NVIDIA Container Toolkit。

通过以上详细的步骤,我们完成了在 Ubuntu 22.04 下 NVIDIA H100 服务器的完整部署,包括驱动、Fabric Manager 与 Container Toolkit 编程语言www.yglmcho.com++c语言的魅力 编程语言C++h5.share.gtxdou.com++c语言的魅力 编程语言C++wap.share.qwkvqni.com++c语言的魅力 编程语言C++web3.share.yglmcho.com++c语言的魅力的配置。这些步骤是确保服务器能够充分发挥其性能的关键。在部署过程中,我们要注意每一个细节,遇到问题时要善于查看日志和搜索相关资料来解决。希望这篇指南能够帮助到大家,让大家在高性能计算和人工智能研究的道路上更加顺畅。

配置FabricManager服务用于GPU网络管理;3)安装Docker并配置NVIDIA Container Toolkit以支持容器化GPU计算。文章提供了详细的命令行操作步骤,并对可能遇到的问题给出了解决方案。通过这三个关键组件的正确配置,可以充分发挥NVIDIA H100服务器的强大计算性能,为高性能计算和人工智能研究提供有力支持。

相关推荐
淼淼爱喝水2 小时前
openEuler 下 Ansible 基础命令详解与实操演示1
linux·服务器·ansible
杨云龙UP2 小时前
Linux环境下Oracle RMAN全量、增量备份与定时任务实践_20260331
linux·运维·服务器·数据库·oracle
xiaomo22492 小时前
javaee-网络编程(基础)
运维·服务器·网络
云飞云共享云桌面2 小时前
8人SolidWorks研发共享一台服务器——性能算力共享智能按需分配
运维·服务器·网络·数据库·3d·电脑
鸠摩智首席音效师2 小时前
什么是 Unix / Linux 中的僵尸进程 ?
linux·服务器·unix
曦月合一2 小时前
访问服务器json接口,将json字符串解析成json格式的demo
运维·服务器·json
开开心心_Every2 小时前
轻松加密文件生成exe,无需原程序解密
运维·服务器·网络·电脑·excel·consul·memcache
郝学胜-神的一滴2 小时前
Linux高性能网络编程基石:epoll核心与文件描述符限制全解
linux·服务器·网络·c++·后端
江畔何人初9 小时前
iptables 和 IPVS 代理模式 Service 的区别
linux·运维·服务器·网络·云原生·kubernetes·代理模式