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 offre una panoramica degli aggiornamenti delle immagini dei nodi per il provisioning automatico dei nodi nel servizio Azure Kubernetes, tra cui il funzionamento, le finestre di manutenzione consigliate ed esempi per iniziare.
Come funzionano gli aggiornamenti delle immagini del nodo per i nodi con provisioning automatico?
Per impostazione predefinita, le macchine virtuali del pool di nodi nap vengono aggiornate automaticamente quando è disponibile una nuova versione dell'immagine. È possibile configurare una finestra di manutenzione della pianificazione dell'aggiornamento del sistema operativo gestito da AKS per controllare quando nuove immagini sono selezionate e applicate ai nodi NAP, oppure utilizzare i Budget di Interruzione del Nodo Karpenter e i Budget di Interruzione del Pod per controllare come e quando si verificano interruzioni durante gli aggiornamenti.
Annotazioni
NAP obbliga a selezionare la versione più recente dell'immagine se la versione dell'immagine del nodo esistente ha più di 90 giorni. In questo modo viene ignorata qualsiasi finestra di manutenzione esistente.
Finestre di manutenzione per l'aggiornamento del sistema operativo del nodo per il provisioning automatico dei nodi (NAP)
È possibile usare la funzionalità di manutenzione pianificata del servizio Azure Kubernetes con un canale di aggiornamento automatico del sistema operativo del nodo per configurare una aksManagedNodeOSUpgradeSchedule finestra di manutenzione che controlla quando eseguire l'applicazione di patch di sicurezza del sistema operativo del nodo pianificata dal canale di aggiornamento automatico del sistema operativo del nodo designato.
Considerazioni e comportamento della finestra di manutenzione dell'aggiornamento del sistema operativo del nodo
Quando si configura una finestra di manutenzione per l'aggiornamento del sistema operativo del nodo per il provisioning automatico dei nodi (NAP), tenere presenti le informazioni seguenti:
- La configurazione di manutenzione di
aksManagedNodeOSUpgradeScheduledetermina la finestra temporale durante la quale NAP preleva una nuova immagine. Questa configurazione non determina necessariamente quando i nodi esistenti vengono interrotti. - Il meccanismo di aggiornamento e i criteri decisionali sono specifici di NAP/Karpenter e vengono valutati dalla logica di deriva di Nap. Il NAP rispetta i Budget per l'interruzione di nodo Karpenter e i Budget per l'interruzione dei pod Per altre informazioni sulla deriva, vedere la documentazione sulla deriva di Karpenter.
- Queste decisioni di aggiornamento NAP sono separate dal cluster
NodeImagee dai canaliSecurityPatch. Tuttavia, anche la configurazione di manutenzioneaksManagedNodeOSUpgradeScheduleapplica questi. - È consigliabile usare una finestra di manutenzione di quattro ore o più per un'operazione affidabile.
- Se non esiste alcuna configurazione di manutenzione, il servizio Azure Kubernetes Service (AKS) potrebbe usare una pianificazione di fallback per acquisire nuove immagini, il che può causare l'acquisizione delle immagini in momenti inaspettati. È possibile evitare tempi imprevisti di nuove immagini e aggiornamenti definendo un oggetto esplicito
aksManagedNodeOSUpgradeSchedule. - Consentire almeno 30 minuti tra la creazione o l'aggiornamento di una configurazione di manutenzione e l'ora di inizio pianificata per assicurarsi che il servizio Azure Kubernetes abbia il tempo necessario per riconciliare la nuova configurazione.
Modello di pianificazione consigliato per i nodi gestiti da NAP
È consigliabile usare il modello di pianificazione seguente per i nodi gestiti da Nap:
- Frequenza settimanale: consigliata per la distribuzione regolare dell'immagine del nodo (ad esempio: ogni domenica).
Creare un esempio di pianificazione della manutenzione del sistema operativo del nodo
Le sezioni seguenti illustrano come creare una finestra di manutenzione settimanale per i nodi gestiti da Nap usando l'interfaccia della riga di comando di Azure e un file di configurazione JSON e come aggiornare, visualizzare, elencare ed eliminare la configurazione di manutenzione.
Creare una configurazione di manutenzione
Creare un file JSON denominato
nodeosMaintenance.jsoncon una finestra di manutenzione settimanale (ad esempio : domenica alle 01:00 UTC per 4 ore).{ "properties": { "maintenanceWindow": { "durationHours": 4, "schedule": { "weekly": { "intervalWeeks": 1, "dayOfWeek": "Sunday" } }, "startDate": "2025-01-01", "startTime": "01:00", "utcOffset": "+00:00" } } }Aggiungere la configurazione di manutenzione al cluster usando il
az aks maintenanceconfiguration addcomando .az aks maintenanceconfiguration add \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name aksManagedNodeOSUpgradeSchedule \ --config-file ./nodeosMaintenance.json
Aggiornare, visualizzare, elencare o eliminare una configurazione di manutenzione
Puoi usare i seguenti comandi per aggiornare, visualizzare, elencare o eliminare la configurazione di manutenzione per i nodi gestiti da NAP:
Aggiornare una configurazione di manutenzione modificando il file JSON e quindi eseguendo il
az aks maintenanceconfiguration updatecomando .az aks maintenanceconfiguration update \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name aksManagedNodeOSUpgradeSchedule \ --config-file ./nodeosMaintenance.jsonVisualizzare i dettagli di una configurazione di manutenzione usando il
az aks maintenanceconfiguration showcomando .az aks maintenanceconfiguration show \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name aksManagedNodeOSUpgradeScheduleElencare tutte le configurazioni di manutenzione per il cluster usando il
az aks maintenanceconfiguration listcomando .az aks maintenanceconfiguration list \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAMEEliminare una configurazione di manutenzione usando il
az aks maintenanceconfiguration deletecomando .az aks maintenanceconfiguration delete \ --resource-group $RESOURCE_GROUP \ --cluster-name $CLUSTER_NAME \ --name aksManagedNodeOSUpgradeSchedule
Per informazioni dettagliate, esempi e scenari avanzati, vedere Usare la manutenzione pianificata per pianificare le finestre di manutenzione per il cluster del servizio Azure Kubernetes.
Budget per l'interruzione di nodo Karpenter e Budget per l'interruzione dei pod per NAP
Per ulteriori informazioni sulla configurazione di Budget per l'interruzione di nodo Karpenter e Budget per l'interruzione dei pod per NAP consultare le seguenti risorse della documentazione ufficiale di Karpenter:
- Budget di interruzione del pool di nodi
- Controlli a livello di pod per l'interruzione
Passaggi successivi
Per altre informazioni sul provisioning automatico dei nodi in AKS (Azure Kubernetes Service), vedere gli articoli seguenti:
- Usare il provisioning automatico dei nodi in una rete virtuale personalizzata
- Configurare la rete per il provisioning automatico dei nodi su AKS
- Configurare i pool di nodi per il provisioning automatico dei nodi su AKS
- Configurare i criteri di interruzione per il provisioning automatico dei nodi su AKS
Azure Kubernetes Service