【问题标题】:Can two kubernetes clusters share the same external etcd and work like master slave两个 Kubernetes 集群能否共享同一个外部 etcd 并像主从一样工作
【发布时间】:2020-01-16 22:36:57
【问题描述】:

我们需要设置一个地理冗余集群。我正在考虑共享一个外部 etcd 集群来运行两个 kubernetes 集群。一开始可能听起来很荒谬,但要求已经归结为它。我正在寻找一些方向来确定是否有可能,如果没有,挑战是什么。

【问题讨论】:

标签: kubernetes etcd


【解决方案1】:

是的,这是可能的,你可以有一个 etcd 集群和多个连接到它的 k8s 集群。实现它的关键是使用来自 kubernetes apiserver 的-etcd-prefix string flag。这样每个集群将使用不同的根路径来存储其资源,并避免与 etcd 中的第二个集群可能发生冲突。除此之外,您还应该为每个 k8s 集群设置适当的 rbac 规则和证书。您可以在以下文章中找到有关它的更多详细信息:Multi-tenant external etcd for Kubernetes clusters

编辑:哦,等等,刚刚注意到您想让这两个集群充当主从。在这种情况下,您可以通过为从属集群分配 etcd 中的只读角色并在必须成为主集群时将其更改为读写来实现它。理论上它应该可以工作,但我从未尝试过,我认为最好的选择是使用内置的 k8s 机制来实现领导者选举等高可用性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-01
    • 2021-08-30
    • 1970-01-01
    • 2019-10-01
    • 2019-06-04
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多