我有一个堆叠的主K8s集群(etcd也是本地/内部的),有三个主节点和9个工作节点。我的集群版本当前是1.12.3,在执行etcd命令时,我尝试列出etcd成员,执行
ETCDCTL_API=3 etcdctl member list,发现master2和master3的客户端Url是错误的。
下面是图片,

根据我的理解,对等端和客户端的ip应该是相同的,但正如我所看到的,在master2和master3的情况下,IP是master3。
当我检查端点状态时,我得到以下的错误,
未能获得端点的状态:2379 (超过上下文截止日期)
当我成功地获得master1的状态时,

有人能帮我解决这个问题吗。
我试过的事情:
1)编辑了清单文件,重新启动了etcd pod,但是当我列出成员时,仍然没有什么改变。
2)我也成功地在etcd集群中删除并添加了master3,这是可行的(IP已被纠正并获得了master3的状态),但是当我对master2进行相同的处理时,错误就像
“验证对等xyz {{ID: xyz,PeerUrls:xyz,clienturl:xyz},{&ID:xyz.}}:成员计数不相等”
发布于 2020-07-02 13:07:34
编辑etcd清单文件和纠正IP为我工作。以前,它无法工作,因为清单文件夹中有一个etcd.yml.bkp文件(可能在升级之前,我在那里备份了etcd清单),并发现引用该yml文件的etcd解决了这个问题。
还发现kube-apiserver.yml文件中提到的IP是不正确的,因为它尝试了以下两种方法:
https://stackoverflow.com/questions/57955541
复制相似问题