请教一下 control plane 节点高可用的一些细节问题

2022-10-29 00:12:23 +08:00
 seers

有两个问题
1.在堆叠的 etcd 拓扑结构中,节点中的 etcd 只和本节点的 kube-apiserver 通信,这样如何保证三个节点数据一致性
2.三个 control plane 节点是依靠领导选举( leader election )选出一位做主,其他备,还是三个节点一起服务
3.如果是同时只有一个 control plane 节点工作,是如何把负载均衡到另外两个备节点的流量请求发送到主节点呢

希望能有确切的文档能阅读,刚接触 k8s ,感谢~

1149 次点击
所在节点    Kubernetes
3 条回复
swulling
2022-10-29 00:20:47 +08:00
三个 etcd 节点是 join 成一个集群的,互相之间通过 raft 协议通信,从而做到分布式一致。

controlplane 中 apiserver 是三个都提供服务因为本质就是 crud 。剩下两个组件都有选主机制,分别同时只有一个实例为主。这是因为不管是调度还是控制,都只能单实例运行。

controlplane 三个组件的关系这个图其实不太准确,apiserver 访问 etcd 。其他所有组件只和 apiserver 通信。
且只有 apiserver 承接流量。
swulling
2022-10-29 00:21:54 +08:00
看文档是看不出什么所以然的,建议实际部署一下。
zhujq
2022-11-02 16:51:56 +08:00
问题 3:apiserver 无状态,可以 3 个一起接收请求。控制器只有一个在工作,其他的是 standby

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/890865

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX