Aracılığıyla paylaş


Öğretici - Azure Kubernetes Service (AKS) kümesini yükseltme

Uygulama ve küme yaşam döngüsünün bir parçası olarak Kubernetes'in kullanılabilir en son sürümüne yükseltmek isteyebilirsiniz. Azure CLI, Azure PowerShell veya Azure portalını kullanarak Azure Kubernetes Service (AKS) kümenizi yükseltebilirsiniz.

Yedinin yedinci bölümü olan bu öğreticide aks kümesini yükseltin. Şunları yapmayı öğreneceksiniz:

  • Geçerli ve kullanılabilir Kubernetes sürümlerini belirleyin.
  • Kubernetes düğümlerinizi yükseltin.
  • Başarılı bir yükseltmeyi doğrulayın.

Başlamadan önce

Önceki öğreticilerde bir uygulamayı kapsayıcı görüntüsüne paketlediyseniz ve kapsayıcı görüntüsünü Azure Container Registry'ye (ACR) yüklemişsinizdir. Ayrıca bir AKS kümesi oluşturdunuz ve bu kümeye bir uygulama dağıttınız. Bu adımları tamamlamadıysanız ve takip etmek istiyorsanız, Öğretici 1 - AKS için uygulama hazırlama ile başlayın.

Azure CLI kullanılıyorsa bu öğretici için Azure CLI sürüm 2.34.1 veya üzeri gerekir. Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.

Azure PowerShell kullanılıyorsa bu öğretici için Azure PowerShell sürüm 5.9.0 veya üzeri gerekir. Sürümü bulmak için Get-InstalledModule -Name Az komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse bkz. Azure PowerShell yükleme.

Kullanılabilir küme sürümlerini alma

  • Yükseltmeden önce komutunu kullanarak kümeniz için hangi Kubernetes sürümlerinin az aks get-upgrades kullanılabilir olduğunu denetleyin.

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

    Aşağıdaki örnek çıktı, geçerli sürümü 1.28.9 olarak gösterir ve altında upgradeskullanılabilir sürümleri listeler:

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

AKS kümesini yükseltme

AKS düğümleri, çalışan uygulamalarda olası kesintileri en aza indirmek için dikkatlice kordonlanır ve boşaltılır. Bu işlem sırasında AKS aşağıdaki adımları gerçekleştirir:

Not

Herhangi bir düzeltme eki belirtilmezse, küme otomatik olarak belirtilen ikincil sürümün en son GA düzeltme ekine yükseltilir. Örneğin, ayarı --kubernetes-version 1.28 kümenin sürümüne yükseltilmesiyle sonuçlanıyor 1.28.9.

Daha fazla bilgi için bkz. AKS'de desteklenen Kubernetes ikincil sürüm yükseltmeleri.

Kümenizi el ile yükseltebilir veya otomatik küme yükseltmelerini yapılandırabilirsiniz. Kümenizin her zaman Kubernetes'in en son sürümünü çalıştırdığından emin olmak için otomatik küme yükseltmelerini yapılandırmanızı öneririz.

Kümeyi el ile yükseltme

  • komutunu kullanarak kümenizi yükseltin az aks upgrade .

    az aks upgrade \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --kubernetes-version KUBERNETES_VERSION
    
  • Yükseltme işlemini onaylamanız ve denetim düzlemini ve tüm düğüm havuzlarını seçilen Kubernetes sürümüne yükseltmek istediğinizi onaylamanız istenir:

     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
    

    Not

    Aynı anda yalnızca bir ikincil sürüm yükseltmesi yapabilirsiniz. Örneğin, 1.14.x'ten 1.15.x'e yükseltebilirsiniz, ancak doğrudan 1.14.x'ten 1.16.x'e yükseltemezsiniz. 1.14.x'ten 1.16.x'e yükseltmek için, önce 1.14.x'ten 1.15.x'e yükseltmeniz ve ardından 1.15.x'ten 1.16.x'e başka bir yükseltme gerçekleştirmeniz gerekir.

    Aşağıdaki örnek çıktı, 1.29.2 sürümüne yükseltmenin sonucunu gösterir. şimdi 1.29.2'yi gösterdiğine kubernetesVersion dikkat edin:

    {
      ...
      "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"
      ...
    }
    

