kubernetes calico组件启动失败解决

问题描述

k8s集群是由kubeadm方式部署的,由于集群很久没有使用了,刚把master节点的证书问题解决了,现在calico也无法使用,报错如下:

failed to query kubeadm's config map error=Get "https://xx.xx.xx.xx:443/api/v1/namespaces/kube-system/configmaps/kubeadm-config?timeout=2s": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

解决步骤:

看日志详细信息显示:Readiness probe failed导致重启pod失败。未能成功访问kubeadm’s config导致calico启动失败。
1、解决方法:calico-node默认访问kubernetes SVC的443端口,这将导致无法访问apiserver,需要在yaml文件添加apiserver的IP和端口,字段名:KUBERNETES_SERVICE_HOST、KUBERNETES_SERVICE_PORT、KUBERNETES_SERVICE_PORT_HTTPS。
KUBERNETES_SERVICE_HOST:是k8s的kubernetes服务的serviceIP
KUBERNETES_SERVICE_PORT: 是k8s的kubernetes服务的端口号
KUBERNETES_SERVICE_PORT_HTTPS:是k8s的kubernetes服务的https端口号
在线修改calico-node的daemonset文件,也可以修改calico-etcd.yaml文件然后执行kubectl -n kube-system apply -f calico-etcd.yaml文件重新更新一下
下面的图片是在线编辑calico-node的daemonset文件,编辑好了以后保存就可以了。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值