记录一次k8s1.26.4 部署calico失败的解决方式
k8s1.26.4 版本 calico部署失败,插件升级,容器启动失败
·
部署calico时,容器一直启动失败,使用 kubectl describe pods 容器名 -n kube-system 进入容器查看,提示找不到k8s.gcr.io/pause:3.6 ,我用的是k8s.gcr.io/pause:3.7,这是第一个坑,没办法,去下载下来,放到每个服务器下,重新部署,还是失败。
这次继续查看容器内报错,
failed to create containerd task: failed to create shim task: OCI
runtime create failed: unable to retrieve OCI runtime error (open
/run/containerd/io.containerd.runtime.v2.task/k8s.io/c4847070fad34a8da9b16b5c20cdc38e28a15cfcf9913d712e4fe60d8c9029f7/log.json:
no such file or directory): runc did not terminate successfully: exit
status 127: unknown
寻求各种解决方式,发现是一个libseccomp-2.3.1-3.el7.x86_6 插件的版本过低,在k8s1.24.7之前都没有这个bug,需要把他升级到2.5.1,升级方式如下:
1.查看当前安装版本
rpm -qa | grep libseccomp
libseccomp-2.3.1-3.el7.x86_64
2.卸载当前低安装版本
这里有2种方式,我的是用第二种方式卸载的,大家根据需求哈
第一种:rpm -e libseccomp-2.3.1-3.el7.x86_6 --nodeps
第二种:yum remove -y libseccomp
3. 下载安装包
wget https://rpmfind.net/linux/centos/8-stream/BaseOS/x86_64/os/Packages/libseccomp-2.5.1-1.el8.x86_64.rpm
wget https://rpmfind.net/linux/centos/8-stream/BaseOS/x86_64/os/Packages/libseccomp-2.5.2-1.el8.x86_64.rpm
4,使用命令安装libseccomp高版本插件
rpm -ivh libseccomp-2.5.1-1.el8.x86_64.rpm
5.查看当前版本
rpm -qa | grep libseccomp
libseccomp-2.5.1-1.el8.x86_64
再次使用kubectl get pods -A 查看calico容器,已经全部启动正常。
更多推荐
已为社区贡献1条内容
所有评论(0)