在尝试将实验性 Kubernetes 集群(在我的笔记本电脑上的几个虚拟机中)配置为“高可用”时,我发现建议使用 keepalived 和 haproxy 的组合来执行此操作(https://github.com/kubernetes/kubeadm/blob /master/docs/ha-considerations.md#options-for-software-load-balancing)。
查看我阅读的配置设置
${STATE} 对于一个主机是 MASTER,对于所有其他主机是 BACKUP,因此虚拟 IP 最初将分配给 MASTER。
主服务器上的 ${PRIORITY} 应该高于备份服务器。因此,分别为 101 和 100 就足够了。
这些设置让我感到惊讶。似乎我必须选择这些系统中的哪一个作为初始主控系统,并且我必须在节点本身中“硬”配置它。
对我来说,这种“高可用性”设置偏离了我在 Kubernetes 中发现的“宠物”/“牛”类比。
其他系统,例如 HBase,具有类似的设置(一个活动领导者和多个备用领导者),并且都配置“相同”(通过 ZooKeeper 完成选举)。
有没有一种方法可以配置 Keepalived(用于 Kubernetes),使所有节点都具有相同的配置并且仍然可以正常工作?