Tutoriel : Déployer un cluster Azure Kubernetes Service (AKS)Tutorial: Deploy an Azure Kubernetes Service (AKS) cluster

Kubernetes fournit une plateforme distribuée destinée aux applications en conteneur.Kubernetes provides a distributed platform for containerized applications. Avec AKS, vous pouvez créer rapidement un cluster Kubernetes prêt pour la production.With AKS, you can quickly create a production ready Kubernetes cluster. Dans ce tutoriel (troisième d’une série de sept), un cluster Kubernetes est déployé dans AKS.In this tutorial, part three of seven, a Kubernetes cluster is deployed in AKS. Vous allez apprendre à effectuer les actions suivantes :You learn how to:

  • Déployer un cluster Kubernetes AKS qui peut s’authentifier auprès d’un registre de conteneurs AzureDeploy a Kubernetes AKS cluster that can authenticate to an Azure container registry
  • Installer l’interface de ligne de commande Kubernetes (kubectl)Install the Kubernetes CLI (kubectl)
  • Configurer kubectl pour se connecter à votre cluster AKSConfigure kubectl to connect to your AKS cluster

Dans les tutoriels ultérieurs, l’application Azure Vote est déployée sur le cluster, mise à l’échelle et mise à jour.In later tutorials, the Azure Vote application is deployed to the cluster, scaled, and updated.

Avant de commencerBefore you begin

Dans les tutoriels précédents, une image conteneur a été créée et chargée dans une instance Azure Container Registry.In previous tutorials, a container image was created and uploaded to an Azure Container Registry instance. Si vous n’avez pas effectué ces étapes et que vous souhaitez suivre cette procédure, commencez par le Tutoriel 1 : Créer des images conteneur.If you haven't done these steps, and would like to follow along, start at Tutorial 1 – Create container images.

Ce didacticiel nécessite l’exécution de l’interface de ligne de commande Azure CLI version 2.0.53 ou ultérieure.This tutorial requires that you're running the Azure CLI version 2.0.53 or later. Exécutez az --version pour trouver la version.Run az --version to find the version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.If you need to install or upgrade, see Install Azure CLI.

Créer un cluster KubernetesCreate a Kubernetes cluster

Les clusters AKS peuvent utiliser le contrôle d’accès en fonction du rôle Kubernetes (RBAC Kubernetes).AKS clusters can use Kubernetes role-based access control (Kubernetes RBAC). Ces contrôles vous permettent de définir l’accès aux ressources en fonction des rôles attribués aux utilisateurs.These controls let you define access to resources based on roles assigned to users. Des autorisations sont combinées si plusieurs rôles sont attribués à un utilisateur, et les autorisations peuvent être limitées à un seul espace de noms ou accordées à l’ensemble du cluster.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. Par défaut, l’interface Azure CLI active automatiquement RBAC Kubernetes lorsque vous créez un cluster AKS.By default, the Azure CLI automatically enables Kubernetes RBAC when you create an AKS cluster.

Créez un cluster AKS à l’aide de az aks create.Create an AKS cluster using az aks create. L’exemple suivant crée un cluster nommé myAKSCluster dans le groupe de ressources nommé myResourceGroup.The following example creates a cluster named myAKSCluster in the resource group named myResourceGroup. Vous avez créé ce groupe de ressources dans le tutoriel précédent dans la région eastus.This resource group was created in the previous tutorial in the eastus region. L’exemple suivant ne spécifie pas de région ; le cluster AKS est donc également créé dans la région eastus.The following example does not specify a region so the AKS cluster is also created in the eastus region. Pour plus d’informations sur les limites de ressources et la disponibilité dans les régions pour AKS, consultez Quotas, restrictions de taille de machine virtuelle et disponibilité des régions dans Azure Kubernetes Service (AKS).For more information, see Quotas, virtual machine size restrictions, and region availability in Azure Kubernetes Service (AKS) for more information about resource limits and region availability for AKS.

