DJEBBOURI Younes
Architecte Azure et DevOps 🚀💻✨

2. PROBLÉMATIQUE

kubectl, c’est l’outil de base pour opérer un cluster Kubernetes.
kubectl, c’est l’outil de base pour opérer un cluster Kubernetes.
Il est open source, maintenu par la CNCF, dispo partout, et c’est souvent la première interface qu’un Ops ou un architecte découvre.

Mais ce n’est pas un outil universel.

Tout le monde n’a pas une culture CLI.
Et certains rôles , data scientists, développeurs métiers, sécurité ne seront jamais à l’aise avec des lignes de commande ou des contextes changeants.

Et justement… c’est là que les erreurs commencent.

Dès qu’on gère plusieurs clusters, plusieurs environnements, plusieurs namespaces, on se retrouve vite avec :

“J’ai exécuté la commande sur le mauvais cluster…”
“J’ai déployé sur dev… en pensant être sur staging…”
“J’ai supprimé un namespace… mais pas le bon.”

Parce que kubectl garde ton contexte précédent.
Et à moins d’être ultra rigoureux, tu interagis souvent avec le mauvais environnement :
prod au lieu de dev, namespace monitoring au lieu de app, cluster Europe au lieu d’Asie.

À petite échelle, ça se rattrape.
Mais à partir de 10, 20, 100 clusters, avec plusieurs équipes et rôles croisés, ça devient un vrai problème d’exploitation.

Quand on commence à outiller une équipe Ops autour d’AKS, la question arrive vite :

Quels outils choisir pour opérer mes clusters ?

Et là, l’écosystème CNCF ne nous aide pas beaucoup. Il y a beaucoup trop de solutions.
Chacune se réclame « cloud native ».
Chacune prétend être la meilleure.

On y trouve tout :

  • des solutions historiques,
  • des projets incubĂ©s ou rĂ©cemment créés,
  • des SaaS qui ne sont en fait que des wrappers sur des outils open source bien connus.

Et surtout : des solutions qui se superposent, voire se cannibalisent.

Parmi ce bruit de fond technologique, certaines briques ont réussi à s’imposer.

SolutionRĂ´le
PrometheusCollecte de métriques, format standard, scrapping efficace
ElasticSearchMoteur analytique performant pour les logs
GrafanaVisualisation centralisée (métriques, logs, traces)

💡 Ces trois-là composent une stack cohérente : chacun couvre un pan de l’observabilité, et tout s’intègre nativement avec Kubernetes

Tout ce qui commence par “Open” n’est pas forcément un gage de pérennité ou de pertinence.

Quelques exemples concrets :

  • OpenMetrics : spin-off de Prometheus, censĂ© amĂ©liorer le format… puis abandonnĂ© et rĂ©intĂ©grĂ© dans Prometheus
  • OpenTracing / OpenCensus : deux projets concurrents qui ont Ă©tĂ© supplantĂ©s par OpenTelemetry

Le problème n’est pas technique. Il est organisationnel et stratégique :

  • đź”´ Ces projets peuvent changer de direction
  • đź”´ Passer en modèle payant
  • đź”´ ĂŠtre abandonnĂ©s
  • đź”´ Ou simplement, ĂŞtre mal documentĂ©s et peu utilisĂ©s

Opérer un cluster, ce n’est pas juste installer un dashboard.

C’est maintenir la solution dans le temps, savoir la mettre à jour, la comprendre, l’intégrer, et surtout recruter autour d’elle.

Et aujourd’hui, tu trouveras beaucoup plus facilement un ingénieur capable de déployer Prometheus avec Grafana, qu’un profil spécialisé sur un fork confidentiel ou un outil propriétaire en perte de vitesse.

Quand on parle d’observabilité, on pense souvent stack technique, mais la vraie question est ailleurs :

Est-ce que tu veux maintenir ta propre stack, ou déléguer une partie du run pour te concentrer sur tes workloads ?

C’est là que le choix stratégique se pose

Et il n’y a pas une bonne réponse universelle, mais trois approches réalistes, chacune avec ses bénéfices et ses contraintes.

C’est l’option qu’on sous-estime souvent, et pourtant…

Si ton organisation utilise déjà une solution comme Zabbix, Datadog, Splunk, ou même une stack Grafana branchée à une base legacy (ou à Prometheus), il n’est pas obligatoire de tout jeter.

🌟 L’observabilité cloud-native, ce n’est pas forcément un outil.
C’est la capacité à exposer des signaux standards (logs, métriques, traces) depuis un cluster. Et ça, la plupart des outils savent déjà le faire.

✅ Garder sa stack, c’est :

  • ZĂ©ro formation Ă  prĂ©voir
  • Aucun changement dans les alertes ou dashboards
  • Un ROI immĂ©diat, car tout est dĂ©jĂ  en place dans les Ă©quipes
  • Et souvent… moins de friction dans l’ITSM ou les Ă©quipes sĂ©curitĂ©

