【问题标题】:How to disable node auto-repair如何禁用节点自动修复
【发布时间】:2021-05-16 19:10:20
【问题描述】:

如何使用 terraform 禁用 GKE 集群节点维护自动修复?看来我无法从 GCP 控制台停止节点或更改 GKE 节点的设置。所以我想我必须使用 terraform 来尝试它,即使它重新创建了集群。

如何进行维护?我认为它会将所有 pod 迁移到辅助节点,然后重新启动第一个节点是否正确?但是,如果辅助节点没有足够的资源来处理来自主节点的所有节点怎么办? GCP 会创建新节点吗?例如:主节点有大约 110 个 Pod,辅助节点有 110 个 Pod。节点需要重启时如何维护?

【问题讨论】:

    标签: google-cloud-platform terraform google-kubernetes-engine


    【解决方案1】:

    您可以通过在 GCP shell 中运行以下命令来禁用节点自动修复:

    gcloud container node-pools update <pool-name> --cluster <cluster-name> \
    --zone compute-zone \
    --no-enable-autorepair
    

    您也可以在此link 中了解如何使用 GCP 控制台进行操作。

    如果您仍然遇到问题并希望使用 terraform 禁用节点自动修复,您必须在 参数 中指定 management 以启用 auto-repair。您可以在terraform's 文档中找到更多详细信息。

    您还可以在这里找到node repair process 的工作原理:

    如果 GKE 检测到某个节点需要修复,则该节点将被清空并重新创建。 GKE 会等待一小时以完成排空。如果排空没有完成,则关闭节点并创建一个新节点。

    如果需要修复多个节点,GKE 可能会并行修复节点。 GKE 根据集群的大小和损坏的节点数来平衡修复次数。 GKE 将在更大的集群上并行修复更多节点,但随着不健康节点数量的增加,节点会减少。

    如果您在修复过程中的任何时候禁用节点自动修复,则正在进行的修复不会取消并继续对当前正在修复的任何节点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-29
      • 1970-01-01
      • 2021-05-18
      • 1970-01-01
      • 2017-11-10
      • 1970-01-01
      • 2010-10-16
      相关资源
      最近更新 更多