Kurz: Upgrade Kubernetes ve službě Azure Kubernetes (AKS)Tutorial: Upgrade Kubernetes in Azure Kubernetes Service (AKS)

V rámci životního cyklu aplikace a clusteru možná budete chtít provést upgrade na nejnovější dostupnou verzi Kubernetes a využívat nové funkce.As part of the application and cluster lifecycle, you may wish to upgrade to the latest available version of Kubernetes and use new features. Cluster Azure Kubernetes Service (AKS) je možné upgradovat pomocí Azure CLI.An Azure Kubernetes Service (AKS) cluster can be upgraded using the Azure CLI.

V tomto kurzu, který je sedmou částí sedmidílné série, se upgraduje cluster Kubernetes.In this tutorial, part seven of seven, a Kubernetes cluster is upgraded. Získáte informace o těchto tématech:You learn how to:

  • Identifikace aktuální verze a dostupných verzí KubernetesIdentify current and available Kubernetes versions
  • Upgrade uzlů KubernetesUpgrade the Kubernetes nodes
  • Ověření úspěšného upgraduValidate a successful upgrade

Před zahájenímBefore you begin

V předchozích kurzech byla aplikace zabalena do image kontejneru.In previous tutorials, an application was packaged into a container image. Tato image se nahrála do Azure Container Registry a vytvořili jste cluster AKS.This image was uploaded to Azure Container Registry, and you created an AKS cluster. Aplikace se pak nasadí do clusteru AKS.The application was then deployed to the AKS cluster. Pokud jste tyto kroky neudělali a chcete je sledovat, začněte s kurzem 1 – vytváření imagí kontejneru.If you have not done these steps, and would like to follow along, start with Tutorial 1 – Create container images.

Tento kurz vyžaduje, abyste spustili Azure CLI verze 2.0.53 nebo novější.This tutorial requires that you are running the Azure CLI version 2.0.53 or later. Verzi zjistíte spuštěním příkazu az --version.Run az --version to find the version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.If you need to install or upgrade, see Install Azure CLI.

Získání dostupných verzí clusteruGet available cluster versions

Před upgradem clusteru pomocí příkazu az aks get-upgrades zkontrolujte, které vydané verze Kubernetes jsou pro upgrade k dispozici:Before you upgrade a cluster, use the az aks get-upgrades command to check which Kubernetes releases are available for upgrade:

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

V následujícím příkladu je aktuální verze 1.13.10a dostupné verze se zobrazí ve sloupci upgrady .In the following example, the current version is 1.13.10, and the available versions are shown under the Upgrades column.

Name     ResourceGroup    MasterVersion    NodePoolVersion    Upgrades
-------  ---------------  ---------------  -----------------  --------------
default  myResourceGroup  1.13.10          1.13.10            1.14.5, 1.14.6

Upgrade clusteruUpgrade a cluster

Aby se minimalizovalo přerušení spuštěných aplikací, uzly AKS pečlivě uzavřené a vyprázdní.To minimize disruption to running applications, AKS nodes are carefully cordoned and drained. V tomto procesu jsou provedeny následující kroky:In this process, the following steps are performed:

  1. Scheduler Kubernetes zabrání v naplánování dalších lusků v uzlu, který se má upgradovat.The Kubernetes scheduler prevents additional pods being scheduled on a node that is to be upgraded.
  2. Běžící lusky na uzlu jsou plánovány na jiných uzlech v clusteru.Running pods on the node are scheduled on other nodes in the cluster.
  3. Vytvoří se uzel, který spustí nejnovější součásti Kubernetes.A node is created that runs the latest Kubernetes components.
  4. Když je nový uzel připravený a připojený ke clusteru, začne Plánovač Kubernetes v něm spouštět lusky.When the new node is ready and joined to the cluster, the Kubernetes scheduler begins to run pods on it.
  5. Starý uzel se odstraní a další uzel v clusteru zahájí proces Cordon a vyprázdnění.The old node is deleted, and the next node in the cluster begins the cordon and drain process.