💬 Exemple typique : tu utilises déjà Grafana avec Zabbix ou FreeMonitoring sur des workloads legacy ? Tu peux très bien exposer les métriques Kubernetes via Prometheus et les faire ingérer par la même instance Grafana. Pas besoin de multiplier les plateformes.

📌 Ce scénario est appelé “Bring Your Own Monitoring” dans la documentation AKS

Si tu veux aller vite, avoir une intégration native avec Azure, pas de stack à maintenir, pas d’alertmanager à configurer, alors l’écosystème Azure Monitor est une option très solide.

🔹 Tu as :

  • Container Insights pour les logs et les mĂ©triques des pods/nĹ“uds
  • Azure Monitor workspace avec Prometheus en service managĂ© (100% compatible PromQL)
  • Azure Managed Grafana avec Single Sign-On Entra ID et team sync automatique

Tout est intégré, sécurisé, maintenu. Tu ne gères que tes dashboards.

👉 C’est le choix recommandé par Microsoft pour les équipes qui veulent se concentrer sur le métier, et non sur la maintenance d’une stack technique

Tu veux la main complète ? Tu veux savoir exactement comment sont collectées les métriques, où sont stockés les logs, et comment fonctionne l’alerting ?
Alors tu peux construire ta propre stack Prometheus + Grafana + Loki avec OpenTelemetry comme socle de collecte.

📦 Cette approche, appelée self-managed, est aujourd’hui celle choisie par des équipes exigeantes sur la souveraineté, le coût, ou la flexibilité.

Typiquement, tu déploies :

  • kube-prometheus-stack (Helm) pour Prometheus, AlertManager, node-exporter…
  • loki-stack pour les logs applicatifs
  • Grafana OSS en interface unifiĂ©e
  • OpenTelemetry Collector comme agent de collecte

✅ Tu maîtrises tout.
⚠️ Tu gères tout.
🎯 Et tu dois prévoir une vraie stratégie de mise à jour, de haute disponibilité, d’alerting et de rétention

Un point que beaucoup découvrent (trop) tard :

Deux solutions de monitoring, c’est deux visions différentes du même problème.

Et dans Kubernetes, où tout est découplé (pods, services, bases, queues…), tu as besoin d’une seule vérité d’état, pas d’un puzzle incomplet.

Avoir Grafana ici, Datadog lĂ , et Logs Analytics entre les deux ?
C’est le meilleur moyen de ne jamais comprendre un incident de bout en bout.

Changer de stack, ce n’est pas que technique.
C’est aussi :

  • Former tes Ă©quipes
  • Réécrire tes dashboards
  • Changer la façon dont tu alertes, ou escalades
  • Briser l’automatisme de lecture des incidents

Et ça, c’est un coût


3. OUTILLAGE OPERATIONNEL

Dans le monde Kubernetes, on aime souvent dire que tout passe par des YAML et du CLI.
Mais au quotidien, ce n’est pas toujours la CLI qui sauve.

Entre besoins différents selon les rôles (Ops, Dev, Data, Sec), contraintes d’authentification, et ergonomie, on a besoin d’une boîte à outils cohérente, réaliste, et maintenable.

Et là encore, mieux vaut un outillage bien maîtrisé qu’une armée d’outils mal intégrés.

kubectl, c’est la CLI de référence pour interagir avec Kubernetes.
Open source, multi-plateforme, préinstallée dans Azure Cloud Shell, et facile à mettre à jour via :

az aks install-cli

Mais kubectl, c’est aussi :

  • Un outil très extensible, via krew, le gestionnaire officiel de plugins Kubernetes
  • Et donc une boĂ®te Ă  outils dans l’outil

👉 Quelques plugins incontournables à intégrer dès le départ :

PluginUtilité
ctxBasculer rapidement entre clusters et namespaces
rolesumVisualiser les rôles RBAC appliqués à ton compte
df-pvVoir l’utilisation des volumes persistants
deprecationIdentifier les objets obsolètes dans tes manifests

Ces plugins te permettent d’anticiper les cassures lors des mises à jour K8s, où certaines APIs disparaissent

VSCode est devenu un véritable hub d’administration Kubernetes quand on y ajoute les bonnes extensions.

Fonctionnalités clés :

  • DevContainers : environnement d’exĂ©cution Linux isolĂ© par projet (via .devcontainer)
  • WSL : support natif des devs sur Windows avec sous-système Linux
  • Extensions AKS & Azure Pipelines : intĂ©gration directe avec Azure, dĂ©ploiements, logs, context switch…

