Kurz: Nasaďte cluster Azure Kubernetes Service (AKS)Tutorial: Deploy an Azure Kubernetes Service (AKS) cluster

Kubernetes poskytuje distribuovanou platformu pro kontejnerizované aplikace.Kubernetes provides a distributed platform for containerized applications. Díky službě AKS se můžete rychle vytvořit cluster Kubernetes připravený pro produkční prostředí.With AKS, you can quickly create a production ready Kubernetes cluster. V tomto kurzu, který je třetí částí sedmidílné série, se nasadí cluster Kubernetes ve službě AKS.In this tutorial, part three of seven, a Kubernetes cluster is deployed in AKS. Získáte informace o těchto tématech:You learn how to:

  • Vytvoření instančního objektu pro interakce prostředkůCreate a service principal for resource interactions
  • Nasazení clusteru Kubernetes AKSDeploy a Kubernetes AKS cluster
  • Instalace rozhraní příkazového řádku Kubernetes (kubectl)Install the Kubernetes CLI (kubectl)
  • Konfigurace kubectl pro připojení ke clusteru AKSConfigure kubectl to connect to your AKS cluster

V dalších kurzech je aplikace Azure Vote nasadí do clusteru, škálovat a aktualizovat.In additional tutorials, the Azure Vote application is deployed to the cluster, scaled, and updated.

Před zahájenímBefore you begin

V předchozích kurzech se vytvořila image kontejneru a nahrála se do instance služby Azure Container Registry.In previous tutorials, a container image was created and uploaded to an Azure Container Registry instance. Pokud jste tyto kroky neprovedli a chcete postupovat s námi, začínají kurzu 1 – vytváření imagí kontejneru.If you haven't done these steps, and would like to follow along, start at Tutorial 1 – Create container images.

Tento kurz vyžaduje, že používáte Azure CLI verze 2.0.53 nebo novější.This tutorial requires that you're 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.

Vytvoření instančního objektuCreate a service principal

Aby mohl cluster AKS pracovat a komunikovat s jinými prostředky Azure, používá se instanční objekt služby Azure Active Directory.To allow an AKS cluster to interact with other Azure resources, an Azure Active Directory service principal is used. Tento instanční objekt se dá automaticky vytvořit pomocí rozhraní příkazového řádku Azure nebo portálu, nebo si ho můžete předem vytvořit a přiřadit další oprávnění.This service principal can be automatically created by the Azure CLI or portal, or you can pre-create one and assign additional permissions. V tomto kurzu vytvoříte instanční objekt, udělíte přístup k instanci Azure Container Registry (ACR) vytvořené v předchozím kurzu a potom vytvoříte cluster AKS.In this tutorial, you create a service principal, grant access to the Azure Container Registry (ACR) instance created in the previous tutorial, then create an AKS cluster.

Vytvořte instanční objekt pomocí příkazu az ad sp create-for-rbac.Create a service principal using the az ad sp create-for-rbac command. Parametr --skip-assignment nastavuje omezení, aby už nešla přidělovat žádná další oprávnění.The --skip-assignment parameter limits any additional permissions from being assigned. Ve výchozím nastavení tento instanční objekt je platný jeden rok.By default, this service principal is valid for one year.

az ad sp create-for-rbac --skip-assignment

Výstup se podobá následujícímu příkladu:The output is similar to the following example:

{
  "appId": "e7596ae3-6864-4cb8-94fc-20164b1588a9",
  "displayName": "azure-cli-2018-06-29-19-14-37",
  "name": "http://azure-cli-2018-06-29-19-14-37",
  "password": "52c95f25-bd1e-4314-bd31-d8112b293521",
  "tenant": "72f988bf-86f1-41af-91ab-2d7cd011db48"
}

Poznamenejte si appId a password.Make a note of the appId and password. Tyto hodnoty se použijí v dalších krocích.These values are used in the following steps.

Konfigurace ověřování služby ACRConfigure ACR authentication

Pro přístup k imagím uloženým v ACR je nutné udělit instančnímu objektu AKS správná práva ke stahování imagí z ACR.To access images stored in ACR, you must grant the AKS service principal the correct rights to pull images from ACR.

Nejprve pomocí příkazu az acr show získejte ID prostředku služby ACR.First, get the ACR resource ID using az acr show. Aktualizujte název registru <acrName> na název instance ACR a skupinu prostředků, ve které se instance ACR nachází.Update the <acrName> registry name to that of your ACR instance and the resource group where the ACR instance is located.

az acr show --resource-group myResourceGroup --name <acrName> --query "id" --output tsv

