以下“ etcdctl成员列表”的输出是否正确,并且ETCD集群处于良好状态?

问题描述

我是k8s的新手,我正在尝试构建etcd集群。现在,我已完成所有步骤并获得了所需的输出

ubuntu@controller0:/etc/systemd/system$ sudo ETCDCTL_API=3 etcdctl member list --endpoints=https://10.240.0.10:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem
3a57933972cb5131,started,controller2,https://10.240.0.12:2380,https://10.240.0.12:2379,false
f98dc20bce6225a0,controller0,https://10.240.0.10:2380,https://10.240.0.10:2379,false
ffed16798470cab5,controller1,https://10.240.0.11:2380,https://10.240.0.11:2379,false

但是让我有些困惑的是所有3个etcd主机的false。有人可以帮我解释一下是否意味着他们目前都不是大师?以及何时此输出正确

解决方法

etcdctl member list --help
NAME:
    member list - Lists all members in the cluster

USAGE:
    etcdctl member list [flags]

DESCRIPTION:
    When --write-out is set to simple,this command prints out comma-separated member lists for each endpoint.
    The items in the lists are ID,Status,Name,Peer Addrs,Client Addrs,Is Learner.

从上面您可以看到,最后一列是Is Learner,对于所有节点都是错误的。 ETCD 3.4版引入了一个新的节点状态“学习者”,该成员以无投票权的成员的身份加入集群,直到赶上领导者的日志为止。这意味着学习者仍会从领导者那里收到所有更新,而这并不计入仲裁人数,领导者使用仲裁来评估对等活动。在提升之前,学习者仅充当备用节点。对法定人数的这种宽松要求在成员重新配置和运营安全期间提供了更好的可用性。

因此您的ETCD集群处于良好状态。要验证领导者是否存在,请使用以下命令

sudo ETCDCTL_API=3 etcdctl endpoint status --write-out=table --endpoints=https://10.240.0.10:2379 --cacert=/etc/etcd/ca.pem --cert=/etc/etcd/kubernetes.pem --key=/etc/etcd/kubernetes-key.pem

+-------------------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
|        ENDPOINT         |        ID        | VERSION | DB SIZE | IS LEADER | IS LEARNER | RAFT TERM | RAFT INDEX | RAFT APPLIED INDEX | ERRORS |
+-------------------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
| https://172.16.2.3:2379 | f15c8d27ccf66395 |   3.4.3 |  2.2 MB |     false |      false |         6 |      41219 |              41219 |        |
| https://172.16.2.6:2379 | be8c6e0b5f5f6157 |   3.4.3 |  2.2 MB |      true |      false |         6 |      41219 |              41219 |        |
| https://172.16.2.7:2379 | 7e7a0308e6c2067f |   3.4.3 |  2.2 MB |     false |      false |         6 |      41219 |              41219 |        |
+-------------------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+

ETCD