记录一次k8s证书过期处理

1、使用大佬的成果(-_-)

  因为我的k8s是使用kubeadm搭建,所以只需要使用kubeadm直接续签就行;
  原文连接:http://t.zoukankan.com/zoujiaojiao-p-15161862.html

2、查看证书有效期

kubeadm alpha certs check-expiration

确认是证书过期导致kubectl命令无法使用,再进行下面的操作。

3、备份数据

3.1 备份k8s证书及配置文件
cp -r /etc/kubernetes  /etc/kubernetes_bak
3.2 备份用户config文件
cp $HOME/.kube/config $HOME/.kube/config_bak

4、重新生成证书

kubeadm alpha certs renew all

5、替换用户config

cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

现在可以使用kubectl命令查看资源,但是无法创建;

6、重启kubelet

systemctl restart kubelet
systemctl status kubelet  #查看重启后的状态

7、重启kube-apiserver、kube-controller-manager、kube-scheduler的pod

注:不能使用kubectl delete pod pod_name 来重启pod。至于为什么,可以参看大佬的文章
这一步如果没有做的话,kubectl命令能使用,但是无法扩容pod,也无法创建资源。

正确做法: 找到每个组件对应的docker 容器,然后重启容器

docker ps |grep kube-apiserver|grep -v pause|awk '{print $1}'|xargs -i docker restart {}
docker ps |grep kube-controller-manage|grep -v pause|awk '{print $1}'|xargs -i docker restart {}
docker ps |grep kube-scheduler|grep -v pause|awk '{print $1}'|xargs -i docker restart {}

当然也可以只采用awk前面一段,然后手动restart。

这一步只需要在master节点上执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值