Leggere in inglese

Condividi tramite


Eseguire l'aggiornamento automatico delle immagini del sistema operativo del nodo

Il servizio Azure Kubernetes fornisce più canali di aggiornamento automatico dedicati per gli aggiornamenti tempestivi della sicurezza del sistema operativo a livello di nodo. Questo canale è diverso dagli aggiornamenti della versione Kubernetes a livello di cluster e li sostituisce.

Importante

A partire dal 30 novembre 2025, AKS non supporterà più né fornirà aggiornamenti della sicurezza per Azure Linux 2.0. A partire dal 31 marzo 2026, le immagini dei nodi verranno rimosse e non sarà possibile ridimensionare i pool di nodi. Eseguire la migrazione a una versione di Linux di Azure supportata aggiornando i pool di nodi a una versione di Kubernetes supportata o eseguendo la migrazione a osSku AzureLinux3. Per altre informazioni, vedere [Ritiro] Pool di nodi di Azure Linux 2.0 nel servizio Azure Kubernetes.

Interazioni tra l'aggiornamento automatico del sistema operativo del nodo e l'aggiornamento automatico del cluster

Gli aggiornamenti della sicurezza del sistema operativo a livello di nodo vengono rilasciati con maggiore frequenza rispetto agli aggiornamenti delle versioni secondarie o delle patch di Kubernetes. Il canale di aggiornamento automatico del sistema operativo del nodo garantisce flessibilità e abilita una strategia personalizzata per gli aggiornamenti della sicurezza del sistema operativo a livello di nodo. È quindi possibile scegliere un piano separato per gli aggiornamenti automatici della versione Kubernetes a livello di cluster. È meglio usare sia gli autoupgrade automatici a livello di cluster che il canale di aggiornamento automatico del sistema operativo del nodo insieme. La pianificazione può essere ottimizzata applicando due set separati di finestre - aksManagedAutoUpgradeSchedule di manutenzione per il canale di aggiornamento automatico del cluster e aksManagedNodeOSUpgradeSchedule per il canale di aggiornamento automatico del sistema operativo del nodo.

Canali per gli aggiornamenti delle immagini del sistema operativo del nodo

Il canale selezionato determina la tempistica degli aggiornamenti. Quando si apportano modifiche ai canali di aggiornamento automatico del sistema operativo del nodo, occorre attendere 24 ore prima che le modifiche siano effettive.

Nota

  • L'aggiornamento automatico dell'immagine del sistema operativo del nodo non influisce sulla versione kubernetes del cluster.
  • A partire dall'API versione 2023-06-01, l'impostazione predefinita per qualsiasi nuovo cluster del servizio Azure Kubernetes è NodeImage.

Modifiche al canale del sistema operativo del nodo che causano una reinstallazione

Le transizioni del canale del sistema operativo del nodo seguenti attiveranno il re-imaging dei nodi:

From A
Non gestito Nessuno
Non specificato Non gestito
Patch di sicurezza Non gestito
NodeImage Non gestito
Nessuno Non gestito

Canali di aggiornamento del sistema operativo del nodo disponibili

Sono disponibili i canali di aggiornamento seguenti. È possibile scegliere solo una di queste opzioni:

