如何在Ubuntu 16.04上升级containerd以适配Kata Container 2.4.3
在Ubuntu 16.04上升级containerd到v1.5.2的方案
一、备份现有数据与配置
- 停止containerd服务:
sudo systemctl stop containerd - 备份配置目录:
sudo cp -r /etc/containerd /etc/containerd.backup-$(date +%Y%m%d) - 备份数据存储目录(若使用自定义路径,替换为对应路径):
sudo cp -r /var/lib/containerd /var/lib/containerd.backup-$(date +%Y%m%d)
二、卸载旧版本containerd
若通过apt安装
- 彻底卸载旧版本及依赖:
sudo apt remove --purge containerdsudo apt autoremove --purge
若为手动二进制安装
- 删除相关可执行文件:
sudo rm -rf /usr/bin/containerd /usr/bin/containerd-shim /usr/bin/containerd-shim-runc-v1 /usr/bin/ctr
三、安装containerd v1.5.2
Ubuntu 16.04的glibc版本满足containerd v1.5.2运行要求,采用官方二进制包安装:
- 获取containerd v1.5.2的linux-amd64架构压缩包,解压至系统目录:
sudo tar Cxzvf /usr/local containerd-1.5.2-linux-amd64.tar.gz - 获取与containerd v1.5.2兼容的runc二进制(推荐v1.0.2版本),赋予执行权限并移动到系统路径:
sudo install -m 755 runc.amd64 /usr/local/sbin/runc - 创建systemd服务文件
/etc/systemd/system/containerd.service,写入以下内容:[Unit] Description=containerd container runtime Documentation=https://containerd.io After=network.target local-fs.target [Service] ExecStartPre=-/sbin/modprobe overlay ExecStart=/usr/local/bin/containerd Restart=always RestartSec=5 Delegate=yes KillMode=process OOMScoreAdjust=-999 LimitNOFILE=1048576 LimitNPROC=infinity LimitCORE=infinity [Install] WantedBy=multi-user.target
四、初始化containerd配置
- 创建配置目录并生成默认配置:
sudo mkdir -p /etc/containerdsudo containerd config default > /etc/containerd/config.toml - (可选)调整cgroup配置:若系统使用systemd管理cgroup,编辑
/etc/containerd/config.toml,找到[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]段,将SystemdCgroup设为true - 重新加载systemd配置:
sudo systemctl daemon-reload
五、启动服务并验证
- 启动containerd并设置开机自启:
sudo systemctl start containerdsudo systemctl enable containerd - 验证版本:
containerd --version
正常输出应包含containerd github.com/containerd/containerd v1.5.2 - 检查服务状态:
sudo systemctl status containerd
六、适配Kata Containers 2.4.3
- 检查Kata配置文件(通常位于
/etc/kata-containers/configuration.toml),确认containerd_runtime_path指向/usr/local/bin/containerd - 重启Kata相关服务:
sudo systemctl restart kata-runtime
内容的提问来源于stack exchange,提问作者ChrisFisher
相关产品推荐
相关产品推荐

