首页 > 解决方案 > Kubernetes 架构中的 etcd 复制

问题描述

我是 kubernetes 和 etcd 的新手,我试图弄清楚 etcd 在 kubernetes 中是如何分布的。这些问题的答案对我很有帮助

问题 1: 如果我们有一个 1 个主节点和 2 个节点的 kubernetes 架构,我们将拥有: - 1 个位于主节点上的 etcd 存储 - 还是分布在主节点和节点之间的 etcd(所有节点都将复制商店)

如果我们有一个包含 2 个主节点和 3 个节点的 kubernetes 架构,我们将拥有: - 在两个主节点上复制 2 个 etcd 存储 - 还是在主节点和节点之间分配一个 etcd(所有将具有存储的复制)

问题 2: 我发现此建议“始终使用奇数个集群成员,因为需要仲裁才能就集群状态的更新达成一致”来源:https ://rancher.com/blog/2019/2019-01-29-what -is-etcd/ 是关于 Kubernetes 集群中的节点数还是关于 etcd 集群中的成员数,你能给我举个例子吗

问题3: 什么意思:external clustered etcdetcd在master节点上作为静态pod运行

标签: kubernetesetcd

解决方案


你不应该在工作节点上有 etcd。etcd 应该堆叠在主节点内或应该在外部。参考官方文档

etcd 成员的数量应该是奇数才能达到法定人数。在博客中就是这个意思。

您可以使用 kubernetes 的静态 Pod机制将 etcd 作为容器部署在主节点上。Kubernetes 将 etcd 作为 pod 进行管理。

或者,您可以在 kubernetes 集群之外的外部主机上将 etcd 作为 systemd 单元运行。


推荐阅读