Pour permettre à un cluster AKS d’interagir avec d’autres ressources Azure, une identité de cluster est automatiquement créée, car vous n’en avez pas spécifiée.To allow an AKS cluster to interact with other Azure resources, a cluster identity is automatically created, since you did not specify one. Ici, cette identité de cluster se voit octroyer le droit d’extraire des images de l’instance d’Azure Container Registry (ACR) que vous avez créée dans le tutoriel précédent.Here, this cluster identity is granted the right to pull images from the Azure Container Registry (ACR) instance you created in the previous tutorial. Pour exécuter cette commande avec succès, vous devez disposer d’un rôle Propriétaire ou Administrateur de compte Azure sur l’abonnement Azure.To execute the command successfully, you're required to have an Owner or Azure account administrator role on the Azure subscription.

az aks create \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --node-count 2 \
    --generate-ssh-keys \
    --attach-acr <acrName>

Pour éviter de devoir utiliser un rôle Propriétaire ou Administrateur de compte Azure, vous pouvez également configurer manuellement un principal de service afin d’extraire des images du registre ACR.To avoid needing an Owner or Azure account administrator role, you can also manually configure a service principal to pull images from ACR. Pour plus d’informations, consultez Authentification ACR à l’aide de principaux de service ou S’authentifier à partir de Kubernetes avec un secret de tirage (pull).For more information, see ACR authentication with service principals or Authenticate from Kubernetes with a pull secret. Vous pouvez aussi utiliser une identité managée au lieu d’un principal de service pour une gestion simplifiée.Alternatively, you can use a managed identity instead of a service principal for easier management.

Après quelques minutes, le déploiement se termine et retourne des informations au format JSON concernant le déploiement AKS.After a few minutes, the deployment completes, and returns JSON-formatted information about the AKS deployment.

Notes

Pour garantir un fonctionnement fiable de votre cluster, vous devez exécuter au moins 2 (deux) nœuds.To ensure your cluster to operate reliably, you should run at least 2 (two) nodes.

Installer l’interface de ligne de commande KubernetesInstall the Kubernetes CLI

Pour vous connecter au cluster Kubernetes à partir de votre ordinateur local, utilisez kubectl, le client de ligne de commande Kubernetes.To connect to the Kubernetes cluster from your local computer, you use kubectl, the Kubernetes command-line client.

Si vous utilisez Azure Cloud Shell, kubectl est déjà installé.If you use the Azure Cloud Shell, kubectl is already installed. Vous pouvez également l’installer en local à l’aide de la commande az aks install-cli :You can also install it locally using the az aks install-cli command:

az aks install-cli

Se connecter au cluster à l’aide de kubectlConnect to cluster using kubectl

Pour configurer kubectl afin de vous connecter à votre cluster Kubernetes, exécutez la commande az aks get-credentials.To configure kubectl to connect to your Kubernetes cluster, use the az aks get-credentials command. L’exemple suivant obtient les informations d’identification du cluster AKS nommé myAKSCluster dans le groupe de ressources myResourceGroup :The following example gets credentials for the AKS cluster named myAKSCluster in the myResourceGroup:

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

Pour vérifier la connexion à votre cluster, exécutez la commande kubectl get nodes pour retourner la liste des nœuds de cluster :To verify the connection to your cluster, run the kubectl get nodes command to return a list of the cluster nodes:

$ kubectl get nodes

NAME                                STATUS   ROLES   AGE     VERSION
aks-nodepool1-37463671-vmss000000   Ready    agent   2m37s   v1.18.10
aks-nodepool1-37463671-vmss000001   Ready    agent   2m28s   v1.18.10

Étapes suivantesNext steps

Dans ce tutoriel, un cluster Kubernetes a été déployé dans ACS, et vous avez configuré kubectl pour qu’il s’y connecte.In this tutorial, a Kubernetes cluster was deployed in AKS, and you configured kubectl to connect to it. Vous avez appris à :You learned how to:

  • Déployer un cluster Kubernetes AKS qui peut s’authentifier auprès d’un registre de conteneurs AzureDeploy a Kubernetes AKS cluster that can authenticate to an Azure container registry
  • Installer l’interface de ligne de commande Kubernetes (kubectl)Install the Kubernetes CLI (kubectl)
  • Configurer kubectl pour se connecter à votre cluster AKSConfigure kubectl to connect to your AKS cluster

Passez au didacticiel suivant pour savoir comment déployer une application dans le cluster.Advance to the next tutorial to learn how to deploy an application to the cluster.