自動將 GKE Windows Server 節點加入受管理的 Microsoft AD 網域

本頁面說明如何使用自動加入網域功能,將 Google Kubernetes Engine (GKE) 叢集中的 Windows Server 節點加入受管理的 Microsoft AD 網域。

自動將 Windows Server 節點加入網域的 Managed Microsoft AD 運作方式

GKE 叢集中建立節點集區時,您可以使用 Managed Microsoft AD 提供的現成指令碼,自動加入 Managed Microsoft AD 網域。GKE 建立節點集區後,Managed Microsoft AD 會啟動網域加入要求,並嘗試將節點與您的網域建立連線。如果網域加入要求成功,Managed Microsoft AD 就會將節點加入您的網域。如果網域加入要求失敗,則已建立的節點會繼續執行。您必須檢查記錄檔,找出並修正問題,才能再次建立節點集區。詳情請參閱「查看偵錯記錄」。

在某些特定情況下,您必須手動清理受管理 Microsoft AD 中未加入節點的資訊。詳情請參閱「清理未加入的 VM」。

您無法使用網域加入指令碼更新現有節點集區,以便自動將現有節點加入網域。

自動加入網域功能不會設定 GKE 節點,以便透過 gMSA 進行驗證。不過,您可以手動在受管理的 Microsoft AD 中建立 gMSA,並設定 GKE 節點以使用 gMSA。如要瞭解如何為 GKE 節點設定 gMSA,請參閱「為 Windows Pods 和容器設定 gMSA」。

事前準備

  1. 建立 Managed Microsoft AD 網域

  2. 使用 Windows Server 節點集區建立 GKE 叢集

  3. 請確認 Windows Server 節點執行的是 受 Managed Microsoft AD 支援的 Windows 版本

  4. 在 Managed Microsoft AD 網域和節點網路之間設定網域對等連線,或是讓 Managed Microsoft AD 網域和節點位於同一個網路中。

  5. 在具有 Managed Microsoft AD 網域的專案中,建立具有 Google Cloud Managed Identities Domain Join (roles/managedidentities.domainJoin) IAM 角色的服務帳戶。詳情請參閱「Cloud 管理式身分識別資訊角色」。

  6. 在 Windows Server 節點上設定完整的 cloud-platform 存取範圍。詳情請參閱「授權」。

中繼資料

您需要下列中繼資料鍵,才能將 Windows Server 節點加入網域。

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

如要進一步瞭解這些中繼資料鍵,請參閱「中繼資料」。

如果受管理的 Microsoft AD 中已存在 Windows Server 節點的電腦帳戶,網域加入要求就會失敗。如要讓受管理的 Microsoft AD 在網域加入程序中重複使用現有的電腦帳戶,您可以在建立節點叢集時使用 managed-ad-force 中繼資料鍵。

加入 Windows Server 節點

您可以在將 Windows Server 節點集區新增至 GKE 叢集時,設定這些中繼資料鍵。本節說明如何在建立節點集區時,在 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

後續步驟