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集群以及如何新增节点。

相关推荐
像风一样自由20201 小时前
52.Docker部署大模型应用从本地开发到服务化运行
运维·人工智能·docker·容器·大模型·智能体
Smoothcloud润云3 小时前
PyTorch大模型权重加载与启动耗时优化实战:定位磁盘、内存与显存瓶颈
人工智能·pytorch·python·深度学习·gpu算力
陈陈CHENCHEN5 小时前
【Kubernetes】纯 IPv6 K8s 用 socat 打通 IPv4 服务
云原生·容器·kubernetes
CCblandy6 小时前
HTTP 长连接 3 类故障实测:[WinError 10053]、99 个 TIME_WAIT、69 次多余握手,4 种对策怎么选
后端·python·网络协议·http·云原生·性能优化·架构
阿里云云原生7 小时前
阿里云 AgentCore 产品负责人解读产品全景
云原生·agent
阿里云云原生7 小时前
告别手动补索引:SLS 支持索引自动发现,让数据开箱即用、自由分析
云原生
阿里云云原生8 小时前
从 HTTP 200 到第一个有效输出:AI SSE 拨测如何量化流式体验
云原生
分布式存储与RustFS8 小时前
rclone 与 mc mirror:S3 对象存储同步,限速、过滤、断点续传实测对比
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
阿里云云原生9 小时前
Kitta:Code Review Agent,提升代码审查质量
云原生
灯澜忆梦10 小时前
【docker】#4 | Docker 自定义镜像与 Dockerfile
运维·docker·容器