Aggiornare le immagini dei nodi del servizio Azure Kubernetes (AKS)
Il servizio Azure Kubernetes (AKS) offre regolarmente nuove immagini dei nodi, quindi è utile aggiornare frequentemente le immagini dei nodi per usare le funzionalità più recenti del servizio Azure Kubernetes. Le immagini dei nodi Linux vengono aggiornate ogni settimana e le immagini dei nodi Windows vengono aggiornate ogni mese. Gli annunci di aggiornamento delle immagini sono inclusi nelle note sulla versione del servizio Azure Kubernetes e può essere necessaria fino a una settimana perché questi aggiornamenti vengano implementati in tutte le aree. È anche possibile eseguire automaticamente gli aggiornamenti delle immagini del nodo e pianificarli usando la manutenzione pianificata. Per altre informazioni, vedere Aggiornare automaticamente le immagini dei nodi.
Questo articolo illustra come aggiornare le immagini dei nodi del cluster del servizio Azure Kubernetes e come aggiornare le immagini del pool di nodi senza aggiornare la versione di Kubernetes. Per informazioni sull'aggiornamento della versione di Kubernetes per il cluster, vedere Aggiornare un cluster del servizio Azure Kubernetes.
Nota
Il cluster del servizio Azure Kubernetes deve usare i set di scalabilità di macchine virtuali per i nodi.
Non è possibile effettuare il downgrade di una versione dell'immagine del nodo, ad esempio da AKSUbuntu-2204 a AKSUbuntu-1804 o da AKSUbuntu-2204-202308.01.0 a AKSUbuntu-2204-202307.27.0.
Verificare la disponibilità di aggiornamenti delle immagini dei nodi
Verificare la disponibilità di aggiornamenti delle immagini dei nodi usando il comando
az aks nodepool get-upgrades
.az aks nodepool get-upgrades \ --nodepool-name <node-pool-name> \ --cluster-name <cluster-name> \ --resource-group <resource-group>
Nell'output trovare e prendere nota del
latestNodeImageVersion
valore. Questo valore è la versione più recente dell'immagine del nodo disponibile per il pool di nodi.Controllare la versione corrente dell'immagine del nodo per confrontare con la versione più recente usando il
az aks nodepool show
comando .az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --query nodeImageVersion
Se il
nodeImageVersion
valore è diverso dalatestNodeImageVersion
, è possibile aggiornare l'immagine del nodo.
Aggiornare tutte le immagini dei nodi in tutti i pool di nodi
Aggiornare tutte le immagini di nodo in tutti i pool di nodi del cluster usando il
az aks upgrade
comando con il--node-image-only
flag .az aks upgrade \ --resource-group <resource-group> \ --name <cluster-name> \ --node-image-only
È possibile controllare lo stato delle immagini dei nodi usando il comando
kubectl get nodes
.Nota
Questo comando potrebbe variare leggermente a seconda della shell usata. Per altre informazioni sugli ambienti Windows e PowerShell, vedere la documentazione JSONPath di Kubernetes.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Al termine dell'aggiornamento, usare il
az aks show
comando per ottenere i dettagli del pool di nodi aggiornati. L'immagine del nodo corrente viene visualizzata nella proprietànodeImageVersion
.az aks show \ --resource-group <resource-group> \ --name <cluster-name>
Aggiornare un pool di nodi specifico
Aggiornare l'immagine del sistema operativo di un pool di nodi senza eseguire un aggiornamento del cluster Kubernetes usando il
az aks nodepool upgrade
comando con il--node-image-only
flag .az aks nodepool upgrade \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --node-image-only
È possibile controllare lo stato delle immagini dei nodi usando il comando
kubectl get nodes
.Nota
Questo comando può variare leggermente a seconda della shell usata. Per altre informazioni sugli ambienti Windows e PowerShell, vedere la documentazione JSONPath di Kubernetes.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Al termine dell'aggiornamento, usare il
az aks nodepool show
comando per ottenere i dettagli del pool di nodi aggiornati. L'immagine del nodo corrente viene visualizzata nella proprietànodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Aggiornare le immagini dei nodi con node:surge
Per velocizzare il processo di aggiornamento delle immagini dei nodi, è possibile aggiornare le immagini dei nodi usando un valore di picco del nodo personalizzabile. Per impostazione predefinita, il servizio Azure Kubernetes usa un nodo aggiuntivo per configurare gli aggiornamenti.
Aggiornare le immagini dei nodi con aumento del nodo usando il comando con il
az aks nodepool update
--max-surge
flag per configurare il numero di nodi usati per gli aggiornamenti.Nota
Per altre informazioni sui compromessi di varie impostazioni di
--max-surge
, vedere Personalizzare l'aggiornamento del picco di nodi.az aks nodepool update \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --max-surge 33% \ --no-wait
È possibile controllare lo stato delle immagini dei nodi usando il comando
kubectl get nodes
.kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Ottenere i dettagli del pool di nodi aggiornati usando
az aks nodepool show
per ottenere i dettagli del pool di nodi aggiornati. L'immagine del nodo corrente viene visualizzata nella proprietànodeImageVersion
.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Passaggi successivi
- Per informazioni sulle immagini dei nodi più recenti, vedere le note sulla versione del servizio Azure Kubernetes.
- Di seguito viene descritto come aggiornare la versione di Kubernetes con Aggiornare un cluster del servizio Azure Kubernetes.
- Applicare automaticamente gli aggiornamenti di cluster e pool di nodi con GitHub Actions.
- Altre informazioni su più pool di nodi con Creare più pool di nodi.
- Informazioni sull'aggiornamento delle procedure consigliate con le linee guida per l'aggiornamento e la patch del servizio Azure Kubernetes.
Azure Kubernetes Service