Channel Descrizione Comportamento specifico del sistema operativo
None Ai nodi non vengono applicati automaticamente gli aggiornamenti della sicurezza. Ciò significa che l'utente è l'unico responsabile degli aggiornamenti della sicurezza. N/D
Unmanaged Gli aggiornamenti del sistema operativo vengono applicati automaticamente tramite l'infrastruttura di applicazione di patch predefinita del sistema operativo. Ai computer appena allocati non vengono inizialmente applicate le patch. Verranno applicate dall'infrastruttura del sistema operativo in un secondo momento. Ubuntu e Azure Linux (pool di nodi CPU) applicano le patch di sicurezza tramite aggiornamento automatico/dnf-automatic circa una volta al giorno intorno alle 06:00 UTC. Windows non applica automaticamente le patch di sicurezza, quindi questa opzione si comporta in modo equivalente a None. È necessario gestire il processo di riavvio usando uno strumento come kured.
SecurityPatch Patch di sicurezza del sistema operativo, testate per il servizio Azure Kubernetes, completamente gestite e applicate con procedure di distribuzione sicure. Il servizio Azure Kubernetes aggiorna regolarmente il disco rigido virtuale (VHD) del nodo con patch del gestore di immagini con l'etichetta "solo sicurezza". Potrebbero verificarsi interruzioni quando le patch di sicurezza vengano applicate ai nodi. Tuttavia, il servizio Azure Kubernetes limita le interruzioni solo ricreando le immagini dei nodi solo quando necessario, ad esempio per determinati pacchetti di sicurezza del kernel. Quando vengono applicate le patch, il disco rigido virtuale viene aggiornato e i computer esistenti vengono aggiornati a tale disco rigido virtuale, rispettando le finestre di manutenzione e le impostazioni di picco. Se il servizio Azure Kubernetes decide che il re-imaging dei nodi non è necessario, applica patch ai nodi in tempo reale senza svuotare i pod e non esegue alcun aggiornamento del disco rigido virtuale. Questa opzione comporta il costo aggiuntivo dell'hosting dei dischi rigidi virtuali nel gruppo di risorse del nodo. Se si usa questo canale, gli aggiornamenti automatici di Linux sono disabilitati per impostazione predefinita. Azure Linux non supporta questo canale nelle macchine virtuali abilitate per la GPU. SecurityPatch funziona sulle versioni patch di Kubernetes deprecate, purché la versione secondaria di Kubernetes sia ancora supportata.
NodeImage Il servizio Azure Kubernetes aggiorna i nodi con un nuovo disco rigido virtuale con patch contenente correzioni di sicurezza e correzioni di bug a frequenza settimanale. L'aggiornamento al nuovo disco rigido virtuale causa interruzioni, in base alle finestre di manutenzione e le impostazioni di picco. Quando si sceglie questa opzione, non viene addebitato alcun costo aggiuntivo per il disco rigido virtuale. Se si usa questo canale, gli aggiornamenti automatici di Linux sono disabilitati per impostazione predefinita. Gli aggiornamenti delle immagini del nodo sono supportati purché la versione secondaria di Kubernetes del cluster sia ancora supportata. Le immagini dei nodi sono testate per il servizio Azure Kubernetes, completamente gestite e applicate con procedure di distribuzione sicure.

Cosa scegliere - Canale SecurityPatch o NodeImage Channel?

Ci sono due considerazioni importanti per scegliere tra i canali SecurityPatch e NodeImage.

Proprietà Canale NodeImage Canale SecurityPatch Canale consigliato
Speed of shipping Le normali tempistiche di compilazione, test, rilascio e implementazione per un nuovo VHD possono richiedere circa due settimane seguendo le procedure di distribuzione sicure. Anche se in caso di CVE, le implementazioni accelerate possono verificarsi caso per caso. Il momento esatto in cui un nuovo VHD raggiunge una regione può essere monitorato tramite release-tracker. Le versioni securityPatch sono relativamente più veloci di NodeImage, anche con procedure di distribuzione sicure. SecurityPatch ha il vantaggio di "Applicazione di patch in tempo reale" negli ambienti Linux, in cui l'applicazione di patch porta a un 'reimaging' selettivo e non ricrea l'immagine ogni volta che viene applicata una patch. Il re-imaging, se si verifica di nuovo, viene controllato dalle finestre di manutenzione. SecurityPatch
Bugfixes Include correzioni di bug oltre alle correzioni di sicurezza. Contiene esclusivamente correzioni di sicurezza. NodeImage

Impostare il canale di autoupgrade del sistema operativo del nodo in un nuovo cluster

  • Imposta il canale di aggiornamento automatico del sistema operativo nodo su un nuovo cluster usando il comando az aks create con il parametro --node-os-upgrade-channel. Nell'esempio seguente il canale autoupgrade del sistema operativo del nodo viene impostato su SecurityPatch.
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export RESOURCE_GROUP="myResourceGroup$RANDOM_SUFFIX"
export AKS_CLUSTER="myAKSCluster$RANDOM_SUFFIX"
az aks create \
    --resource-group $RESOURCE_GROUP \
    --name $AKS_CLUSTER \
    --node-os-upgrade-channel SecurityPatch \
    --generate-ssh-keys

