自动将 GKE Windows Server 节点加入 Managed Microsoft AD 网域

本页面介绍了如何在 使用命令行将 Google Kubernetes Engine (GKE) 集群迁移到托管式 Microsoft AD 网域 自动加入网域功能 功能。

代管式 Microsoft AD 如何自动将 Windows Server 节点加入网域

在 Google Cloud 控制台中创建节点池时 您的 GKE 集群,您可以使用 可从 Managed Microsoft AD 访问的现成脚本, 自动加入您的 Managed Microsoft AD 网域。GKE 创建节点池后,托管式 Microsoft AD 会发起域名加入请求,并尝试将节点加入您的网域。如果网域加入请求成功,托管式 Microsoft AD 会将节点加入您的网域。如果加入网域的请求失败,则创建的 节点继续运行您需要查看日志以确定并解决问题 然后再创建节点池如需了解详情,请参阅查看调试日志

您需要从以下位置手动清理有关未联接节点的信息: 在某些特定场景中代管式 Microsoft AD。如需了解详情,请参阅清理未加入集群的虚拟机

您无法更新包含网域加入脚本的现有节点池 自动将现有节点加入您的网域。

自动加入网域功能不会配置 GKE, 运行节点 gMSA 进行身份验证。不过,您可以在托管式 Microsoft AD 中手动创建 gMSA,并将 GKE 节点配置为使用 gMSA。如需了解如何为 GKE 节点配置 gMSA,请参阅为 Windows Pod 和容器配置 gMSA

准备工作

  1. 创建托管式 Microsoft AD 网域

  2. 使用 Windows Server 节点池创建 GKE 集群

  3. 确保 Windows Server 节点运行的是受托管 Microsoft AD 支持的 Windows 版本

  4. 在托管式 Microsoft AD 网域和节点网络之间配置网域对等互连,或者让托管式 Microsoft AD 网域和节点位于同一网络中。

  5. 使用 Google Cloud Managed Identities 网域创建服务账号 加入以下账号的 (roles/managedidentities.domainJoin) IAM 角色: 具有代管式 Microsoft AD 网域的项目。如需更多信息 请参阅云管理的身份 角色

  6. 在 Windows Server 节点上设置完整的 cloud-platform 访问权限范围。对于 请参阅 授权

元数据

您需要以下元数据键才能将 Windows Server 节点加入网域。

  • windows-startup-script-url
  • managed-ad-domain
  • 可选:enable-guest-attributes
  • 可选:managed-ad-ou-name
  • 可选:managed-ad-force

如需详细了解这些元数据键,请参阅元数据

当 Windows Server 节点的计算机账号时,网域加入请求失败 Managed Microsoft AD 中已存在。对于代管式 Microsoft AD, 在加入网域的过程中重复使用现有的计算机账号,您可以使用 managed-ad-force 元数据键(在创建节点时提供) 池

加入 Windows Server 节点

您可以在向 GKE 集群添加 Windows Server 节点池时配置这些元数据键。本部分介绍了如何在创建节点池时在 gcloud CLI 命令中使用这些元数据键。

不过,您也可以在使用其他可用选项创建节点池时使用这些元数据键。如需了解详情,请参阅添加和管理节点池

如需创建节点池并加入 Windows Server 节点,请运行以下 gcloud CLI 命令:

gcloud container node-pools create NODE_POOL_NAME \
    --cluster=CLUSTER_NAME \
    "--metadata=windows-startup-script-url=URL,managed-ad-domain=DOMAIN_RESOURCE_PATH,managed-ad-force=TRUE" \
    --service-account=SERVICE_ACCOUNT \
    --image-type=WINDOWS_IMAGE_NAME \
    --scopes=https://www.googleapis.com/auth/cloud-platform \
    --location=ZONE_OR_REGION \
    --no-enable-autoupgrade

您可以将 --metadata 标志中的占位符替换为相关值 如 元数据 部分。

如需详细了解此 gcloud CLI 命令,请参阅 gcloud container node-pools create

后续步骤