k8s不要跨大版本升级,容易崩溃
(1)查看节点上运行的pod。
kubectl get pod -o wide |grep <nodename>
(2)查看集群配置文件。
kubectl -n kube-system get cm kubeadm-config -o yaml
(3)查看当前集群节点。
kubectl get node
升级kubeadm
master节点
编辑文件cd /etc/yum.repos.d vim kubernetes.repo(每个要升级的节点都要改,)


yum update -y kubeadm
查看版本kubeadm version
检查你的 Kubernetes 集群能不能升级:kubeadm upgrade plan

执行这个命令升级

腾空节点,即将节点上除守护进程之外的其他进程调度到其他节点,同时将开启调度保护:
kubectl drain k8s-master --ignore-daemonsets

升级kubelet与kubectl组件 :yum update -y kubelet(每个节点都要升级)
重启 kubelet :(每个节点都要重启)
systemctl daemon-reload
systemctl restart kubelet
kubectl get node

(SchedulingDisabled:显示这个节点已经被标记为「不可调度」,新的 Pod 不会再被分配到它上面)
升级node节点(在master节点进行):kubeadm upgrade node
解除调度保护:kubectl uncordon k8s-master

worker节点
cd /etc/yum.repos.d 》 vim kubernetes.repo (更改版本号) 》 kubectl drain k8s-node1 --ignore-daemonsets 》 yum update -y kubelet 》 yum update -y kubectl 》 systemctl daemon-reload 》 systemctl restart kubelet 》 kubectl uncordon k8s-node1
kubectl get node

确认哪些证书即将过期:kubeadm certs check-expiration

(更改时间 date -s "20270101")
证书过期

更新之后要将 cd /etc/kubernetes/ ls cat admin.conf > ~/.kube/config
这样就可以正常查看了

(同步时间 systemctl restart chronyd.service)