gMSA on Azure Kubernetes Service
群組受控服務帳戶 (gMSA) 可用於Azure Kubernetes Service (AKS) ,以支援需要 Active Directory 進行驗證的應用程式。 在 AKS 上設定 gMSA 需要您正確設定下列服務和設定:AKS、Azure 金鑰保存庫、Active Directory、認證規格等。若要簡化此程式,您可以使用下列 PowerShell 模組。 此課程模組專為簡化在 AKS 上設定 gMSA 的程式量身打造,其方式是移除設定不同服務的複雜度。
環境需求
若要在 AKS 上部署 gMSA,您需要下列專案:
- 具有 Windows 節點的 AKS 叢集已啟動並執行。 如果您尚未準備好 AKS 叢集,請參閱Azure Kubernetes Service檔。
- 您的叢集必須獲得 AKS 上 gMSA 的授權。 如需詳細資訊,請參閱在 Azure Kubernetes Service (AKS) 叢集上為 Windows Server 節點啟用群組受控服務帳戶 (GMSA) 。
- 已正確設定 gMSA 的 Active Directory 環境。 以下將提供如何設定網域的詳細資料。
- AKS 上的 Windows 節點必須能夠連線到您的Active Directory 網網域控制站。
- 具有委派授權的 Active Directory 網域認證,可設定 gMSA 和標準網域使用者。 如有需要,此工作可以委派給已授權的人員 () 。
在 AKS PowerShell 模組上安裝 gMSA
若要開始使用,請從 PowerShell 資源庫下載 PowerShell 模組:
Install-Module -Name AksGMSA -Repository PSGallery -Force
注意
AKS PowerShell 模組上的 gMSA 會持續更新。 如果您在之前執行本教學課程的步驟,且現在重新查看新的設定,請確定您已將模組更新為最新版本。 如需模組的詳細資訊,請參閱PowerShell 資源庫頁面。
模組需求
AKS PowerShell 模組上的 gMSA 依賴不同的模組和工具。 若要安裝這些需求,請在提升許可權的會話上執行下列命令:
Install-ToolingRequirements
使用您的 Azure 認證登入
您必須使用 AKS PowerShell 模組 gMSA 的認證登入 Azure,才能正確設定 AKS 叢集。 若要透過 PowerShell 登入 Azure,請執行下列命令:
Connect-AzAccount -DeviceCode -Subscription "<SUBSCRIPTION_ID>"
您也需要使用 Azure CLI 登入,因為 PowerShell 模組也會在背景使用該模組:
az login --use-device-code
az account set --subscription "<SUBSCRIPTION_ID>"
在 AKS 模組上設定 gMSA 的必要輸入
在 AKS 上設定 gMSA 需要許多輸入,例如:您的 AKS 叢集名稱、Azure 資源組名、部署必要資產的區域、Active Directory 功能變數名稱等等。 為了簡化下列程式,我們建立了一個輸入命令,以收集所有必要的值,並將它儲存在之後將用於下列命令的變數上。
若要啟動,請執行下列命令:
$params = Get-AksGMSAParameters
執行命令之後,請提供必要的輸入,直到命令完成為止。 從現在起,您可以直接複製並貼上命令,如此頁面所示。
連線至您的 AKS 叢集
在 AKS PowerShell 模組上使用 gMSA 時,您會連線到您想要設定的 AKS 叢集。 AKs PowerShell 模組上的 gMSA 依賴 kubectl 連線。 若要連線您的叢集,請執行下列命令: (請注意,因為您提供了上述輸入,所以您可以直接將下列命令複製並貼到 PowerShell 會話) 。
Import-AzAksCredential -Force `
-ResourceGroupName $params["aks-cluster-rg-name"] `
-Name $params["aks-cluster-name"]