Chcete-li udělit správný přístup pro cluster AKS tak, aby o přijetí změn imagí uložených v ACR, přiřaďte AcrPull role pomocí vytvořit přiřazení role az příkazu.To grant the correct access for the AKS cluster to pull images stored in ACR, assign the AcrPull role using the az role assignment create command. Nahraďte <appId> a <acrId> hodnotami získanými v předchozích dvou krocích.Replace <appId> and <acrId> with the values gathered in the previous two steps.

az role assignment create --assignee <appId> --scope <acrId> --role acrpull

Vytvoření clusteru KubernetesCreate a Kubernetes cluster

Clustery AKS můžou využívat řízení přístupu na základě role (RBAC) v Kubernetes.AKS clusters can use Kubernetes role-based access controls (RBAC). Toto řízení umožňuje definovat přístup k prostředkům na základě rolí přiřazených uživatelům.These controls let you define access to resources based on roles assigned to users. Oprávnění jsou zkombinované, pokud má uživatel přiřazeno více rolí a oprávnění můžete obor, buď s jedním oborem názvů nebo celého clusteru.Permissions are combined if a user is assigned multiple roles, and permissions can be scoped to either a single namespace or across the whole cluster. Ve výchozím nastavení Azure CLI automaticky povolí řízení přístupu na základě role při vytvoření clusteru AKS.By default, the Azure CLI automatically enables RBAC when you create an AKS cluster.

Vytvořte cluster AKS pomocí příkazu az aks create.Create an AKS cluster using az aks create. Následující příklad vytvoří cluster myAKSCluster ve skupině prostředků myResourceGroup.The following example creates a cluster named myAKSCluster in the resource group named myResourceGroup. Tato skupina prostředků se vytvořila v předchozím kurzu.This resource group was created in the previous tutorial. Zadejte vlastní <appId> a <password> z předchozího kroku, ve kterém se vytvořil instanční objekt.Provide your own <appId> and <password> from the previous step where the service principal was created.

az aks create \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --node-count 1 \
    --service-principal <appId> \
    --client-secret <password> \
    --generate-ssh-keys

Po několika minutách se nasazení dokončí a vrátí informace o nasazení služby AKS s formátem JSON.After a few minutes, the deployment completes, and returns JSON-formatted information about the AKS deployment.

Instalace rozhraní příkazového řádku KubernetesInstall the Kubernetes CLI

Pokud se chcete připojit ke clusteru Kubernetes z místního počítače, použijte klienta příkazového řádku Kubernetes kubectl.To connect to the Kubernetes cluster from your local computer, you use kubectl, the Kubernetes command-line client.

Pokud používáte Azure Cloud Shell, kubectl je už nainstalovaný.If you use the Azure Cloud Shell, kubectl is already installed. Můžete ho také nainstalovat místně, a to pomocí příkazu az aks install-cli:You can also install it locally using the az aks install-cli command:

az aks install-cli

Připojení ke clusteru pomocí kubectlConnect to cluster using kubectl

Ke konfiguraci kubectl pro připojení k vašemu clusteru Kubernetes, použijte az aks get-credentials příkazu.To configure kubectl to connect to your Kubernetes cluster, use the az aks get-credentials command. Následující příklad získá přihlašovací údaje pro cluster AKS, s názvem myAKSCluster v myResourceGroup:The following example gets credentials for the AKS cluster named myAKSCluster in the myResourceGroup:

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

Pokud chcete ověřit připojení k vašemu clusteru, spusťte příkaz kubectl get nodes:To verify the connection to your cluster, run the kubectl get nodes command:

$ kubectl get nodes

NAME                       STATUS   ROLES   AGE     VERSION
aks-nodepool1-28993262-0   Ready    agent   3m18s   v1.9.11

Další postupNext steps

V tomto kurzu se nasadil cluster Kubernetes ve službě AKS a nakonfigurovali jste kubectl pro připojení k tomuto clusteru.In this tutorial, a Kubernetes cluster was deployed in AKS, and you configured kubectl to connect to it. Naučili jste se tyto postupy:You learned how to:

  • Vytvoření instančního objektu pro interakce prostředkůCreate a service principal for resource interactions
  • Nasazení clusteru Kubernetes AKSDeploy a Kubernetes AKS cluster
  • Instalace rozhraní příkazového řádku Kubernetes (kubectl)Install the Kubernetes CLI (kubectl)
  • Konfigurace kubectl pro připojení ke clusteru AKSConfigure kubectl to connect to your AKS cluster

V dalším kurzu se dozvíte, jak do clusteru nasadit aplikaci.Advance to the next tutorial to learn how to deploy an application to the cluster.