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.
Si applica a: AKS locale su Azure
Nell'ambito della gestione del ciclo di vita dell'applicazione e del cluster, potrebbe essere necessario eseguire l'aggiornamento alla versione più recente disponibile di Kubernetes. Un aggiornamento prevede uno spostamento a una versione più recente di Kubernetes, l'applicazione di aggiornamenti della versione del sistema operativo (applicazione di patch) o entrambi. AKS Arc supporta l'aggiornamento e la correzione dei nodi in un cluster di lavoro con gli aggiornamenti più recenti di sistema operativo e runtime.
Tutti gli aggiornamenti vengono eseguiti in modo continuo e in sequenza per garantire una disponibilità ininterrotta dei carichi di lavoro. Quando viene inserito un nuovo nodo di lavoro Kubernetes con una build più recente nel cluster, le risorse vengono spostate dal nodo precedente al nuovo nodo. Al termine con successo di questo processo, il vecchio nodo viene disattivato e rimosso dal cluster.
Operazioni preliminari
Se si usa l'interfaccia della riga di comando di Azure, questo articolo richiede l'interfaccia della riga di comando di Azure versione 2.34.1 o successiva. Eseguire az --version
per trovare la versione. Se è necessario installare o aggiornare l'interfaccia della riga di comando, vedere Installare l'interfaccia della riga di comando di Azure.
Verificare la disponibilità di aggiornamenti
Verificare quali versioni di Kubernetes sono disponibili per il cluster usando il comando seguente:
az aksarc get-upgrades --resource-group myResourceGroup --name myAKSCluster
L'output di esempio seguente mostra la versione corrente come 1.24.11 ed elenca le versioni disponibili in upgrades
:
{
"agentPoolProfiles": [
{
"kubernetesVersion": "1.24.11",
"upgrades": [
{
"kubernetesVersion": "1.25.7"
}
]
}
],
"controlPlaneProfile": {
"kubernetesVersion": "1.24.11",
"name": "aksarc-testupgrade",
"osType": "Linux",
"upgrades": [
{
"kubernetesVersion": "1.25.7"
}
]
},
...
"provisioningState": "Succeeded",
...
}
Aggiornare la versione di Kubernetes
Quando si aggiorna un cluster AKS supportato, non è possibile ignorare le versioni secondarie di Kubernetes. È necessario eseguire tutti gli aggiornamenti in sequenza in base al numero di versione principale. Ad esempio, sono consentiti gli aggiornamenti da 1.24.x a 1.25.x o 1.25.x a 1.26.x. La versione da 1.24.x a 1.26.x non è consentita.
Nota
Se non viene specificata alcuna patch, il cluster esegue automaticamente l'aggiornamento alla patch GA più recente della versione secondaria specificata. Ad esempio, l'impostazione --kubernetes-version
su 1.25 comporta l'aggiornamento del cluster alla versione 1.25.7.
È possibile aggiornare il cluster usando il comando seguente:
az aksarc upgrade \
--resource-group myResourceGroup \
--name myAKSCluster \
--kubernetes-version <KUBERNETES_VERSION>
Verificare che l'aggiornamento sia riuscito usando il show
comando :
az aksarc show --resource-group myResourceGroup --name myAKSCluster
L'output di esempio seguente mostra che il cluster esegue ora la versione 1.25.7:
{
"extendedLocation": {
"name":
"/subscriptions/<subscription>/resourcegroups/<resource group>/providers/microsoft.extendedlocation/customlocations/<custom
location>",
"type": "CustomLocation"
},
"id": "/subscriptions/<subscription>/resourceGroups/<resource group>/providers/Microsoft.Kubernetes/connectedClusters/aksarc-testupgrade/providers/Microsoft.HybridContainerService/provisionedClusterInstances/default",
"name": "default",
"properties": {
"agentPoolProfiles": [
{
}
],
"controlPlane": {
"availabilityZones": null,
"controlPlaneEndpoint": {
"hostIp": null,
"port": null
},
"count": 1,
"linuxProfile": {
"ssh": {
"publicKeys": null
}
},
"name": null,
"nodeImageVersion": null,
"osSku": "CBLMariner",
"osType": "Linux",
"vmSize": "Standard_A4_v2"
},
"kubernetesVersion": "1.25.7",
...
"provisioningState": "Succeeded",
...
},
....
"type": "microsoft.hybridcontainerservice/provisionedclusterinstances"
}
Importante
Quando si esegue un aggiornamento da una versione non supportata che ignora due o più versioni secondarie, l'aggiornamento non può garantire funzionalità appropriate. Se la tua versione è significativamente obsoleta, ti consigliamo di ricreare il cluster.
Durante un'operazione di aggiornamento, gli provisioningState
indicatori e currentState
visualizzano un messaggio di aggiornamento per riflettere il processo in corso. Tuttavia, se si verifica il timeout dell'operazione, provisioningState
viene visualizzato Non riuscito, mentre currentState
continua a visualizzare Aggiornamento mentre l'aggiornamento continua in background. Non è necessaria alcuna azione; l'aggiornamento continua fino al completamento.
Aggiornare la versione del sistema operativo
L'aggiornamento dei nodi di lavoro a una versione più recente dell'immagine del nodo senza modificare la versione di Kubernetes funziona solo se la nuova immagine non richiede una versione diversa di Kubernetes. Attualmente, il servizio AKS Arc non supporta gli aggiornamenti "node-image-only" in tutte le versioni di Kubernetes supportate. Se è necessario aggiornare l'immagine del nodo, è necessario aggiornare il cluster alla versione più recente di Kubernetes per assicurarsi che tutti gli aggiornamenti delle immagini del nodo siano incorporati.
Importante
Quando si tenta di usare il node-image-only
flag, viene visualizzato un messaggio che indica che questa funzionalità non è ancora supportata.