k8s添加/删除节点,证书有效期

背景: 网络calico,pod未指定IP,以及未固定IP

1、删除节点
1.1执行驱逐pod命令
kubectl drain kube-slave03 --delete-local-data --force --ignore-daemonsets

注意:驱逐实则是执行删除pod得操作,如果pod非控制器管理,那么pod将不存在,反之。

参数解释
–delete-local-data: 删除本地节点
–force: 强制,忽略非pod管理得容器
–ignore-daemonsets:忽略守护程序集管理的pod

1.2查看node状态
[root@kube-master ~]# kubectl get nodes
NAME           STATUS                     ROLES    AGE    VERSION
kube-master    Ready                      master   2d4h   v1.18.2
kube-slave01   Ready                      <none>   46h    v1.18.2
kube-slave02   Ready                      <none>   46h    v1.18.2
kube-slave03   Ready,SchedulingDisabled   <none>   21h    v1.20.1

此时kube-slave03是不可调度状态

恢复调度命令:

kubectl uncordon <node-name>
1.3执行删除node命令
[root@kube-master ~]# kubectl delete node kube-slave03 
node "kube-slave03" deleted

完成,在删除的节点上,执行下:kubeadm reset 则将所有的pod容器,以及网络 路由等 删除,并停止kubelet,其他无影响

2、添加节点

加入集群的命令格式:kubeadm join --token : --discovery-token-ca-cert-hash sha256:

由于默认token的有效期为24小时,当过期之后,该token就不可用了,解决方法如下

[root@kube-master ~]# kubeadm token list
[root@kube-master ~]# kubeadm token create
[root@kube-master ~]# kubeadm token list
[root@kube-master ~]# openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'
7f2dbe608fbe6d9d053560208b3b780d62d80e8fe7487aa3d65dee3645d9b8dd
kubeadm join api:6443 --token ez7z4a.kzoeu3nmiv1g6bcn --discovery-token-ca-cert-hash sha256:7f2dbe608fbe6d9d053560208b3b780d62d80e8fe7487aa3d65dee3645d9b8dd
3、查看证书

证书有效期

sudo kubeadm alpha certs check-expiration

手动更新

kubeadm alpha certs renew all
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