Upgrade imagí uzlů Služby Azure Kubernetes Service (AKS)

Azure Kubernetes Service (AKS) pravidelně poskytuje nové bitové kopie uzlů, proto bitové kopie uzlů pravidelně aktualizujte, abyste mohli využívat nejnovější funkce AKS. Image uzlů Linuxu se aktualizují každý týden a Windows image uzlů se aktualizují každý měsíc. Poznámky k verzi AKS obsahují oznámení o upgradu imagí. Zavedení těchto aktualizací ve všech oblastech může trvat až dva týdny. Informace o stavu zavádění najdete v přehledu vydání. Upgrady imagí uzlů můžete provádět automaticky a plánovat je pomocí plánované údržby. Další informace najdete v tématu Automatické upgrade imagí operačního systému uzlu.

AKS doporučuje kanály automatického upgradu operačního systému uzlu, které automaticky upgradují image uzlů nebo používají opravy zabezpečení během údržby beze změny verze Kubernetes. Pokud chcete image uzlů upgradovat ručně, postupujte podle pokynů v tomto článku. V tomto článku se dozvíte, jak upgradovat image uzlů clusteru AKS a jak aktualizovat image fondu uzlů bez upgradu verze Kubernetes. Informace o upgradu verze Kubernetes pro váš cluster najdete v části Upgrade clusteru AKS.

Důležité

Od 30. listopadu 2025 už Azure Kubernetes Service (AKS) nepodporuje ani neposkytuje aktualizace zabezpečení pro Azure Linux 2.0. Bitová kopie uzlu Azure Linux 2.0 je zmrazená na vydání 202512.06.0. Od 31. října 2026 se image uzlů odeberou a nebudete moct škálovat fondy uzlů. Přejděte na podporovanou verzi Azure Linuxu aktualizací poolů uzlů na podporovanou verzi Kubernetes nebo migrací na osSku AzureLinux3. Další informace najdete v položce GitHub týkající se vyřazení a oznámení o ukončení podpory aktualizací Azure. Pokud chcete mít přehled o oznámeních a aktualizacích, postupujte podle poznámek k verzi AKS.

Poznámka:

Clustery, které používají architekturu NAP (Node Auto-Provisioning), automaticky aktualizují image uzlů, když je k dispozici nová image. Můžete nakonfigurovat okno údržby, abyste řídili, kdy NAP převezme nový obraz, ale toto okno nemusí nutně určovat, kdy budou narušeny stávající uzly. Logika driftu NAP, rozpočty narušení uzlů Karpenter a rozpočty narušení podů určují, jak a kdy k narušení dochází. Další informace najdete v tématu Aktualizace imagí uzlů pro NAP.

Verzi image uzlu (například AKSUbuntu-2404 na AKSUbuntu-2204 nebo AKSUbuntu-2404-2404-202601.27.0 nemůžete downgradovat na AKSUbuntu-2404-202601.13.0).

Prerequisites

  • Existující cluster AKS a fond uzlů.
  • Nainstalované rozhraní Azure CLI a přihlášení k vašemu účtu Azure.
  • Oprávnění k získání přihlašovacích údajů clusteru a ke čtení a aktualizaci clusteru AKS a fondů uzlů.
  • Prostředí Bash. Příkazy v tomto článku používají syntaxi proměnné prostředí Bash.

Nastavte proměnné prostředí pro názvy vaší skupiny prostředků, clusteru a fondu uzlů, které se použijí v následujících příkazech:

export AKS_RESOURCE_GROUP="<resource-group-name>"
export AKS_CLUSTER="<cluster-name>"
export AKS_NODEPOOL="<node-pool-name>"

Připojení ke clusteru AKS

  1. Připojte se ke clusteru AKS pomocí az aks get-credentials příkazu.

    az aks get-credentials \
        --resource-group $AKS_RESOURCE_GROUP \
        --name $AKS_CLUSTER
    

Kontrola dostupných upgradů imagí uzlů

  1. Pomocí příkazu az aks nodepool get-upgrades zkontrolujte dostupné upgrady image uzlů.

    az aks nodepool get-upgrades \
        --nodepool-name $AKS_NODEPOOL \
        --cluster-name $AKS_CLUSTER \
        --resource-group $AKS_RESOURCE_GROUP
    
  2. Ve výstupu vyhledejte hodnotu a poznamenejte si ji latestNodeImageVersion . Tato hodnota představuje nejnovější verzi obrazu uzlu dostupnou pro vaši skupinu uzlů.

  3. Pomocí příkazu zkontrolujte aktuální verzi image uzlu a porovnejte ji s nejnovější verzí az aks nodepool show .

    az aks nodepool show \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --query nodeImageVersion
    
  4. Pokud se nodeImageVersion hodnota liší od latestNodeImageVersionhodnoty , můžete upgradovat image uzlu.