Cluster AKS můžete upgradovat pomocí příkazu az aks upgrade.Use the az aks upgrade command to upgrade the AKS cluster. Následující příklad upgraduje cluster na Kubernetes verze 1.14.6.The following example upgrades the cluster to Kubernetes version 1.14.6.

Poznámka

Najednou můžete upgradovat pouze jednu dílčí verzi.You can only upgrade one minor version at a time. Můžete například upgradovat z 1.12. x na 1.13. x, ale nelze upgradovat z 1.12. x na otázku 1.14. x přímo.For example, you can upgrade from 1.12.x to 1.13.x, but cannot upgrade from 1.12.x to 1.14.x directly. Pokud chcete upgradovat z 1.12. x na otázku 1.14. x, nejdřív upgradujte z 1.12. x na 1.13. xa pak proveďte jiný upgrade z 1.13. x na otázku 1.14. x.To upgrade from 1.12.x to 1.14.x, first upgrade from 1.12.x to 1.13.x, then perform another upgrade from 1.13.x to 1.14.x.

az aks upgrade --resource-group myResourceGroup --name myAKSCluster --kubernetes-version 1.14.6

Následující zhuštěný příklad výstupu ukazuje kubernetesVersion nyní sestavy 1.14.6:The following condensed example output shows the kubernetesVersion now reports 1.14.6:

{
  "agentPoolProfiles": [
    {
      "count": 3,
      "maxPods": 110,
      "name": "nodepool1",
      "osType": "Linux",
      "storageProfile": "ManagedDisks",
      "vmSize": "Standard_DS1_v2",
    }
  ],
  "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.14.6",
  "location": "eastus",
  "name": "myAKSCluster",
  "type": "Microsoft.ContainerService/ManagedClusters"
}

Ověření upgraduValidate an upgrade

Následujícím způsobem ověřte úspěšné provedení upgradu pomocí příkazu az aks show:Confirm that the upgrade was successful using the az aks show command as follows:

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

Následující příklad výstupu ukazuje, že cluster AKS spouští KubernetesVersion 1.14.6:The following example output shows the AKS cluster runs KubernetesVersion 1.14.6:

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

Odstranění clusteruDelete the cluster

Vzhledem k tomu, že se jedná o poslední část této série, možná budete chtít odstranit cluster AKS.As this tutorial is the last part of the series, you may want to delete the AKS cluster. Jelikož uzly prostředí Kubernetes běží na virtuálních počítačích v Azure, účtují se za ně poplatky, i když cluster nevyužíváte.As the Kubernetes nodes run on Azure virtual machines (VMs), they continue to incur charges even if you don't use the cluster. Pomocí příkazu AZ Group Delete odeberte skupinu prostředků, službu kontejneru a všechny související prostředky.Use the az group delete command to remove the resource group, container service, and all related resources.

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

Poznámka

Při odstranění clusteru se neodebere instanční objekt služby Azure Active Directory používaný clusterem AKS.When you delete the cluster, the Azure Active Directory service principal used by the AKS cluster is not removed. Postup odebrání instančního objektu najdete v tématu AKS a informace o instančním objektu a jejich odstranění.For steps on how to remove the service principal, see AKS service principal considerations and deletion.

Další postupNext steps

V tomto kurzu jste upgradovali Kubernetes v clusteru AKS.In this tutorial, you upgraded Kubernetes in an AKS cluster. Naučili jste se tyto postupy:You learned how to:

  • Identifikace aktuální verze a dostupných verzí KubernetesIdentify current and available Kubernetes versions
  • Upgrade uzlů KubernetesUpgrade the Kubernetes nodes
  • Ověření úspěšného upgraduValidate a successful upgrade

Další informace o službě AKS najdete na následujícím odkazu.Follow this link to learn more about AKS.