Accéder au tableau de bord web Kubernetes dans Azure Kubernetes Service (AKS)Access the Kubernetes web dashboard in Azure Kubernetes Service (AKS)

Kubernetes comprend un tableau de bord web qui peut être utilisé pour les opérations de gestion de base.Kubernetes includes a web dashboard that can be used for basic management operations. Ce tableau de bord vous permet d’afficher l’état de santé de base et les métriques concernant vos applications, ainsi que de créer et déployer des services et de modifier les applications existantes.This dashboard lets you view basic health status and metrics for your applications, create and deploy services, and edit existing applications. Cet article vous montre comment accéder au tableau de bord Kubernetes à l’aide de l’interface CLI Azure, et fournit des instructions pour certaines opérations de base.This article shows you how to access the Kubernetes dashboard using the Azure CLI, then guides you through some basic dashboard operations.

Pour plus d’informations sur le tableau de bord Kubernetes, consultez la section Tableau de bord de l’interface utilisateur web de Kubernetes.For more information on the Kubernetes dashboard, see Kubernetes Web UI Dashboard. AKS utilise la version 2.0 ou une version ultérieure du tableau de bord open source.AKS uses version 2.0 and greater of the open-source dashboard.

Avertissement

Le module complémentaire du tableau de bord AKS est défini pour la dépréciation.The AKS dashboard add-on is set for deprecation.

  • Le tableau de bord Kubernetes est activé par défaut pour les clusters exécutant une version de Kubernetes antérieure à 1.18.The Kubernetes dashboard is enabled by default for clusters running a Kubernetes version less than 1.18.
  • Le module complémentaire du dashboard est désactivé par défaut pour tous les nouveaux clusters créés sur Kubernetes 1.18 ou une version ultérieure.The dashboard add-on will be disabled by default for all new clusters created on Kubernetes 1.18 or greater.
  • À partir de la préversion de Kubernetes 1.19, AKS ne prend plus en charge l’installation du module complémentaire kube-dashboard géré.Starting with Kubernetes 1.19 in preview, AKS will no longer support installation of the managed kube-dashboard addon.
  • Les clusters existants avec le module complémentaire activé ne seront pas impactés.Existing clusters with the add-on enabled will not be impacted. Les utilisateurs pourront continuer à installer manuellement le tableau de bord open source en tant que logiciel installé par l’utilisateur.Users will continue to be able to manually install the open-source dashboard as user-installed software.

Avant de commencerBefore you begin

Les étapes détaillées dans ce document supposent que vous avez créé un cluster AKS et que vous avez établi une connexion kubectl avec le cluster.The steps detailed in this document assume that you've created an AKS cluster and have established a kubectl connection with the cluster. Si vous devez créer un cluster AKS, consultez Démarrage rapide : Déployer un cluster Azure Kubernetes Service à l’aide d’Azure CLI.If you need to create an AKS cluster, see Quickstart: Deploy an Azure Kubernetes Service cluster using the Azure CLI.

Azure CLI version 2.6.0 ou ultérieure doit également être installé et configuré.You also need the Azure CLI version 2.6.0 or later installed and configured. Exécutez  az --version pour trouver la version.Run az --version to find the version. Si vous devez installer ou mettre à niveau, consultez  Installation d’Azure CLI.If you need to install or upgrade, see Install Azure CLI.

Désactiver le tableau de bord KubernetesDisable the Kubernetes dashboard

Le module complémentaire kube-dashboard est activé par défaut sur les clusters antérieurs à K8s 1.18.The kube-dashboard addon is enabled by default on clusters older than K8s 1.18. Le module complémentaire peut être désactivé en exécutant la commande suivante.The addon can be disabled by running the following command.

az aks disable-addons -g myRG -n myAKScluster -a kube-dashboard

Ouvrir le tableau de bord KubernetesStart the Kubernetes dashboard

Pour ouvrir le tableau de bord Kubernetes sur un cluster, utilisez la commande az aks browse.To start the Kubernetes dashboard on a cluster, use the az aks browse command. Cette commande requiert l’installation sur le cluster du module complémentaire kube-dashboard, qui est inclus par défaut sur les clusters exécutant une version antérieure à Kubernetes 1.18.This command requires the installation of the kube-dashboard addon on the cluster, which is included by default on clusters running any version older than Kubernetes 1.18.

L’exemple suivant ouvre le tableau de bord du cluster nommé myAKSCluster dans le groupe de ressources nommé myResourceGroup :The following example opens the dashboard for the cluster named myAKSCluster in the resource group named myResourceGroup:

az aks browse --resource-group myResourceGroup --name myAKSCluster

