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

讨论 未结 2 39
seers
seers 会员 2022年10月28日 16:36 发表
<p><img alt="Stacked etcd topology" class="embedded_image" loading="lazy" referrerpolicy="no-referrer" rel="noreferrer" src="https://d33wubrfki0l68.cloudfront.net/d1411cded83856552f37911eb4522d9887ca4e83/b94b2/images/kubeadm/kubeadm-ha-topology-stacked-etcd.svg"> 有两个问题<br> 1.在堆叠的 etcd 拓扑结构中,节点中的 etcd 只和本节点的 kube-apiserver 通信,这样如何保证三个节点数据一致性<br> 2.三个 control plane 节点是依靠领导选举( leader election )选出一位做主,其他备,还是三个节点一起服务<br> 3.如果是同时只有一个 control plane 节点工作,是如何把负载均衡到另外两个备节点的流量请求发送到主节点呢</p> <p>希望能有确切的文档能阅读,刚接触 k8s ,感谢~</p>
收藏(0)  分享
相关标签: 灌水交流
注意:本文归作者所有,未经作者允许,不得转载
2个回复
  • swulling
    2022年10月28日 16:36
    三个 etcd 节点是 join 成一个集群的,互相之间通过 raft 协议通信,从而做到分布式一致。 controlplane 中 apiserver 是三个都提供服务因为本质就是 crud 。剩下两个组件都有选主机制,分别同时只有一个实例为主。这是因为不管是调度还是控制,都只能单实例运行。 controlplane 三个组件的关系这个图其实不太准确,apiserver 访问 etcd 。其他所有组件只和 apiserver 通信。 且只有 apiserver 承接流量。
    0 0
  • swulling
    2022年10月28日 16:36
    看文档是看不出什么所以然的,建议实际部署一下。
    0 0