gpt4 book ai didi

amazon-web-services - AWS上的Disaster Recovery Kops Kubernetes主节点

转载 作者:行者123 更新时间:2023-12-02 11:44:26 26 4
gpt4 key购买 nike

我目前有一个通过HAPS部署在AWS上的集群HA(具有三个多个master,每个AZ一个)。 Kops部署了一个K8S集群,其中每个主节点上都有一个用于etcd事件的容器和一个用于etcd服务器的容器。每个 pods 都使用一个已安装的卷。

一切运行良好,例如,当主节点死亡时,自动伸缩组在同一可用区中创建另一个主节点,以恢复其卷并将其自身加入群集。我遇到的问题是关于灾难,可用区的故障。

如果可用区有问题怎么办?我会定期获取卷EBS快照,但是如果我从快照创建新卷(具有要发现的正确标签并附加到新实例),则新实例将装入新卷,但是之后,它将无法加入旧集群。我的计划是创建一个由CloudWatch事件触发的lambda函数,该事件在两个安全可用区之一中创建一个新的主实例,并从旧EBS卷的快照中装入该卷。但是该计划存在错误,因为似乎我无视Raft,Etcd及其行为。 (我之所以这样说是因为我在其他主节点上遇到了错误,并且新节点无法将自身加入到集群中)。

有什么建议吗?

从理论上讲,您如何恢复单个AZ灾难的情况以及所有主节点死亡的情况?我有EBS快照。使用它们是否足够?

最佳答案

我不确定您要恢复故障节点的精确程度如何,但是从技术上讲,您要恢复的第一件事是您的etcd节点,因为这是所有Kubernetes状态存储的地方。

由于集群已启动并正在运行,因此无需从头开始还原,只需删除旧节点,然后将新节点添加到etcd。您可以找到更多有关如何做here的信息。您实际上不需要将任何旧卷还原到该节点,因为它将与其他现有节点同步。

然后,在此之后,您可以启动其他服务,例如kube-apiserverkube-controller-manager等。

话虽如此,如果您保留相同的IP地址和完全相同的物理配置,则无需删除etcd节点并添加新节点就可以恢复。

关于amazon-web-services - AWS上的Disaster Recovery Kops Kubernetes主节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52750054/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com