避免 k8s 主节点/etc 节点成为领导者

Avoid a k8s master node / etc node to be a leader

为了 HA 和 Quorum,我将在三个不同的数据中心安装三个 master / etc 节点。

但是我想配置一个节点永不成为领导者。仅充当 etcd 仲裁的追随者。

这可能吗?

我相信,今天它不是受支持的选项,也不推荐。

你想要的是有 3 个节点控制平面(包括 etcd),其中一个节点应该参与领导者选举但不成为领导者并且不应该存储数据。您正在寻找 mongodb HA 集群中存在的某种 ARBITER 功能。

ETCD 不支持 ARBITER 功能。您可能需要提出 PR 才能解决该问题。

controller manager 和 scheduler 始终连接本地 apiserver。您可能希望将这些调用路由到活动主服务器上的 apiserver。您可能需要为 kubernetes 社区打开另一个 PR 才能解决这个问题。