
v1.14.3更新证书
kubeadm alpha certs renew all 更新 kubeadm (因为 apt 源的因素,本文更新到 v1.17.3 最低可用版本未验证)
apt update apt install kubeadm 更新配置文件中的证书
kubeadm alpha certs renew admin.conf kubeadm alpha certs renew controller-manager.conf kubeadm alpha certs renew scheduler.conf 查看证书有效期, 确保全部更新
kubeadm alpha certs check-expiration 生成临时 token (需要 api-server 正常运行)
注意: 在完成之前步骤中,经过不少尝试配置,因此可能会存在遗漏的配置
kubeadm token create $(kubeadm token generate) 更新所有节点 bootstrap-kubelet.conf, 删除失效的 kubelet.conf, 并重启节点上的 kubelet
将前一步生成的 token 替换 bootstrap-kubelet.conf 中的 token 多节点建议用自动化工具(编者使用 ansible)
- name: update kubelet bootstrap token replace: path: /var/lib/kubelet/kubeadm-flags.env regexp: 'old.token' replace: 'new.token' - name: remove the old kubelet.conf file: path: /etc/kubernetes/kubelet.conf state: absent - name: reload service kubelet, in all cases systemd: name: kubelet state: restarted 更新 kubectl 配置
cp /etc/kubernetes/admin.conf ~/.kube/config 验证集群是否恢复正常
1 kennylam777 2020 年 7 月 10 日 都用上了 Ansible, 不如考 kubespray? |
2 1daydayde 2020 年 7 月 10 日 via iPhone 记得 kubeadm 可以更新集群的证书啊 |