Cette commande crée un proxy entre votre système de développement et l’API Kubernetes, et ouvre un navigateur web sur le tableau de bord Kubernetes.This command creates a proxy between your development system and the Kubernetes API, and opens a web browser to the Kubernetes dashboard. Si le tableau de bord Kubernetes ne s’ouvre pas dans le navigateur web, copiez et collez l’adresse URL indiquée dans Azure CLI (habituellement http://127.0.0.1:8001).If a web browser doesn't open to the Kubernetes dashboard, copy and paste the URL address noted in the Azure CLI, typically http://127.0.0.1:8001.

Notes

Si vous ne voyez pas le tableau de bord sous http://127.0.0.1:8001, vous pouvez accéder manuellement aux adresses suivantes.If you do not see the dashboard at http://127.0.0.1:8001 you can manually route to the following addresses. Les clusters de la version 1.16 ou des versions ultérieures utilisent https et requièrent un point de terminaison séparé.Clusters on 1.16 or greater use https and require a separate endpoint.

  • K8s 1.16 ou version supérieure : http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxyK8s 1.16 or greater: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy
  • K8s 1.15 et versions inférieures : http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxyK8s 1.15 and below: http://127.0.0.1:8001/api/v1/namespaces/kube-system/services/kubernetes-dashboard:/proxy

Connectez-vous au tableau de bord (kubernetes 1.16+)Sign in to the dashboard (kubernetes 1.16+)

Important

À partir de la version v1.10.1 du tableau de bord Kubernetes ou de Kubernetes v1.16+, le compte de service « kubernetes-dashboard » ne peut plus être utilisé pour récupérer des ressources en raison d’un correctif de sécurité dans cette version.As of v1.10.1 of the Kubernetes dashboard or kubernetes v1.16+ the service account "kubernetes-dashboard" can no longer be used to retrieve resources due to a security fix in that release. Par conséquent, les requêtes sans informations d’authentification retournent une erreur 401 non autorisé.As a result, requests without auth info return a 401 unauthorized error. Un jeton de porteur récupéré à partir d’un compte de service peut toujours être utilisé comme dans cet exemple de tableau de bord Kubernetes, mais cela a un impact sur le déroulement de la connexion du module additionnel du tableau de bord par rapport aux versions antérieures.A bearer token retrieved from a service account can still be used as in this Kubernetes Dashboard example, but this impacts the login flow of the dashboard add-on compared to older versions.

Si vous continuez à exécuter une version antérieure à 1.16, vous pouvez toujours donner des autorisations au compte de service « kubernetes-dashboard », mais cela n’est pas recommandé :If you still run a version prior to 1.16 you can still give permissions to the "kubernetes-dashboard" service account, but this is not recommended:

kubectl create clusterrolebinding kubernetes-dashboard --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard

L’écran initial présenté requiert un fichier kubeconfig ou un jeton.The initial screen presented requires a kubeconfig or token. Les deux options requièrent des autorisations d’accès aux ressources pour afficher ces ressources dans le tableau de bord.Both options require resource permissions to display those resources in the dashboard.

écran de connexion

Utiliser un fichier kubeconfigUse a kubeconfig

Pour les clusters activés par Azure AD et non activés par Azure AD, un fichier kubeconfig peut être transmis.For both Azure AD enabled and non-Azure AD enabled clusters, a kubeconfig can be passed in. Vérifiez que les jetons d’accès sont valides. Si vos jetons ont expiré, vous pouvez les actualiser via kubectl.Ensure access tokens are valid, if your tokens are expired you can refresh tokens via kubectl.

  1. Définir le fichier kubeconfig d’administration avec az aks get-credentials -a --resource-group <RG_NAME> --name <CLUSTER_NAME>Set the admin kubeconfig with az aks get-credentials -a --resource-group <RG_NAME> --name <CLUSTER_NAME>
  2. Sélectionnez Kubeconfig, puis cliquez sur Choose kubeconfig file pour ouvrir le sélecteur de fichiersSelect Kubeconfig and click Choose kubeconfig file to open file selector
  3. Sélectionnez votre fichier kubeconfig ($HOME/.Kube/config par défaut)Select your kubeconfig file (defaults to $HOME/.kube/config)
  4. Cliquez sur Sign InClick Sign In

Utilisation d’un jetonUse a token

  1. Pour un cluster non Azure AD activé, exécutez kubectl config view et copiez le jeton associé au compte d’utilisateur de votre cluster.For non-Azure AD enabled cluster, run kubectl config view and copy the token associated with the user account of your cluster.
  2. Collez dans l’option du jeton lors de la connexion.Paste into the token option at sign in.
  3. Cliquez sur Sign InClick Sign In

Pour les clusters Azure AD activés, récupérez votre jeton AAD avec la commande suivante.For Azure AD enabled clusters, retrieve your AAD token with the following command. Vérifiez que vous avez remplacé le groupe de ressources et le nom du cluster dans la commande.Validate you've replaced the resource group and cluster name in the command.

## Update <RESOURCE_GROUP and <AKS_NAME> with your input.

kubectl config view -o jsonpath='{.users[?(@.name == "clusterUser_<RESOURCE GROUP>_<AKS_NAME>")].user.auth-provider.config.access-token}'

Une fois l’opération réussie, une page similaire à celle ci-dessous s’affiche.Once successful, a page similar to the below will be displayed.

Page de présentation du tableau de bord web Kubernetes

Créer une applicationCreate an application

Les étapes suivantes requièrent que l’utilisateur dispose d’autorisations d’accès aux ressources respectives.The following steps require the user to have permissions to the respective resources.

Pour voir comment le tableau de bord Kubernetes peut réduire la complexité des tâches de gestion, nous allons créer une application.To see how the Kubernetes dashboard can reduce the complexity of management tasks, let's create an application. Vous pouvez créer une application à partir du tableau de bord Kubernetes en fournissant le texte d’entrée (un fichier YAML) ou en vous aidant d’un assistant graphique.You can create an application from the Kubernetes dashboard by providing text input, a YAML file, or through a graphical wizard.

Pour créer une application, procédez comme suit :To create an application, complete the following steps:

  1. Sélectionnez le bouton Créer dans l’angle supérieur droit.Select the Create button in the upper right window.
  2. Pour utiliser l’assistant graphique, choisissez Create an app (Créer une application).To use the graphical wizard, choose to Create an app.
  3. Donnez un nom au déploiement, par exemple nginx.Provide a name for the deployment, such as nginx
  4. Entrez le nom de l’image de conteneur à utiliser, par exemple nginx:1.15.5.Enter the name for the container image to use, such as nginx:1.15.5
  5. Créez un service Kubernetes pour exposer le port 80 réservé au trafic web.To expose port 80 for web traffic, you create a Kubernetes service. Sous Service, sélectionnez Externe, puis entrez 80 pour le port et le port cible.Under Service, select External, then enter 80 for both the port and target port.
  6. Lorsque vous êtes prêt, sélectionnez Déployer pour créer l’application.When ready, select Deploy to create the app.

Déployer une application dans le tableau de bord web Kubernetes

Une à deux minutes sont nécessaires pour assigner une adresse IP externe publique au service Kubernetes.It takes a minute or two for a public external IP address to be assigned to the Kubernetes service. Sur la gauche, sous Discovery and Load Balancing (Découverte et équilibrage de charge), sélectionnez Services.On the left-hand size, under Discovery and Load Balancing select Services. Le service de votre application est répertorié, y compris les points de terminaison externes, comme illustré dans l’exemple suivant :Your application's service is listed, including the External endpoints, as shown in the following example:

Afficher la liste des services et des points de terminaison

Sélectionnez l’adresse du point de terminaison pour ouvrir une fenêtre de navigateur web vers la page NGINX par défaut :Select the endpoint address to open a web browser window to the default NGINX page:

Afficher la page NGINX par défaut de l’application déployée

Afficher les informations de podView pod information

Le tableau de bord Kubernetes peut fournir des métriques de supervision de base et des informations de dépannage telles que des journaux d’activité.The Kubernetes dashboard can provide basic monitoring metrics and troubleshooting information such as logs.

Pour plus d’informations sur vos pods d’application, sélectionnez Pods dans le menu de gauche.To see more information about your application pods, select Pods in the left-hand menu. Une liste des pods disponibles s’affiche.The list of available pods is shown. Choisissez votre pod nginx pour afficher des informations, par exemple la consommation des ressources :Choose your nginx pod to view information, such as resource consumption:

Afficher les informations de pod

Modifier l’applicationEdit the application

En plus de la création et de l’affichage des applications, le tableau de bord Kubernetes permet de modifier et de mettre à jour des déploiements d’applications.In addition to creating and viewing applications, the Kubernetes dashboard can be used to edit and update application deployments. Pour assurer une redondance supplémentaire à l’application, nous allons augmenter le nombre de réplicas NGINX.To provide additional redundancy for the application, let's increase the number of NGINX replicas.

Pour modifier un déploiement :To edit a deployment:

  1. Sélectionnez Déploiements dans le menu de gauche, puis choisissez votre déploiement nginx.Select Deployments in the left-hand menu, and then choose your nginx deployment.
  2. Sélectionnez Modifier dans la barre de navigation en haut à droite.Select Edit in the upper right-hand navigation bar.
  3. Recherchez la valeur spec.replica vers la ligne 20.Locate the spec.replica value, at around line 20. Pour augmenter le nombre de réplicas de l’application, modifiez cette valeur. Elle doit être comprise entre 1 et 3.To increase the number of replicas for the application, change this value from 1 to 3.
  4. Lorsque vous êtes prêt, sélectionnez Mettre à jour.Select Update when ready.

Modifier le déploiement pour mettre à jour le nombre de réplicas

Il faut un certain temps pour créer les nouveaux pods à l’intérieur d’un jeu de réplicas.It takes a few moments for the new pods to be created inside a replica set. Dans le menu de gauche, choisissez Replica Sets (Jeux de réplicas), puis votre jeu de réplicas nginx.On the left-hand menu, choose Replica Sets, and then choose your nginx replica set. La liste des pods reflète maintenant le nombre de réplicas mis à jour, comme indiqué dans la sortie fournie à titre d’exemple :The list of pods now reflects the updated replica count, as shown in the following example output:

Afficher les informations sur le jeu de réplicas

Étapes suivantesNext steps

Pour plus d’informations sur le tableau de bord Kubernetes, consultez le tableau de bord de l’interface utilisateur web de Kubernetes.For more information about the Kubernetes dashboard, see the Kubernetes Web UI Dashboard.