要同时查看 k8s-node1、k8s-node2、k8s-node3 三个节点的状态,只需在健康节点上执行命令时,把三个节点的 client 地址都加入 --endpoints 参数即可。

1. 查看三个节点的成员列表及状态

bash

etcdctl --endpoints=https://172.16.0.182:2379,https://172.16.0.183:2379,https://172.16.0.185:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
member list -w table
  • 输出会显示每个节点的 ID、名称、peer 地址和运行状态(started/unstarted

2. 检查三个节点的端点健康状态

bash

etcdctl --endpoints=https://172.16.0.182:2379,https://172.16.0.183:2379,https://172.16.0.185:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
endpoint health
  • 正常节点会返回 is healthy,异常节点会提示连接失败

3. 查看三个节点的详细状态(含 Leader 信息)

bash

etcdctl --endpoints=https://172.16.0.182:2379,https://172.16.0.183:2379,https://172.16.0.185:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/server.crt \
--key=/etc/kubernetes/pki/etcd/server.key \
endpoint status -w table
  • 能看到每个节点的角色(Leader/Follower)、版本、数据目录大小等信息