Impostare il canale di aggiornamento automatico del sistema operativo del nodo in un cluster esistente

  • Impostare il canale di aggiornamento automatico del sistema operativo del nodo su un cluster esistente utilizzando il comando az aks update con il parametro --node-os-upgrade-channel. Nell'esempio seguente il canale autoupgrade del sistema operativo del nodo viene impostato su SecurityPatch.
az aks update --resource-group $RESOURCE_GROUP --name $AKS_CLUSTER --node-os-upgrade-channel SecurityPatch

Risultati:

{
  "autoUpgradeProfile": {
      "nodeOsUpgradeChannel": "SecurityPatch"
  }
}

Aggiornare la proprietà e la pianificazione

La frequenza predefinita indica che non è stata applicata alcuna finestra di manutenzione pianificata.

Channel Proprietà degli aggiornamenti Frequenza predefinita
Unmanaged Aggiornamenti della sicurezza basati sul sistema operativo. Il servizio Azure Kubernetes non ha alcun controllo su questi aggiornamenti. Di notte intorno alle 6:00 UTC per Ubuntu e Azure Linux. Mensile per Windows.
SecurityPatch Servizio Azure Kubernetes testato, completamente gestito e applicato con procedure di distribuzione sicure. Per altre informazioni, vedere Maggiore sicurezza e resilienza dei carichi di lavoro Canonical in Azure. In genere più veloce rispetto alla frequenza settimanale, il servizio Azure Kubernetes ha determinato la frequenza.
NodeImage Servizio Azure Kubernetes testato, completamente gestito e applicato con procedure di distribuzione sicure. Per informazioni in tempo reale sulle versioni, cercare le immagini dei nodi del servizio Azure Kubernetes nello strumento di rilevamento delle versioni del servizio Azure Kubernetes Settimanale.

Nota

Mentre gli aggiornamenti della sicurezza di Windows vengono rilasciati su base mensile, l'uso del Unmanaged canale non applicherà automaticamente questi aggiornamenti ai nodi di Windows. Se si sceglie il canale Unmanaged, è necessario gestire il processo di riavvio per i nodi Windows.

Limitazioni note del canale del nodo

  • Attualmente, quando si imposta il canale di aggiornamento automatico del cluster su node-image, imposta automaticamente anche il canale di autoupgrade del sistema operativo del nodo su NodeImage. Non è possibile modificare il valore del canale di aggiornamento automatico del sistema operativo del nodo se il canale di aggiornamento automatico del cluster è node-image. Per impostare il valore del canale di aggiornamento automatico del sistema operativo del nodo, controllare che il valore del canale di aggiornamento automatico del cluster non sia node-image.

  • Il canale SecurityPatch non è supportato nei pool di nodi del sistema operativo Windows.

Nota

Usare l'interfaccia della riga di comando versione 2.61.0 o successiva per il canale SecurityPatch.

Finestre di manutenzione pianificata del sistema operativo del nodo

La manutenzione pianificata per l'aggiornamento automatico del sistema operativo del nodo inizia nella finestra di manutenzione specificata.

Nota

Per garantire il corretto funzionamento, usare una finestra di manutenzione di quattro ore o più.

Per altre informazioni sulla manutenzione pianificata, vedere Usare la manutenzione pianificata per pianificare le finestre di manutenzione per il cluster del servizio Azure Kubernetes.

FAQ sugli aggiornamenti automatici del sistema operativo per nodi

Come è possibile controllare il valore di nodeOsUpgradeChannel corrente in un cluster?

Eseguire il comando az aks show e controllare "autoUpgradeProfile" per determinare il valore su cui è impostato nodeOsUpgradeChannel:

az aks show --resource-group $RESOURCE_GROUP --name $AKS_CLUSTER --query "autoUpgradeProfile"

Risultati:

{
  "nodeOsUpgradeChannel": "SecurityPatch"
}

Come posso monitorare lo stato degli aggiornamenti automatici del sistema operativo del nodo?