💬 Et dans les projets où tout le monde utilise des OS différents (Windows/Mac/Linux), les DevContainers garantissent une consistance locale et une vraie portabilité.

Si tu préfères le prompt à l’interface web, K9s est une perle.

  • Interface TUI (terminal UI)
  • Navigation intuitive dans les ressources (pods, deployments, logs, etc.)
  • Entièrement open source

Tu peux presque tout faire avec, et c’est plus rapide que le portail Azure, surtout dans un environnement prod

Le portail Azure est parfois tentant pour “juste jeter un œil”.
Mais il est très vite limité, surtout dès que :

  • ton cluster est privĂ© (VNet intĂ©grĂ©)
  • ou que tu veux aller plus loin qu’un simple describe

⚠️ Tu n’as pas la main sur le kubectl, tu passes par l’API publique de Microsoft.
Donc pas d’accès aux clusters privés, et l’exécution de commandes (Run command) est très lente voire inutilisable en exploitation réelle.

En gros, utile pour de la lecture, des captures d’écran, ou de la formation… mais pas pour un run quotidien.

Lens, ou sa version libre OpenLens, c’est un kubectl avec interface graphique.
Ultra-pratique pour les profils moins à l’aise avec la ligne de commande.

Mais…

⚠️ L’authentification via Azure Entra ID n’est pas supportée nativement dans la version gratuite, ce qui pose problème dans un environnement sécurisé Azure.

Conclusion : utile en lab ou en dev, mais limité en production avec Azure AKS privé.

Popeye 🟢

Un linter pour Kubernetes, qui détecte les mauvaises pratiques dans tes clusters.

  • Analyse les ressources dĂ©ployĂ©es : pods, services, secrets, etc.
  • Repère les containers en crashloop, les ressources orphelines, les images non taggĂ©es…
  • RĂ©sultats clairs, utilisable en CLI ou CI

💬 Parfait pour faire un état de santé rapide d’un cluster, ou avant une mise à jour majeure.

Pour lire les logs de plusieurs pods en simultané, avec filtrage par label/namespace.

  • IdĂ©al quand tu dĂ©bugs un microservice rĂ©parti sur plusieurs pods
  • S’utilise comme un tail -f intelligent pour Kubernetes

💬 Une vraie valeur ajoutée en debug, surtout quand kubectl logs ne suffit plus.

Depuis que Docker Desktop est passé en modèle commercial (limité à 250 employés ou 10M€ CA), Rancher Desktop est l’alternative open source la plus fiable.

  • Utilise Moby, le moteur container open source
  • Compatible avec tous les workflows Docker
  • Gratuit et maintenu par SUSE

Rancher, c’est aussi une plateforme de gestion multi-cluster Kubernetes.

  • Interface graphique complète
  • RĂ©fĂ©rencement de clusters existants (Azure, GCP, on-prem…)
  • Provisioning de nouveaux clusters via une surcouche Ă  kubeadm
  • Authentification, RBAC, catalogues d’applications, etc.

Et surtout : une stack de supervision clé en main intégrée :

  • Prometheus
  • AlertManager
  • Grafana
    … le tout intégré dans une solution appelée Prometheus Federator

👉 C’est un vrai hub de supervision multi-cluster, sans avoir à tout reconstruire à la main

⚠️ Attention :
Rancher Server est lui-même un cluster Kubernetes, avec tous les composants de gestion et de monitoring hébergés dedans
➡️ Si tu perds ce cluster sans stratégie de sauvegarde claire, tu perds l’accès :
– Ă  tes dashboards Grafana
– Ă  tes règles d’alerting Prometheus
– Ă  ta configuration de supervision

PROCHAIN ARTICLE

Tu as maintenant une boîte à outils claire, pensée pour le terrain, et capable de sécuriser l’exploitation au quotidien.
Mais un bon outillage ne fait pas tout.

Il faut aussi comprendre ce qu’il se passe dans le cluster, savoir réagir vite, et surtout, garder le cap entre ce que tu déploies… et ce qui tourne réellement.

Dans la Partie 2, on aborde les sujets qui font la différence en production :

  • 🟢L’observabilitĂ©, pour vraiment voir et corrĂ©ler
  • 🟢 Le GitOps, pour garder un environnement cohĂ©rent
  • 🟢 Et le choix stratĂ©gique : stack managĂ©e dans Azure ou stack open source Ă  la carte ?

Avec un seul objectif : garder la main, sans ajouter de complexité inutile


📎 Pour aller plus loin (docs Microsoft) :


🙏 Remerciements
Cet article prolonge des échanges issus de plusieurs workshops conduits par Benoît Sautierre, dont la vision et l’animation ont largement nourri les réflexions présentées ici. Expert engagé et passionné, il a su créer un cadre de réflexion stimulant, pour lequel je lui adresse mes plus vifs remerciements.