Megosztás a következőn keresztül:


Oktatóanyag – Azure Kubernetes Service-fürt (AKS) frissítése

Az alkalmazás és a fürt életciklusának részeként érdemes lehet frissíteni a Kubernetes legújabb elérhető verziójára. Az Azure Kubernetes Service (AKS) fürt az Azure CLI, az Azure PowerShell vagy az Azure Portal használatával frissíthető.

Ebben az oktatóanyagban a hetedik rész egy AKS-fürtöt frissít. Az alábbiak végrehajtásának módját ismerheti meg:

  • Az aktuális és elérhető Kubernetes-verziók azonosítása.
  • Frissítse a Kubernetes-csomópontokat.
  • Sikeres frissítés ellenőrzése.

Mielőtt elkezdené

A korábbi oktatóanyagokban egy alkalmazást egy tárolórendszerképbe csomagolt be, és feltöltötte a tárolórendszerképet az Azure Container Registrybe (ACR). Létrehozott egy AKS-fürtöt is, és üzembe helyezett egy alkalmazást. Ha még nem végezte el ezeket a lépéseket, és követni szeretné a lépéseket, kezdje az 1. oktatóanyaggal – Alkalmazás előkészítése az AKS-hez.

Az Azure CLI használata esetén ez az oktatóanyag az Azure CLI 2.34.1-es vagy újabb verzióját igényli. A verzió azonosításához futtassa a következőt: az --version. Ha telepíteni vagy frissíteni szeretne: Az Azure CLI telepítése.

Az Azure PowerShell használata esetén ehhez az oktatóanyaghoz az Azure PowerShell 5.9.0-s vagy újabb verziója szükséges. A verzió azonosításához futtassa a következőt: Get-InstalledModule -Name Az. Ha telepíteni vagy frissíteni szeretne, olvassa el az Azure PowerShell telepítését ismertető cikket.

Az elérhető fürtverziók lekérése

  • A frissítés előtt ellenőrizze, hogy a parancs használatával mely Kubernetes-kiadások érhetők el a az aks get-upgrades fürthöz.

    az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster
    

    Az alábbi példakimenet az aktuális verziót 1.28.9-es verzióként jeleníti meg, és felsorolja az elérhető verziókat a következő alattupgrades:

      {
        "agentPoolProfiles": null,
        "controlPlaneProfile": {
          "kubernetesVersion": "1.28.9",
          ...
          "upgrades": [
            {
              "isPreview": null,
              "kubernetesVersion": "1.29.4"
            },
            {
              "isPreview": null,
              "kubernetesVersion": "1.29.2"
            }
          ]
        },
        ...
      }
    

AKS-fürt frissítése

Az AKS-csomópontokat gondosan kordonozza és üríti, hogy minimálisra csökkentse az alkalmazások futtatásának esetleges zavarait. A folyamat során az AKS a következő lépéseket hajtja végre:

  • Hozzáad egy új puffercsomópontot (vagy a maximális túlfeszültségben konfigurált számú csomópontot) a megadott Kubernetes-verziót futtató fürthöz.
  • A régi csomópontok kordonjai és ürítése a futó alkalmazások megszakadásának minimalizálása érdekében. Ha a maximális túlfeszültséget használja, az a megadott puffercsomópontok számával egyidejűleg annyi csomópontot kordonol és ürít .
  • A régi csomópont teljes kiürítése után a rendszer újra megújul, hogy megkapja az új verziót, és a következő csomópont puffercsomópontja legyen a frissíteni kívánt csomóponthoz.
  • Ez a folyamat addig ismétlődik, amíg a fürt összes csomópontja frissül.
  • A folyamat végén a rendszer törli az utolsó puffercsomópontot, fenntartva a meglévő ügynökcsomópontok számát és zónaegyenlegét.

Feljegyzés

Ha nincs megadva javítócsomag, a fürt automatikusan a megadott alverzió legújabb GA-javítócsomagjára végzi el a felbővítést. Ha például a fürt frissítését a következőre 1.28 1.28.9állítja --kubernetes-version be: .