Per visualizzare lo stato degli aggiornamenti automatici del sistema operativo del nodo, cercare i log attività nel cluster. È anche possibile cercare eventi correlati all'aggiornamento specifici come indicato in Aggiornare un cluster del servizio Azure Kubernetes. Il servizio Azure Kubernetes genera anche eventi di Griglia di eventi correlati all'aggiornamento. Per altre informazioni, vedere Servizio Azure Kubernetes come origine di Griglia di eventi.

È possibile modificare il valore del canale di aggiornamento automatico del sistema operativo del nodo se il canale di aggiornamento automatico del cluster è impostato su node-image?

No. Attualmente, quando si imposta il canale di aggiornamento automatico del cluster su node-image, imposta automaticamente anche il canale di autoupgrade del sistema operativo del nodo su NodeImage. Non è possibile modificare il valore del canale di aggiornamento automatico del sistema operativo del nodo se il canale di aggiornamento automatico del cluster è node-image. Per poter modificare i valori del canale di aggiornamento automatico del sistema operativo del nodo, assicurarsi che il canale di aggiornamento automatico del cluster non sia node-image.

Nel canale Unmanaged, il servizio Azure Kubernetes non ha alcun controllo su come e quando vengono recapitati gli aggiornamenti della sicurezza. Con SecurityPatch, gli aggiornamenti della sicurezza sono completamente testati e seguono procedure di distribuzione sicure. SecurityPatch rispetta anche le finestre di manutenzione. Per altre informazioni, vedere Maggiore sicurezza e resilienza dei carichi di lavoro Canonical in Azure.

SecurityPatch comporta sempre una ricreazione dell'immagine dei nodi?

Il servizio Azure Kubernetes esegue il re-imaging solo quando necessario, ad esempio nel caso in cui alcuni pacchetti kernel richiedano un re-imaging per l'applicazione completa. SecurityPatch è progettato per ridurre al minimo le interruzioni possibili. Se il servizio Azure Kubernetes decide che il re-imaging dei nodi non è necessario, applica patch ai nodi in tempo reale senza svuotare i pod e in questi casi non viene eseguito alcun aggiornamento del disco rigido virtuale.

Perché il canale SecurityPatch richiede di raggiungere l'endpoint snapshot.ubuntu.com?

Con il canale SecurityPatch, i nodi del cluster Linux devono scaricare le patch di sicurezza e gli aggiornamenti necessari dal servizio snapshot ubuntu descritto in ubuntu-snapshots-on-azure-ensuring-predictability-and-consistency-in-cloud-deployments.

Come è possibile sapere se un aggiornamento SecurityPatch o NodeImage viene applicato al nodo?

Eseguire il kubectl get nodes --show-labels comando per elencare i nodi nel cluster e le relative etichette.

Tra le etichette restituite, dovrebbe essere visualizzata una riga simile all'output seguente:

kubernetes.azure.com/node-image-version=AKSUbuntu-2204gen2containerd-202410.27.0-2024.12.01

In questo caso, la versione dell'immagine del nodo di base è AKSUbuntu-2204gen2containerd-202410.27.0. Se applicabile, in genere fa seguito la versione della patch di sicurezza. Nell'esempio precedente si tratta di 2024.12.01.

Gli stessi dettagli vengono cercati anche nel portale di Azure nella visualizzazione etichetta del nodo:

Screenshot della pagina dei nodi per un cluster del servizio Azure Kubernetes nel portale di Azure. L'etichetta per la versione dell'immagine del nodo mostra chiaramente l'immagine del nodo di base e la data della patch di sicurezza applicata più di recente.

Passaggi successivi

Per una descrizione dettagliata delle procedure consigliate per l'aggiornamento e altre considerazioni, vedere Linee guida per l'aggiornamento e le patch del servizio Azure Kubernetes.


Risorse aggiuntive

Formazione

Modulo

Applicare aggiornamenti e patch di sicurezza ai cluster con il servizio Azure Kubernetes - Training

Applicare gli aggiornamenti e le patch più recenti ai cluster del servizio Azure Kubernetes.

Certificazione

Microsoft Certificato: Associato Ingegnere della Sicurezza Azure - Certifications

Dimostrare di possedere le competenze necessarie per implementare i controlli di sicurezza, gestire la postura di sicurezza di un'organizzazione e identificare e correggere le vulnerabilità della sicurezza.