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.
Servizio Azure Kubernetes (AKS) gestisce più componenti che seguono diverse strategie di controllo delle versioni e applicazione di patch. Comprendere il modo in cui questi componenti sono versionati consente di pianificare gli aggiornamenti, tenere traccia delle patch di sicurezza e gestire in modo efficace il ciclo di vita del cluster.
Questo articolo illustra l'approccio di controllo delle versioni per diverse categorie di componenti del servizio Azure Kubernetes e come vengono mantenuti nel tempo.
Panoramica dei componenti di AKS (Azure Kubernetes Service)
AKS è costituito da più componenti, ognuno con modelli di controllo delle versioni distinti:
Piano di controllo del cluster Kubernetes ospitato dal servizio Azure Kubernetes: server API Kubernetes gestito, etcd e altri componenti del piano di controllo del cluster.
Immagini del nodo: sistema operativo, runtime del contenitore e componenti del nodo Kubernetes di base. Informazioni dettagliate sui componenti inclusi nelle immagini del nodo sono disponibili nella cartella delle note di Virtual Hard Disk (VHD) nel repository GitHub di AKS.
Carichi di lavoro: Le funzionalità gestite, i componenti aggiuntivi e le estensioni di Azure Kubernetes Service potrebbero includere componenti in uno di questi due contenitori:
-
Componenti aggiuntivi/funzionalità/pod di estensione autonomi: funzionalità/componenti aggiuntivi/estensioni di AKS che eseguono pod autonomi (da Deployments o DaemonSet) nei nodi ospitati dal cliente (a sinistra). Tra gli esempi sono inclusi
istiod,azure-cnsecoredns. - Componenti del servizio Azure Kubernetes all'interno dei pod del carico di lavoro del cliente: alcune funzionalità/componenti aggiuntivi/estensioni del servizio Azure Kubernetes potrebbero avere sidecar in esecuzione all'interno dei pod dell'utente (lato destro). Ad esempio, Istio inserisce proxy sidecar ai pod del carico di lavoro dei clienti.
La tabella seguente riepiloga il modo in cui il controllo delle versioni e gli aggiornamenti vengono gestiti per ogni categoria di componenti del servizio Azure Kubernetes:
-
Componenti aggiuntivi/funzionalità/pod di estensione autonomi: funzionalità/componenti aggiuntivi/estensioni di AKS che eseguono pod autonomi (da Deployments o DaemonSet) nei nodi ospitati dal cliente (a sinistra). Tra gli esempi sono inclusi
| Piano di controllo | Immagini del nodo | Componenti aggiuntivi autonomi/funzionalità/pod di estensione | Componenti AKS all'interno dei pod del carico di lavoro del cliente | |
|---|---|---|---|---|
| Che cosa è versionato? | Server API Kubernetes, etcd, controllori | Sistema operativo, runtime del contenitore e componenti core del nodo Kubernetes | Funzionalità/componenti aggiuntivi/estensioni di AKS che eseguono pod autonomi (ad esempio - istiod) | Sidecar o contenitori di supporto inseriti da componenti aggiuntivi/estensioni |
| Modello di controllo delle versioni | Segue il versionamento semantico di Kubernetes upstream (MAJOR.MINOR.PATCH). AKS offre modelli di supporto community e a lungo termine (LTS). Altre informazioni sono disponibili nella documentazione della policy di supporto delle versioni di AKS | Versioni dell'immagine del nodo insieme alle note VHD pubblicate con le versioni del servizio Azure Kubernetes. | Versione secondaria di componente aggiuntivo/funzionalità/estensione legata 1-1 alla versione secondaria di servizio Azure Kubernetes | La versione sidecar deve essere compatibile con il piano di controllo del componente aggiuntivo |
| Metodo di aggiornamento | Il cliente ha il controllo su quale versione MAJOR.MINOR.PATCH eseguire l'aggiornamento. Manuale (az aks upgrade) o automatico tramite canali di aggiornamento automatico |
Il cliente può eseguire l'aggiornamento alla versione più recente dell'immagine del nodo supportata. Manuale (az aks nodepool upgrade) o automatico tramite canali di aggiornamento automatico |
- Versione secondaria aggiornata quando viene aggiornata la versione secondaria del piano di controllo (ad eccezione di Istio; vedere la documentazione relativa all'aggiornamento di Istio) - Versione della patch aggiornata automaticamente dagli aggiornamenti del servizio Azure Kubernetes. |
Il cliente deve aggiornare manualmente (riavviare i carichi di lavoro con sidecar) alle versioni sidecar compatibili, come documentato dal componente aggiuntivo/funzionalità/estensione. |
Procedure consigliate per la gestione delle versioni
Considerazioni sulla sicurezza: abilitare gli aggiornamenti automatici delle patch per garantire che le correzioni di sicurezza vengano applicate il prima possibile. Scegliere il canale di aggiornamento automatico più adatto ai requisiti e alla tolleranza di rischio del cluster. Manuale o automatico: scegliere la strategia di aggiornamento più adatta ai requisiti operativi. Gli aggiornamenti automatici forniscono patch di sicurezza tempestive e riducono il sovraccarico operativo, mentre gli aggiornamenti manuali offrono un controllo preciso sui tempi e sulla gestione delle modifiche. Usare le finestre di manutenzione pianificata per controllare quando vengono applicati gli aggiornamenti automatici, assicurandosi che gli aggiornamenti vengano eseguiti durante gli intervalli di tempo approvati per il cluster. Monitorare e preparare le modifiche: rimanere informati sui prossimi aggiornamenti e sulla disponibilità delle nuove versioni usando le note sulla versione del servizio Azure Kubernetes e lo strumento di rilevamento delle versioni del servizio Azure Kubernetes. Convalidare gli aggiornamenti in ambienti non di produzione prima di aggiornare gli ambienti di produzione.
-
Per i cluster di produzione:
- Prendere in considerazione gli aggiornamenti automatici delle patch per correzioni tempestive della sicurezza
- Scegliere tra aggiornamenti automatici o manuali delle versioni secondarie in base alle esigenze operative
- Testare prima tutte le modifiche negli ambienti di staging
-
Per i cluster di sviluppo:
- Abilitare gli aggiornamenti automatici sia per il piano di controllo che per i pool di nodi per rimanere aggiornati con le funzionalità più recenti
- Scegliere i canali appropriati in base alle esigenze di sviluppo e test (vedere Aggiornamento automatico dei cluster e aggiornamento automatico dell'immagine del nodo per le opzioni del canale)
- Usare come ambiente di test per le strategie di aggiornamento di produzione
- Modifiche di rilievo: monitorare lo strumento di rilevamento delle versioni del servizio Azure Kubernetes ed esaminare i criteri di deprecazione di Kubernetes per rimanere informati sulle deprecazioni delle API e sulle modifiche che causano interruzioni sia nel servizio Azure Kubernetes che in Kubernetes upstream.
- Convalida preliminare dell'aggiornamento: prima di aggiornare i cluster di produzione, testare le applicazioni, le risorse personalizzate e le integrazioni di terze parti nei cluster di preproduzione per garantire la compatibilità con la nuova versione di Kubernetes e i componenti del servizio Azure Kubernetes aggiornati.
Visualizzare le versioni dei componenti del servizio Azure Kubernetes con Informazioni dettagliate sui componenti del servizio Azure Kubernetes (anteprima)
AKS Component Insights (Preview) offre visibilità dettagliata sulle versioni esatte di tutti i componenti in esecuzione nel cluster servizio Azure Kubernetes. Questa funzionalità consente di comprendere lo stato corrente del cluster, pianificare gli aggiornamenti e identificare potenziali problemi di compatibilità.
Importante
Le funzionalità di anteprima di AKS sono disponibili su base self-service, su scelta. Le anteprime vengono fornite "così come sono" e "come disponibili" e sono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime del servizio Azure Kubernetes sono parzialmente coperte dal supporto clienti con la massima diligenza possibile. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:
- Criteri di supporto di AKS
- Domande frequenti su supporto tecnico di Azure
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Se non si ha un account, è possibile crearne uno gratuito.
- Un cluster AKS configurato nell'ambiente Azure
| Prerequisito | Note |
|---|---|
| interfaccia della riga di comando di Azure |
2.74.0 o una versione successiva installata. Per trovare la versione, eseguire az --version. Se è necessario installare o aggiornare, vedere Installare interfaccia della riga di comando di Azure. |
interfaccia della riga di comando di Azure aks-preview extension |
18.0.0b19 o versioni successive. Per trovare la versione, eseguire az --version. Se è necessario installare o aggiornare, vedere Gestire le estensioni interfaccia della riga di comando di Azure. |
È possibile installare o aggiornare l'estensione aks-preview interfaccia della riga di comando di Azure più recente disponibile usando i comandi seguenti:
# Install the aks-preview extension
az extension add --name aks-preview
# Update to the latest version if already installed
az extension update --name aks-preview
Visualizzare le versioni dei componenti usando interfaccia della riga di comando di Azure
Usare il az aks get-upgrades comando per visualizzare le versioni dei componenti:
az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster
Le informazioni sul componente vengono restituite nella componentsByReleases sezione . L'output previsto sarà simile al seguente (solo la parte di componentByReleases è illustrata qui per brevità):
{
"componentsByReleases": [
{
"components": [
{
"hasBreakingChanges": false,
"name": "cloud-provider-node-manager-linux",
"version": "v1.32.5"
},
{
"hasBreakingChanges": false,
"name": "cloud-provider-node-manager-windows",
"version": "v1.32.5"
},
{
"hasBreakingChanges": false,
"name": "health-probe-proxy",
"version": "v1.29.1"
},
{
"hasBreakingChanges": false,
"name": "kubelet-serving-csr-approver",
"version": "v0.0.7"
},
{
"hasBreakingChanges": false,
"name": "coredns",
"version": "v1.11.3-8"
},
{
"hasBreakingChanges": false,
"name": "metrics-server",
"version": "v0.7.2-7"
}
],
"kubernetesVersion": "1.32"
}
]
}
I componenti effettivi visualizzati possono variare in base alla configurazione del cluster, ai componenti aggiuntivi abilitati e alla versione di Kubernetes. Usare il az aks get-upgrades comando per visualizzare l'elenco completo dei componenti per il cluster specifico.
Ogni voce del componente include:
- name: identificatore del componente
- version: versione esatta del componente installato nel cluster
- hasBreakingChanges: indica se questa versione del componente introduce modifiche di rilievo
Suggerimento
Oltre a usare il interfaccia della riga di comando di Azure per eseguire query sulle informazioni sulla versione del componente, è anche possibile usare il GET upgradeProfiles API con le API del servizio Azure Kubernetes di anteprima (2025-05-04-preview o versioni successive) per recuperare i dati dettagliati della versione del componente a livello di codice.
Passaggi successivi
- Pianificare gli aggiornamenti: configurare gli aggiornamenti automatici del cluster o pianificare gli aggiornamenti manuali
- Rimani informato: Monitora le versioni AKS per aggiornamenti e modifiche di rilievo
- Informazioni sul supporto: Esaminare i criteri di supporto delle versioni di Kubernetes