gpt4 book ai didi

kubernetes - Kubeadm 替换节点

转载 作者:行者123 更新时间:2023-12-02 12:00:36 24 4
gpt4 key购买 nike

我有带有 3 个节点“VM”的 K8s 集群,在通过 kubespray“基于 kubeadm 的工具”安装的所有 3 个节点“未污染的主节点”上安装了 Etcd 进行主/工作
现在我想用另一个替换一个虚拟机。
是否有直接的方法可以这样做,因为唯一的解决方法是通过 kubespray scale.yml ex:node4 和节点 5 添加 2 个节点以始终拥有奇数个 ETCD,然后删除额外的节点 3 和节点 5 保留节点 4
我不喜欢这种方法。
欢迎任何想法
最好的祝福

最佳答案

如果您有 3 个主要(请避免使用主控,💪)控制平面节点,您应该可以一次替换 1 个。唯一的问题是您的集群将无法做出任何决定/安排任何新的工作负载,但现有的工作负载将运行良好。
The recommendation of 5 main nodes是基于这样一个事实,即即使一个节点出现故障,对于 etcd 的状态决策 📝,您将始终拥有多数才能达到法定人数。因此,如果您有 5 个节点并且其中一个出现故障,您仍然可以调度/运行工作负载。
换句话说:

  • 3个主要节点
  • 可以容忍一个节点的故障。
  • 将无法做出决定

  • 5个主要节点
  • 可以容忍一个节点的故障。
  • 仍然可以做出决定,因为仍有 4 个节点可用。
  • 如果发生 2 次失败,则可以容忍,但没有法定人数。


  • 总而言之,Raft 🚣 是 etcd 的共识协议(protocol),最多可以容忍 (N-1)/2 次失败,并且需要 (N/2)+1 的多数或法定人数。推荐的过程是一次更新一个节点:关闭一个节点,然后启动另一个节点,并等待它加入集群(所有控制平面组件)

    关于kubernetes - Kubeadm 替换节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62922354/

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