Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo illustra come configurare e gestire i criteri di interruzione dei nodi per controllare quando le operazioni che richiedono la ricreazione dell'immagine del nodo e la ridistribuzione dei nodi sono consentite nel cluster Servizio Azure Kubernetes (AKS).
Prerequisiti
- Esaminare la panoramica dei criteri di interruzione dei nodi per informazioni sul funzionamento dei criteri di interruzione dei nodi e sulle operazioni coperte dai criteri di interruzione dei nodi.
- Interfaccia della riga di comando di Azure versione 2.76.0 o successiva installata e configurata. Per trovare la versione della CLI, eseguire il comando
az --version. Se è necessario installare o aggiornare, vedere Installare interfaccia della riga di comando di Azure. - Un cluster AKS esistente oppure un nuovo cluster con il criterio di interruzione dei nodi configurato.
-
Installare l'estensione
aks-previewinterfaccia della riga di comando di Azure e registrare la funzionalità di anteprima dei criteri di interruzione del nodo.
Importante
Le funzionalità in anteprima di AKS sono disponibili in modalità self-service, su base volontaria. Le anteprime vengono fornite "così come sono" e "come disponibili" e sono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime di AKS sono coperte solo parzialmente dall'assistenza clienti nei limiti del possibile. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:
Installare l'estensione aks-preview interfaccia della riga di comando di Azure
Installare l'estensione
aks-previewusando il comandoaz extension add.az extension add --name aks-previewEseguire l'aggiornamento alla versione più recente dell'estensione usando il comando
az extension update.az extension update --name aks-preview
Registrare la funzionalità di anteprima dei criteri di interruzione dei nodi
Registrare la funzionalità di anteprima dei criteri di interruzione dei nodi usando il comando az feature register.
az feature register --namespace "Microsoft. ContainerService" --name "NodeDisruptionProfile"
Servono alcuni minuti prima che lo stato venga visualizzato come Registrato.
Configurare i criteri di interruzione dei nodi in un nuovo cluster
Creare un nuovo cluster AKS con il criterio di interruzione dei nodi configurato usando il comando az aks create con il parametro --node-disruption-policy impostato su una delle configurazioni di criterio seguenti: Allow (impostazione predefinita), AllowDuringMaintenanceWindow o Block.
Consenti operazioni di interruzione in qualsiasi momento (impostazione predefinita)
az aks create \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-count 3 \
--node-disruption-policy Allow \
--generate-ssh-keys
Consenti operazioni di interruzione solo durante le finestre di manutenzione
az aks create \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-count 3 \
--node-disruption-policy AllowDuringMaintenanceWindow \
--generate-ssh-keys
Importante
Quando si usa AllowDuringMaintenanceWindow, assicurarsi di configurare una aksManagedNodeOSUpgradeSchedule finestra di manutenzione. In caso contrario, le operazioni di interruzione sono consentite per un periodo illimitato. Per altre informazioni, vedere Usare la manutenzione pianificata per pianificare e controllare gli aggiornamenti per il cluster servizio Azure Kubernetes.
Bloccare tutte le operazioni di interruzione
az aks create \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-count 3 \
--node-disruption-policy Block \
--generate-ssh-keys
Aggiornare i criteri di interruzione dei nodi in un cluster esistente
Aggiornare il criterio di interruzione dei nodi in un cluster AKS esistente usando il comando az aks update con il parametro --node-disruption-policy impostato su una delle configurazioni di criterio seguenti: Allow (impostazione predefinita), AllowDuringMaintenanceWindow o Block.
Modificare i criteri per consentire le operazioni durante le finestre di manutenzione
az aks update \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-disruption-policy AllowDuringMaintenanceWindow
Modificare i criteri per bloccare tutte le operazioni di interruzione
az aks update \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-disruption-policy Block
Modificare nuovamente i criteri per consentire le operazioni in qualsiasi momento
az aks update \
--resource-group myResourceGroup \
--name myAKSCluster \
--node-disruption-policy Allow
Verificare la configurazione dei criteri di interruzione dei nodi
Verificare la configurazione dei criteri di interruzione del nodo usando il az aks show comando .
az aks show \
--resource-group myResourceGroup \
--name myAKSCluster \
--query "nodeDisruptionProfile.nodeDisruptionPolicy" \
--output tsv
L'output mostra l'impostazione corrente dei criteri, ad esempio Allow, AllowDuringMaintenanceWindowo Block.
Gestire le operazioni bloccate
Quando i criteri di interruzione del nodo bloccano un'operazione di interruzione, è possibile attendere la finestra di manutenzione o modificare temporaneamente il criterio.
Attendere la finestra di manutenzione
Se si usa AllowDuringMaintenanceWindow, pianificare l'operazione durante la finestra di manutenzione successiva. È possibile visualizzare le finestre di manutenzione configurate usando il az aks maintenanceconfiguration list comando .
az aks maintenanceconfiguration list \
--resource-group myResourceGroup \
--cluster-name myAKSCluster
Modificare temporaneamente il criterio
Aggiornare il criterio su
Allowusando il comandoaz aks updatecon--node-disruption-policyimpostato suAllow.az aks update \ --resource-group myResourceGroup \ --name myAKSCluster \ --node-disruption-policy AllowEsegui l'operazione di interruzione del servizio. L'esempio seguente aggiorna i certificati della CA personalizzati usando il
az aks updatecomando :az aks update \ --resource-group myResourceGroup \ --name myAKSCluster \ --custom-ca-trust-certificates <path-to-certificate-file>Ripristinare i criteri originali usando il
az aks updatecomando . L'esempio seguente ripristina--node-disruption-policyinBlock:az aks update \ --resource-group myResourceGroup \ --name myAKSCluster \ --node-disruption-policy Block
Operazioni che richiedono l'aggiornamento manuale del pool di nodi
Alcune operazioni che i criteri di interruzione del nodo non controllano richiedono un aggiornamento manuale del pool di nodi dopo le modifiche alla configurazione. tra cui:
- Modifiche alla configurazione SSH, ad esempio la modifica dei metodi di accesso SSH o l'aggiornamento delle chiavi pubbliche SSH.
- Modifiche alle restrizioni IMDS, ad esempio l'abilitazione o la disabilitazione della restrizione IMDS.
- Modifiche al nome ACR del profilo di bootstrap per i cluster con isolamento di rete.
- Modifiche al tipo di traffico in uscita, ad esempio la modifica del routing del traffico in uscita del cluster.
Per queste operazioni, è necessario eseguire manualmente il az aks nodepool upgrade comando dopo aver apportato la modifica della configurazione. Per esempio:
az aks nodepool upgrade \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name <nodepool-name> \
--node-image-only
Per altre informazioni sulle operazioni coperte dai criteri di interruzione dei nodi, vedere Panoramica dei criteri di interruzione dei nodi.
Risolvere i problemi di Node Disruption Policy
Operazione bloccata in modo imprevisto
Se un'operazione viene bloccata in modo imprevisto, seguire questa procedura per risolvere il problema:
Controllare l'impostazione dei criteri corrente usando il
az aks showcomando .az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query "nodeDisruptionProfile.nodeDisruptionPolicy" \ --output tsvSe si usa
AllowDuringMaintenanceWindow, verificare la configurazione della finestra di manutenzione usando ilaz aks maintenanceconfiguration showcomando .az aks maintenanceconfiguration show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name aksManagedNodeOSUpgradeScheduleControllare se l'ora corrente rientra nella finestra di manutenzione.
Nessuna finestra di manutenzione configurata
Se si impostano i criteri su AllowDuringMaintenanceWindow ma non si configura una finestra di manutenzione, tutte le operazioni di interruzione sono consentite.
Configurare una finestra di manutenzione usando il az aks maintenanceconfiguration add comando .
az aks maintenanceconfiguration add \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name aksManagedNodeOSUpgradeSchedule \
--schedule-type Weekly \
--day-of-week Sunday \
--interval-weeks 1 \
--duration 4 \
--start-hour 2