gMSA su Azure Kubernetes Service
Gli account del servizio gestito del gruppo (gMSA) possono essere usati nel servizio Azure Kubernetes per supportare le applicazioni che richiedono Active Directory a scopo di autenticazione. La configurazione del gMSA su AKS richiede di configurare correttamente i seguenti servizi e impostazioni: AKS (Azure Kubernetes Service), Azure Key Vault, Active Directory, specifiche delle credenziali, ecc. Per semplificare questo processo, è possibile usare il modulo PowerShell seguente. Questo modulo è stato creato su misura per semplificare il processo di configurazione di gMSA su AKS rimuovendo la complessità dell'impostazione di servizi diversi.
Requisiti dell'ambiente
Per distribuire gMSA su AKS, sono necessari i seguenti elementi:
- Un cluster AKS con nodi Windows in esecuzione. Se non si dispone di un cluster AKS pronto, consulta la documentazione di Azure Kubernetes Service .
- Il cluster deve essere autorizzato per l'uso di gMSA su AKS. Per ulteriori informazioni, consultare Abilitare gli account di servizio gestito di gruppo (GMSA) per i nodi di Windows Server sul cluster del servizio Azure Kubernetes (AKS).
- Un ambiente Active Directory correttamente configurato per gMSA (Gruppo Managed Service Account). Di seguito vengono fornite informazioni dettagliate su come configurare il dominio.
- I nodi Windows nel servizio Azure Kubernetes devono essere in grado di connettersi ai controller di dominio di Active Directory.
- Credenziali di dominio di Active Directory con autorizzazione delegata per configurare l'account del servizio gestito di gruppo e per un utente standard di dominio. Questa attività può essere delegata a persone autorizzate (se necessario).
Installare il gMSA nel modulo PowerShell di AKS
Per iniziare, scaricare il Modulo di PowerShell dalla PowerShell Gallery.
Install-Module -Name AksGMSA -Repository PSGallery -Force
Nota
Il modulo PowerShell gMSA su AKS viene aggiornato costantemente. Se in precedenza sono stati eseguiti i passaggi di questa esercitazione ed è ora in corso il controllo delle nuove configurazioni, assicurarsi di aggiornare il modulo alla versione più recente. Altre informazioni sul modulo sono disponibili nella pagina di powerShell Gallery .
Requisiti dei moduli
Il modulo gMSA in PowerShell del servizio Azure Kubernetes si basa su moduli e strumenti diversi. Per installare questi requisiti, eseguire quanto segue in una sessione con privilegi elevati:
Install-ToolingRequirements
Accedere con le credenziali di Azure
Per configurare correttamente il cluster del servizio Azure Kubernetes, sarà necessario accedere ad Azure con le credenziali per il modulo gMSA nel servizio Azure Kubernetes. Per accedere ad Azure tramite PowerShell, eseguire le operazioni seguenti:
Connect-AzAccount -DeviceCode -Subscription "<SUBSCRIPTION_ID>"
È inoltre necessario accedere con l'Azure CLI, poiché anche il modulo di PowerShell la utilizza in background.
az login --use-device-code
az account set --subscription "<SUBSCRIPTION_ID>"
Configurazione degli input richiesti per gMSA sul modulo AKS
Nel corso della configurazione delle gMSA su AKS, saranno necessari molti dati di input, come il nome del cluster AKS, il nome del gruppo di risorse di Azure, la regione per distribuire le risorse necessarie, il nome del dominio di Active Directory e molto altro ancora. Per semplificare il processo seguente, è stato creato un comando di input che raccoglierà tutti i valori necessari e lo archivierà in una variabile che verrà quindi usata nei comandi seguenti.
Per iniziare, eseguire quanto segue:
$params = Get-AksGMSAParameters
Dopo aver eseguito il comando, specificare gli input necessari fino al termine del comando. Da ora in poi, è sufficiente copiare e incollare i comandi come illustrato in questa pagina.
Connettersi al cluster AKS
Durante l'uso del modulo gMSA nel modulo AKS di PowerShell, ti connetterai al cluster AKS che desideri configurare. Il modulo di PowerShell gMSA per AKS si basa sulla connessione di kubectl. Per connettere il cluster, eseguire quanto segue: (Si noti che, poiché sono stati forniti gli input precedenti, è sufficiente copiare e incollare il comando seguente nella sessione di PowerShell).
Import-AzAksCredential -Force `
-ResourceGroupName $params["aks-cluster-rg-name"] `
-Name $params["aks-cluster-name"]