Azure Kubernetes Service 上的 gMSA
群組受控服務帳戶 (gMSA) 可在 Azure Kubernetes Service (AKS) 上使用,以支援需要 Active Directory 進行驗證的應用程式。 AKS 上的 gMSA 設定需要您正確設定下列服務和設定:AKS、Azure Key Vault、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"]