在K8s集群中,每个集群都有一组节点,其中一些是master节点,另一些是工作节点,那么如何区别哪些是master节点,哪些是工作节点?有三种判断方式:
1 进程方式
根据系统进程确认,运行api-server
、kube-controller-management
和kube-scheduler
的node
是master
节点。运行kubelet和kube-proxy的node是工作节点。
$ ps -ef | grep kubelet
如果进程存在则说明当前节点是工作节点。如果不存在则需要进一步确认:
$ ps -ef | grep kube-scheduler
2 标签方式
检查节点是否具有标签node-role.kubernetes.io/control-plane
(1.20版本及以后)或node-role.kubernetes.io/master(1.20版本之前)
Kubernetes v1.20版本及后续版本:
$ kubectl get nodes -l 'node-role.kubernetes.io/control-plane'
Kubernetes v1.20版本
之前:
$ kubectl get nodes -l 'node-role.kubernetes.io/master'
3 集群信息
执行kubectl cluster-info获取master节点
$ kubectl cluster-info
Kubernetes control plane is running at https://{ip-address-of-the-control-plane}:8443