本次从
1.18.18
升级至1.19.14
升级说明
Kubernetes集群小版本升级基本上是只需要更新二进制文件即可。如果大版本升级需要注意kubelet参数的变化,以及其他组件升级之后的变化。 由于Kubernete版本更新过快许多依赖并没有解决完善,并不建议生产环境使用较新版本。
建议:多master环境的话,先其中一个master升级好所有服务。然后创建一个测试应用跑在该master节点,观察应用是否正常。没有问题再逐台升级
升级master服务
停止服务
systemctl stop keepalived
systemctl stop kube-apiserver
systemctl stop kube-controller-manager
systemctl stop kube-scheduler
备份包
mkdir -p /data/k8s/bin/bak/1.18.18/
cd /data/k8s/bin/
mv kube-apiserver kube-controller-manager kube-scheduler kubectl bak/1.18.18/
替换包
cp kube-apiserver kube-controller-manager kube-scheduler kubectl /data/k8s/bin/
启动服务
systemctl start kube-apiserver
systemctl start kube-controller-manager
systemctl start kube-scheduler
升级node服务
停止服务
systemctl stop kubelet
systemctl stop kube-proxy
备份包
mkdir -p /data/k8s/bin/bak/1.18.18/
cd /data/k8s/bin/
mv kubelet kube-proxy bak/1.18.18/
替换包
cp kubelet kube-proxy /data/k8s/bin/
启动服务
systemctl start kubelet
systemctl start kube-proxy
验证
kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master01 Ready <none> 6h18m v1.19.14
k8s-master02 Ready <none> 6h18m v1.19.14
k8s-node01 Ready <none> 6h18m v1.18.18
k8s-node02 Ready <none> 6h18m v1.18.18
k8s-node03 Ready <none> 6h18m v1.18.18