在 Config Controller 上部署第三方工作负载

本页面介绍了如何在 Config Controller 集群上部署您自己的工作负载。

准备工作

在开始之前,请确保您已执行以下任务:

  1. 设置 Config Controller
  2. 如果您的 Config Controller 集群的 GKE 版本低于 1.27 版,请将集群升级到 1.27 版或更高版本。

在 Standard 集群上启用节点自动预配功能

您必须启用节点自动预配才能在 Config Controller 集群上部署您自己的工作负载。这样,您就可以在您的工作负载与默认安装在 Config Controller 集群上的 Google 管理工作负载之间实现工作负载隔离。

如果您使用 Autopilot 集群,则无需启用节点自动预配功能,因为 GKE 会自动管理节点扩缩和预配。

gcloud

如需启用节点自动预配功能,请运行以下命令:

gcloud container clusters update CLUSTER_NAME \
    --enable-autoprovisioning \
    --min-cpu MINIMUM_CPU \
    --min-memory MIMIMUM_MEMORY \
    --max-cpu MAXIMUM_CPU \
    --max-memory MAXIMUM_MEMORY \
    --autoprovisioning-scopes=https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring,https://www.googleapis.com/auth/devstorage.read_only

请替换以下内容:

  • CLUSTER_NAME:Config Controller 集群的名称。
  • MINIMUM_CPU:集群中的核心数下限。
  • MINIMUM_MEMORY:集群中的内存量下限 (GB)。
  • MAXIMUM_CPU:集群中的核心数上限。
  • MAXIMUM_MEMORY:集群中的内存量上限 (GB)。

控制台

如需启用节点自动预配功能,请执行以下步骤:

  1. 转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。

    前往 Google Kubernetes Engine

  2. 点击集群的名称。

  3. 自动化部分的节点自动预配中,点击 修改

  4. 选中启用节点自动预配功能复选框。

  5. 设置集群的 CPU 和内存使用量下限和上限。

  6. 点击保存更改

如需详细了解如何配置节点自动预配(例如设置默认值),请参阅配置节点自动预配

部署工作负载

部署工作负载时,Config Controller 会自动启用 GKE Sandbox 以提供额外的安全防护,以防止不受信任的代码影响集群节点上的主机内核。如需了解详情,请参阅 GKE Sandbox 简介

您可以通过编写工作负载清单文件,然后运行以下命令来部署工作负载:

kubectl apply -f WORKLOAD_FILE

WORKLOAD_FILE 替换为清单文件,例如 my-app.yaml

确认您的工作负载是否在自动预配节点上运行:

  1. 获取为工作负载创建的节点列表:

    kubectl get nodes
  2. 检查特定节点:

    kubectl get nodes NODE_NAME -o yaml

    NODE_NAME 替换为您要检查的节点的名称。

限制

  • GKE Sandbox:GKE Sandbox 适合许多应用,但并不适合所有应用。如需了解详情,请参阅 GKE Sandbox 限制
  • 控制平面安全性:为工作负载授予权限时,请遵循最小权限原则,仅授予您所需的权限。如果您的工作负载遭到破解,则工作负载可以使用过于宽松的权限来更改或删除 Kubernetes 资源。
  • 控制平面可用性:如果您的工作负载在短时间内导致流量增加,集群控制平面可能会变得不可用,直到流量减少。
  • 控制平面调整大小:GKE 会根据需要自动调整控制平面的大小。如果您的工作负载导致负载大幅增加(例如,安装数千个 CRD 对象),GKE 的自动调整大小功能可能无法跟上负载增加的速度。
  • 配额:在部署工作负载时,您应了解 GKE 的配额和限制,并避免超出这些配额和限制。
  • 对控制平面和节点的网络访问权限:Config Controller 使用已启用主实例授权网络、已启用专用端点且已停用公共访问权限的专用节点。如需了解详情,请参阅 GKE 网络安全

后续步骤