CentOS 7下Kubernetes 一直ContainerCreating


前言:

新手上路,体验一下k8s的魅力,未想出师不利:
CentOS 7下Kubernetes :kubectl create -f xxx.yaml之后显示了created,不过一直是处于ContainerCreating状态,果断采用:
kubectl describe pod xxx,结果显示:

Error syncing pod, skipping: failed to “StartContainer” for “POD” with ErrImagePull: "image pull failed for registry.access.redhat.com/rhel7/pod-infrastructure:latest, this may be because there are no credentials on this request. details: (open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: no such file or directory)

搜索找到的头几个中文搜索结果做法大同小异,安装rhsm系列的包

解决方式:

yum install -y *rhsm*

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm

执行之后重试还是不行,并且还报错了,也有可能到这一步就已经解决问题了。
(kubectl create -f xxx.yaml的时候如果存在pod需要先删掉:kubectl delete -f xxx.yaml)

解决方式2:

搜索 rhsm 一番之后发现是centos的一个bug
在这里插入图片描述
链接如下:https://bugs.centos.org/view.php?id=14785
有兴趣的小伙伴可以去看看。然而我在网上找到了另一个解决方案:

 openssl s_client -showcerts -servername registry.access.redhat.com -connect registry.access.redhat.com:443 </dev/null 2>/dev/null | openssl x509 -text > /etc/rhsm/ca/redhat-uep.pem

错误原因:

rhsm系列是redhat红帽的订阅服务相关包,centos是重编译redhat发布得到的,所以也需要用到rhsm。报错信息里报告的缺的证书位置,其实只是个符号链接,真正缺的证书位置在 /etc/rhsm/ca/redhat-uep.pem 。 某个版本以前这个证书是通过 python-rhsm-certificates包提供,但centos 7 里提示这个包被 subscription-manager-rhsm-certificates替代了,但是有问题,就产生了我们这个问题。

一步一个脚印,脚抬起来的时候才发现这个脚印有点深。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值