kubeadm升级kubernetes HA版本
kubeadm升级kubernetes HA版本
[TOC]
1. 版本说明
文档适用v1.12.x
升级到v1.13.y
或者1.13.x
升级到v1.13.y
2. 操作说明
2.1 master节点升级
第一台master节点
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# 首先升级kubeadm yum upgrade -y kubeadm --disableexcludes=kubernetes kubeadm version kubeadm upgrade plan node=master1 kubectl drain $node --ignore-daemonsets cd /etc/kubernetes/ kubectl -n kube-system get cm kubeadm-config -oyaml > kubeadm-config.yaml # 删除etcd相关配置,添加所有的apiEndpoints kubectl edit configmap -n kube-system kubeadm-config kubeadm upgrade apply v1.13.4 \mv /etc/sysconfig/kubelet /tmp/ yum upgrade -y kubelet kubeadm kubectl --disableexcludes=kubernetes kubeadm upgrade node config --kubelet-version $(kubelet --version | cut -d ' ' -f 2) \mv /tmp/kubelet /etc/sysconfig/ systemctl daemon-reload systemctl restart kubelet systemctl status kubelet # 以下步骤若执行失败,可以其它master节点操作 kubectl uncordon $node kubectl get nodes |
其它master节点
1 2 3 4 |
# 上面操作中以下命令作相应替换 ## kubeadm upgrade apply v1.13.4 kubeadm upgrade node experimental-control-plane |
一台一台master升级成功后,依次升级。
2.2 node节点升级
在master上操作:
禁止调度POD
1 2 3 |
node=node4 kubectl drain $node --ignore-daemonsets |
在节点上操作:
升级命令工具和重启kubelet。
1 2 3 4 5 6 7 8 |
\mv /etc/sysconfig/kubelet /tmp/ yum upgrade -y kubelet kubeadm --disableexcludes=kubernetes kubeadm upgrade node config --kubelet-version $(kubelet --version | cut -d ' ' -f 2) \mv /tmp/kubelet /etc/sysconfig/ systemctl daemon-reload systemctl restart kubelet systemctl status kubelet |
在master上操作:
开启POD调度
1 2 3 4 |
node=node4 kubectl uncordon $node kubectl get nodes |
一台一台node升级成功后,依次升级。
参考资料:
[1] https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade-ha-1-13/
[2] https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade-1-13/
微信扫描下方的二维码阅读本文