k8s集群添加一个新GPU节点

前提

现在是已经搭建好一个GPU集群,需要添加一个新的节点(3090卡),用来分担工作,大致可以分为以下几个部分:

  • 1,安装GPU驱动
  • 2,安装docker
  • 3,安装cri-dockerd
  • 4,离线安装Nvidia-container-toolkit
  • 5,二进制安装k8s组件以及密钥
    下面分别介绍。

1,安装GPU驱动

详情可见:
https://blog.csdn.net/m0_62464865/article/details/145487945?spm=1001.2014.3001.5502

2,安装docker

详情可见:
https://blog.csdn.net/m0_62464865/article/details/145491293?spm=1001.2014.3001.5502

3,安装cri-dockerd

3.1 下载并解压

bash 复制代码
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.16/cri-dockerd-0.3.16.arm64.tgz
tar -zxvf cri-dockerd-0.3.16.arm64.tgz

如果是amd64架构,则用下面的地址:

bash 复制代码
https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.16/cri-dockerd-0.3.16.amd64.tgz

3.2 复制到bin目录下

bash 复制代码
sudo cp cri-dockerd /usr/bin/

3.3 配置启动文件

bash 复制代码
sudo vim /usr/lib/systemd/system/cri-docker.service
bash 复制代码
[Unit]
Description=CRI Interface for Docker Application Container Engine
Documentation=https://docs.mirantis.com
After=network-online.target firewalld.service docker.service
Wants=network-online.target
Requires=cri-docker.socket
 
[Service]
Type=notify
 
ExecStart=/usr/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.7
 
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
 
StartLimitBurst=3
 
StartLimitInterval=60s
 
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
 
TasksMax=infinity
Delegate=yes
KillMode=process
 
[Install]
WantedBy=multi-user.target
bash 复制代码
sudo vim /usr/lib/systemd/system/cri-docker.socket
bash 复制代码
[Unit]
Description=CRI Docker Socket for the API
PartOf=cri-docker.service
 
[Socket]
ListenStream=%t/cri-dockerd.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
 
[Install]
WantedBy=sockets.target

3.4 启动cri-docker并设置开机启动

bash 复制代码
sudo systemctl daemon-reload 
sudo systemctl enable cri-docker --now
sudo systemctl status cri-docker

4,离线安装Nvidia-container-toolkit

https://blog.csdn.net/m0_62464865/article/details/145500004?spm=1001.2014.3001.5502

5,二进制安装k8s组件以及密钥

由于这部分涉及内容比较多,空闲时间再详细写离线情况下如何搭k8s的GPU集群以及如何新增节点。

相关推荐
pride.li9 小时前
Docker教程-Docker安装与镜像配置
运维·docker·容器
bgy66669 小时前
Docker Swarm 容器编排实战指南
运维·docker·容器
再卷还是菜11 小时前
Cephfs总结及kubernetes+Cephfs的整合项目
云原生·容器·kubernetes
底层玩家老张11 小时前
数据库上K8s,运维为什么反而更累了?从StatefulSet到Operator的复盘
数据库·kubernetes·operator·数据库运维·架构选型
力江11 小时前
GitLab 私有化部署实战 —— 从 Omnibus 到 Docker 的踩坑之旅
docker·容器·gitlab
深念Y12 小时前
Docker 镜像体积从 110MB 降到 13MB 后端服务的瘦身
运维·docker·容器
秦jh_14 小时前
【Docker】镜像仓库
docker·容器
IT大白鼠14 小时前
使用 Docker 部署 Kubernetes 集群:容器方式搭建 K8s 环境
docker·容器·kubernetes
大大大大晴天️17 小时前
从 HDFS 到对象存储:计算存储分离如何重塑云原生大数据底座
大数据·云原生
阿里云云原生1 天前
Agent 观测与优化三城巡演丨第二站深圳精彩回顾 & PPT 下载
云原生