Upgradujte všechny obrazy uzlů ve všech sadách uzlů

  1. Pomocí příkazu az aks upgrade s příznakem --node-image-only upgradujte všechny obrazy uzlů ve všech fondech uzlů ve vašem clusteru.

    az aks upgrade \
        --resource-group $AKS_RESOURCE_GROUP \
        --name $AKS_CLUSTER \
        --node-image-only \
        --yes
    
  2. Stav imagí uzlů můžete zkontrolovat pomocí kubectl get nodes příkazu.

    Poznámka:

    Tento příkaz se může mírně lišit v závislosti na používaném prostředí. Další informace o prostředích Windows a PowerShellu najdete v dokumentaci k Kubernetes JSONPath. Tento příkaz uvádí název každého uzlu společně s hodnotou jeho kubernetes.azure.com/node-image-version popisku, která identifikuje aktuální verzi image uzlu.

    kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
    
  3. Po dokončení upgradu pomocí az aks show příkazu získejte aktualizované podrobnosti fondu uzlů. Aktuální obrázek uzlu je zobrazen ve vlastnosti nodeImageVersion.

    az aks show \
        --resource-group $AKS_RESOURCE_GROUP \
        --name $AKS_CLUSTER  \
        --query "agentPoolProfiles[].{Name:name, NodeImageVersion:nodeImageVersion}"
    

Upgrade konkrétního fondu uzlů

  1. Aktualizujte obraz operačního systému poolu uzlů, aniž by byl upgradován cluster Kubernetes, pomocí příkazu az aks nodepool upgrade s příznakem --node-image-only.

    az aks nodepool upgrade \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --node-image-only
    
  2. Pomocí příkazu kubectl get nodes můžete zkontrolovat stav obrazů uzlů.

    Poznámka:

    Tento příkaz se může mírně lišit v závislosti na používaném prostředí. Další informace o prostředích Windows a PowerShellu najdete v dokumentaci k Kubernetes JSONPath. Tento příkaz uvádí název každého uzlu společně s hodnotou jeho kubernetes.azure.com/node-image-version popisku, která identifikuje aktuální verzi image uzlu.

    kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
    
  3. Po dokončení upgradu pomocí az aks nodepool show příkazu získejte aktualizované podrobnosti fondu uzlů. Aktuální obrázek uzlu je zobrazen ve vlastnosti nodeImageVersion.

    az aks nodepool show \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --query nodeImageVersion
    

Vylepšete obrazy uzlů pomocí navýšení počtu uzlů

Tento postup upgraduje image uzlu pro určitý fond uzlů, ne všechny fondy uzlů v clusteru. AKS ve výchozím nastavení ke konfiguraci upgradů používá jeden další uzel. Chcete-li urychlit proces aktualizace bitových kopií uzlů, aktualizujte bitové kopie uzlů pomocí přizpůsobitelné hodnoty navýšení uzlů.

  1. Pomocí příkazu az aks nodepool update s příznakem --max-surge nakonfigurujte počet navýšených uzlů pro fond uzlů. Toto nastavení se zachová pro další upgrady.

    Poznámka:

    Další informace o kompromisech různých nastavení najdete v části --max-surge.

    az aks nodepool update \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --max-surge 33%
    
  2. Upgradujte image uzlu pomocí az aks nodepool upgrade příkazu s příznakem --node-image-only .

    az aks nodepool upgrade \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --node-image-only
    
  3. Pomocí příkazu kubectl get nodes můžete zkontrolovat stav obrazů uzlů. Tento příkaz uvádí název každého uzlu společně s hodnotou jeho kubernetes.azure.com/node-image-version popisku, která identifikuje aktuální verzi image uzlu.

    kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
    
  4. Chcete-li získat aktualizované podrobnosti o fondu uzlů, použijte příkaz az aks nodepool show. Aktuální obrázek uzlu je zobrazen ve vlastnosti nodeImageVersion.

    az aks nodepool show \
        --resource-group $AKS_RESOURCE_GROUP \
        --cluster-name $AKS_CLUSTER \
        --name $AKS_NODEPOOL \
        --query nodeImageVersion