Kubernetes · 4 min read · Feb 03, 2026

Tableau de bord Web UI pour Kubernetes

Le tableau de bord Kubernetes fournit une interface utilisateur basée sur le web pour le cluster. On peut déployer des applications sur le cluster en utilisant le tableau de bord ainsi que résoudre les problèmes des applications existantes dans le cluster. Le tableau de bord fournit également un aperçu des ressources dans le cluster. Le tableau de bord est officiellement fourni par Kubernetes. On peut créer, modifier, mettre à jour et supprimer des objets Kubernetes en utilisant le tableau de bord.

Dans cet article, nous allons installer le tableau de bord officiel fourni par Kubernetes et configurer un compte de service pour y accéder. Avant de procéder avec cet article, il est supposé que vous êtes familier avec Kubernetes et que vous avez un cluster Kubernetes.

Prérequis

  1. Cluster Kubernetes avec au moins 1 nœud de travail.
    Si vous souhaitez apprendre à créer un cluster Kubernetes, cliquez ici. Ce guide vous aidera à créer un cluster Kubernetes avec 1 maître et 2 nœuds de travail sur des instances EC2 AWS Ubuntu 18.04.
  2. Compréhension de base de Kubernetes.

Que allons-nous faire ?

  1. Déployer le tableau de bord Kubernetes.
  2. Configurer un ServiceAccount pour accéder au tableau de bord Kubernetes.
  3. Accéder au tableau de bord Kubernetes.

Déployer le tableau de bord Kubernetes

Pour déployer le tableau de bord Kubernetes, nous pouvons télécharger son fichier objet depuis Github. Utilisez la commande suivante pour télécharger le fichier objet. Ce fichier contient des définitions pour Namespace, ServiceAccount, Service, Secret, ConfigMap, Role, ClusterRole, RoleBinding, ClusterRoleBinding, Deployment et Service.

pwd
wget https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended.yaml

Télécharger les modèles

Renommez le fichier et changez le type de service en NodePort. Référez-vous à la capture d’écran suivante.

mv recommended.yaml kubernetes-dashboard-deployment.yml
vim kubernetes-dashboard-deployment.yml

Changer le type de service en NodePort

Une fois que vous avez changé le type de service en NodePort, il est temps de créer tous les objets responsables du déploiement du tableau de bord Kubernetes.

kubectl apply -f kubernetes-dashboard-deployment.yml

Vérifiez le déploiement, le Pod et le Service qui ont été créés par la commande ci-dessus. La commande ci-dessus crée également Namespace, ServiceAccount, Service, Secret, ConfigMap, Role, ClusterRole, RoleBinding, ClusterRoleBinding, Deployment et Service.

kubectl get deployments -n kubernetes-dashboard
kubectl get svc
kubectl get pods
kubectl get pods -n kubernetes-dashboard
kubectl get svc -n kubernetes-dashboard  

Créer des objets Kubernetes pour le tableau de bord

Dans la capture d’écran ci-dessus, vous pouvez voir que le Service du tableau de bord Kubernetes avec le type “NodePort” a été créé. Cela signifie que le tableau de bord sera disponible sur n’importe quelle des IP des nœuds sur le NodePort “32304”. Vous pouvez voir un port différent pour le service sur votre cluster.

Utilisez la commande suivante pour obtenir les IP de vos nœuds dont vous aurez besoin dans les étapes suivantes.

kubectl get nodes -o wide

Configurer un ServiceAccount pour accéder au tableau de bord Kubernetes

Pour accéder au tableau de bord Kubernetes, vous devez avoir un jeton. Pour créer un jeton, nous devons d’abord créer un ServiceAccount.

Créez un nouveau fichier et ajoutez le contenu suivant pour créer un ServiceAccount. Vous pouvez également télécharger le fichier objet depuis mon dépôt Github.

vim admin-sa.yml
cat admin-sa.yml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: rahul-admin
  namespace: kube-system

Une fois que vous avez le fichier objet, exécutez la commande suivante pour créer un ServiceAccount.

kubectl apply -f admin-sa.yml

Créer un compte de service

Maintenant, vous devez associer le ServiceAccount “rahul-admin” au rôle de cluster “cluster-admin”. Créez un nouveau fichier avec le contenu suivant pour créer un ClusterRoleBinding ou cliquez ici pour télécharger le fichier objet depuis mon dépôt Github.

vim admin-rbac.yml
cat admin-rbac.yml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: rahul-admin
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: rahul-admin
    namespace: kube-system  

Exécutez la commande suivante pour créer un “ClusterRoleBinding”.

kubectl apply -f admin-rbac.yml

Créer un ClusterRoleBinding

Maintenant, nous avons un “ClusterRole” –> “cluster-admin” lié au “ServiceAccount” –> “rahul-admin”.

Nous sommes maintenant prêts à récupérer le jeton à utiliser pour se connecter au tableau de bord Kubernetes. Pour récupérer le jeton, exécutez les commandes suivantes.

SA_NAME="rahul-admin"
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep ${SA_NAME} | awk '{print $1}')

Obtenir le jeton

Dans la capture d’écran ci-dessus, vous pouvez voir un jeton à utiliser pour se connecter au tableau de bord Kubernetes. Copiez ce jeton et accédez à l’URL du tableau de bord sur “NodeIP:NodePort”.

Ici, NodeIP est l’IP de n’importe quel nœud dans le cluster et NodePort est le port (dans ce cas, c’est 32304, dans votre cas, vous pouvez avoir un port différent) du service que nous avons créé.

Une fois que vous accédez à l’URL “NodeIP:NodePort”, vous verrez un écran comme suit. Ici, sélectionnez l’option “Token”, entrez le jeton que nous avons récupéré à l’étape précédente et cliquez sur le bouton “Se connecter”.

Accéder au tableau de bord Kubernetes

Accéder au tableau de bord sur IP:NodePort

Une fois que vous vous êtes connecté avec succès, vous devriez voir le tableau de bord Kubernetes comme suit.

Le tableau de bord - Namespace par défaut

En haut de l’écran, vous pouvez même changer le Namespace et voir les ressources qui s’y trouvent. Vous êtes maintenant prêt à explorer le tableau de bord Kubernetes.

Le tableau de bord - Namespace kubernetes-dashboard

Conclusion

Dans cet article, nous avons déployé tous les objets Kubernetes nécessaires pour avoir le tableau de bord dans le cluster. Nous avons créé un ServiceAccount et un ClusterRoleBinding pour avoir un jeton afin d’accéder au tableau de bord Kubernetes car il ne peut pas être accessible simplement. Le tableau de bord peut vous aider à comprendre le cluster et à voir tous les objets qu’il contient.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.