在 kubeadm 引导的 k8s 集群中, 查看 nodes 信息时, ROLES 一列标记了 master 节点的身份, 其他节点默认没有标记.。
我们可以手动给任意 node 设置 ROLES。
原理就是给 node 打标签, 只不过是特殊的标签:
root@k8s-master:~# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready master 50d v1.11.2
k8s-node1 NotReady <none> 50d v1.11.2
k8s-node2 NotReady <none> 50d v1.11.2
root@k8s-master:~# kubectl label node k8s-node1 node-role.kubernetes.io/worker=worker
node/k8s-node1 labeled
root@k8s-master:~# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready master 50d v1.11.2
k8s-node1 NotReady worker 50d v1.11.2
k8s-node2 NotReady <none> 50d v1.11.2
给一个节点打上master标签可以如下配置:
kubectl label node k8s-node2 node-role.kubernetes.io/master=master