További információt a Támogatott Kubernetes alverziófrissítések az AKS-ben témakörnél talál.

Manuálisan frissítheti a fürtöt, vagy konfigurálhatja az automatikus fürtfrissítéseket. Javasoljuk, hogy konfigurálja az automatikus fürtfrissítéseket, hogy a fürt mindig a Kubernetes legújabb verzióját futtassa.

Fürt manuális frissítése

  • Frissítse a fürtöt a az aks upgrade parancs használatával.

    az aks upgrade \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --kubernetes-version KUBERNETES_VERSION
    
  • A rendszer kérni fogja, hogy erősítse meg a frissítési műveletet, és győződjön meg arról, hogy frissíteni szeretné a vezérlősíkot és az összes csomópontkészletet a Kubernetes kiválasztott verziójára:

     Are you sure you want to perform this operation? (y/N): y
    Since control-plane-only argument is not specified, this will upgrade the control plane AND all nodepools to version 1.29.2. Continue? (y/N): y
    

    Feljegyzés

    Egyszerre csak egy alverzió frissíthető. Frissíthet például 1.14.x-ről 1.15.x-re, de közvetlenül nem frissíthet 1.14.x-ről 1.16.x-re. Az 1.14.x-ről 1.16.x-re való frissítéshez először 1.14.x-ről 1.15.x-re kell frissítenie, majd újabb frissítést kell végrehajtania 1.15.x-ről 1.16.x-re.

    Az alábbi példakimenet az 1.29.2-re való frissítés eredményét mutatja. Figyelje meg, hogy az kubernetesVersion alábbi 1.29.2-et jeleníti meg:

    {
      ...
      "agentPoolProfiles": [
        {
          ...
          "count": 3,
          "currentOrchestratorVersion": "1.29.2",
          "maxPods": 110,
          "name": "nodepool1",
          "nodeImageVersion": "AKSUbuntu-2204gen2containerd-202405.27.0",
          "orchestratorVersion": "1.29.2",
          "osType": "Linux",
          "upgradeSettings": {
            "drainTimeoutInMinutes": null,
            "maxSurge": "10%",
            "nodeSoakDurationInMinutes": null,
            "undrainableNodeBehavior": null
          },
          "vmSize": "Standard_DS2_v2",
          ...
        }
      ],
      ...
      "currentKubernetesVersion": "1.29.2",
      "dnsPrefix": "myAKSClust-myResourceGroup-19da35",
      "enableRbac": false,
      "fqdn": "myaksclust-myresourcegroup-19da35-bd54a4be.hcp.eastus.azmk8s.io",
      "id": "/subscriptions/<Subscription ID>/resourcegroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster",
      "kubernetesVersion": "1.29.2",
      "location": "eastus",
      "name": "myAKSCluster",
      "type": "Microsoft.ContainerService/ManagedClusters"
      ...
    }
    

Automatikus fürtfrissítések konfigurálása

  • Állítson be egy automatikus frissítési csatornát a fürtön a az aks update parancs használatával, amelynek paramétere a --auto-upgrade-channel következő.patch

    az aks update --resource-group myResourceGroup --name myAKSCluster --auto-upgrade-channel patch
    

További információ: Azure Kubernetes Service-fürtök automatikus frissítése.

AKS-csomópont lemezképeinek frissítése

Az AKS rendszeresen biztosít új csomópontrendszerképeket. A Linux-csomópont lemezképei hetente frissülnek, a Windows-csomópont lemezképei pedig havonta frissülnek. Javasoljuk, hogy gyakran frissítse a csomópont lemezképeit a legújabb AKS-funkciók és biztonsági frissítések használatához. További információ: Csomópontrendszerképek frissítése az Azure Kubernetes Service-ben (AKS). Az automatikus csomópontrendszerkép-frissítések konfigurálásához tekintse meg az Azure Kubernetes Service (AKS) fürtcsomópont operációs rendszer lemezképeinek automatikus frissítését.

