layout: post title: kubernetes 升級 (1.20 -> 1.23) on gentoo date: 2022-01-27 00:00 +0800 categories:
升級需要手動修正的:
cert-manager 升級到 1.6.1,相關資源升級到 cert-manger.io/v1
Ingress升級到networking.k8s.io/v1,需要加上 ingressClassName: nginx
PodSecurityPolicy在1.25後deprecated,預防性先停用相關設定
ServiceTopology deprecated,移除相關設定
升級順序 (版本無法跳過,需逐個minor version升級):
emerge --ask =sys-cluster/kubeadm-1.22.5
kubeadm upgrade plan
看一下是否符合升級條件kubeadm upgrade apply v1.22.5
kubeadm upgrade node
emerge =sys-cluster/kubelet-1.22.5 =sys-cluster/kubectl-1.22.5
/etc/systemd/system/multi-user.target.wants/kubelet.service
把docker.service改成例如crio.servicesystemctl daemon-reload && systemctl restart kubelet
master node如果restart kubelet要稍微給一點時間間隔,讓etcd能夠重新連線,避免倒站
一直重複更新直到最新版