问题简述
原本用
kubeadm
安装的的kubernetes 1.11.x集群升级到1.12.x 后(使用kubeadm upgrade
升级)发现无法将新的node加入到集群中,会出现以下报错信息
1 | [preflight] running pre-flight checks |
修复方法
在master节点上执行步骤1-4,在从节点(将要加入集群的机器)上执行步骤5
步骤一
从现有的”ConfigMap kubelet-config-1.11” 创建一个新的ConfigMap “kubelet-config-1.12”
1 | $ kubectl get cm --all-namespaces |
步骤二:获取令牌前缀
1 | $ kubeadm token list #if no output, then create a token: |
步骤三
从现有角色“kubeadm:kubelet-config-1.11”创建一个新角色“kubeadm:kubelet-config-1.12”
1 | $ kubectl get roles --all-namespaces |
步骤四
从现有角色绑定 “kubeadm:kubelet-config-1.11” 创建一个新角色绑定 “kubeadm:kubelet-config-1.12”
1 | $ kubectl get rolebindings --all-namespaces |
步骤5:从工作节点启动kubeadm join
1 | $ sudo kubeadm join --token <token> <master-IP>:6443 --discovery-token-ca-cert-hash sha256:<key-value> |