Otomatik küme yükseltmelerini yapılandırma

  • parametresi olarak ayarlanmış komutunu --auto-upgrade-channel kullanarak az aks update kümenizde bir otomatik yükseltme kanalı ayarlayınpatch.

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

Daha fazla bilgi için bkz . Azure Kubernetes Service (AKS) kümesini otomatik olarak yükseltme.

AKS düğümü görüntülerini yükseltme

AKS düzenli olarak yeni düğüm görüntüleri sağlar. Linux düğümü görüntüleri haftalık olarak, Windows düğümü görüntüleri ise aylık olarak güncelleştirilir. En son AKS özelliklerini ve güvenlik güncelleştirmelerini kullanmak için düğüm görüntülerinizi sık sık yükseltmenizi öneririz. Daha fazla bilgi için bkz . Azure Kubernetes Service'te (AKS) düğüm görüntülerini yükseltme. Otomatik düğüm görüntüsü yükseltmelerini yapılandırmak için bkz . Azure Kubernetes Service (AKS) kümesi düğümü işletim sistemi görüntülerini otomatik olarak yükseltme.

Yükseltme olaylarını görüntüleme

Not

Kümenizi yükselttiğinizde düğümlerde aşağıdaki Kubernetes olayları oluşabilir:

  • Dalgalanma: Bir dalgalanma düğümü oluşturun.
  • Boşaltma: Düğümden podları çıkarma. Her pod, çıkarma işlemini tamamlamak için beş dakikalık bir zaman aşımına sahiptir.
  • Güncelleştirme: Düğüm güncelleştirmesi başarılı veya başarısız oldu.
  • Sil: Bir dalgalanma düğümünü silin.
  • komutunu kullanarak varsayılan ad alanında yükseltme olaylarını kubectl get events görüntüleyin.

    kubectl get events --field-selector source=upgrader
    

    Aşağıdaki örnek çıktı, yükseltme sırasında listelenen yukarıdaki olaylardan bazılarını gösterir:

    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
    ...
    

Yükseltmeyi doğrulama

  • komutunu kullanarak yükseltmenin az aks show başarılı olduğunu onaylayın.

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

    Aşağıdaki örnek çıktıda AKS kümesinin KubernetesVersion 1.27.3 çalıştırılır:

    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
    

Küme silme

Bu öğretici serinin son bölümü olduğundan, Azure ücretlendirmesini önlemek için AKS kümenizi silmek isteyebilirsiniz.

  • komutunu kullanarak az group delete kaynak grubunu, kapsayıcı hizmetini ve tüm ilgili kaynakları kaldırın.

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

Not

Kümeyi sildiğinizde AKS kümesi tarafından kullanılan Microsoft Entra hizmet sorumlusu kaldırılmaz. Hizmet sorumlusunu kaldırma adımları için bkz. AKS hizmet sorumlusuyla ilgili önemli noktalar ve silme. Yönetilen kimlik kullandıysanız, kimlik platform tarafından yönetilir ve gizli dizileri sağlamanızı veya döndürmenizi gerektirmez.

Sonraki adımlar

Bu öğreticide, bir AKS kümesinde Kubernetes’i yükselttiniz. Şunları öğrendiniz:

  • Geçerli ve kullanılabilir Kubernetes sürümlerini belirleyin.
  • Kubernetes düğümlerinizi yükseltin.
  • Başarılı bir yükseltmeyi doğrulayın.

AKS hakkında daha fazla bilgi için bkz. AKS'ye genel bakış. AKS ile tam çözüm oluşturma yönergeleri için AKS çözümü kılavuzuna bakın.