A frissítési események megtekintése

Feljegyzés

A fürt frissítésekor a következő Kubernetes-események fordulhatnak elő a csomópontokon:

  • Túlfeszültség: Túlfeszültség-csomópont létrehozása.
  • Ürítés: Kiüríti a podokat a csomópontról. Minden podnak öt perces időtúllépése van a kiürítés befejezéséhez.
  • Frissítés: A csomópont frissítése sikeres vagy sikertelen volt.
  • Törlés: Túlfeszültség-csomópont törlése.
  • A parancs használatával kubectl get events megtekintheti a frissítési eseményeket az alapértelmezett névterekben.

    kubectl get events --field-selector source=upgrader
    

    Az alábbi példakimenet a frissítés során felsorolt néhány fenti eseményt mutatja be:

    LAST SEEN   TYPE      REASON    OBJECT                                   MESSAGE
    ...
    5m          Normal    Drain     node/aks-nodepool1-96663640-vmss000000   Draining node: aks-nodepool1-96663640-vmss000000
    5m          Normal    Upgrade   node/aks-nodepool1-96663640-vmss000000   Deleting node aks-nodepool1-96663640-vmss000000 from API server
    4m          Normal    Upgrade   node/aks-nodepool1-96663640-vmss000000   Successfully reimaged node: aks-nodepool1-96663640-vmss000000
    4m          Normal    Upgrade   node/aks-nodepool1-96663640-vmss000000   Successfully upgraded node: aks-nodepool1-96663640-vmss000000
    4m          Normal    Drain     node/aks-nodepool1-96663640-vmss000000   Draining node: aks-nodepool1-96663640-vmss000000
    ...
    

Frissítés ellenőrzése

  • Ellenőrizze, hogy a frissítés sikeres volt-e a az aks show parancs használatával.

    az aks show --resource-group myResourceGroup --name myAKSCluster --output table
    

    Az alábbi példakimenet a KubernetesVersion 1.27.3-at futtató AKS-fürtöt mutatja be:

    Name          Location    ResourceGroup    KubernetesVersion    CurrentKubernetesVersion  ProvisioningState    Fqdn
    ------------  ----------  ---------------  -------------------  ------------------------  -------------------  ----------------------------------------------------------------
    myAKSCluster  eastus      myResourceGroup  1.29.2               1.29.2                    Succeeded            myaksclust-myresourcegroup-19da35-bd54a4be.hcp.eastus.azmk8s.io
    

A fürt törlése

Mivel ez az oktatóanyag a sorozat utolsó része, érdemes lehet törölnie az AKS-fürtöt, hogy elkerülje az Azure-díjak felmerülését.

  • Távolítsa el az erőforráscsoportot, a tárolószolgáltatást és az összes kapcsolódó erőforrást a az group delete parancs használatával.

    az group delete --name myResourceGroup --yes --no-wait
    

Feljegyzés

A fürt törlésekor az AKS-fürt által használt Microsoft Entra szolgáltatásnév nem lesz eltávolítva. A szolgáltatásnév eltávolításának lépéseiért lásd az AKS-szolgáltatásnevekre vonatkozó szempontokat és a szolgáltatásnevek törlését ismertető cikket. Ha felügyelt identitást használt, az identitást a platform kezeli, és nem követeli meg a titkos kulcsok kiépítését vagy elforgatását.

Következő lépések

Ebben az oktatóanyagban frissítettük a Kubernetest egy AKS-fürtben. Megtanulta végrehajtani az alábbi műveleteket:

  • Az aktuális és elérhető Kubernetes-verziók azonosítása.
  • Frissítse a Kubernetes-csomópontokat.
  • Sikeres frissítés ellenőrzése.

Az AKS-sel kapcsolatos további információkért tekintse meg az AKS áttekintését. A teljes megoldások AKS-sel való létrehozásáról az AKS-megoldásokkal kapcsolatos útmutatóban talál útmutatást.