Module 5 · Mise en situation¶
Objectifs
- Mobiliser tout ce qui précède sur un cas concret, en autonomie.
- Adopter une méthode de déploiement et de debug reproductible.
- Durée : ~3 h · Pré-requis : Modules 1 à 4.
Projet fil rouge — « Déployer & exploiter une appli »¶
Tu vas déployer une petite application (frontend + backend + base) sur un cluster, l'exposer, la configurer, et survivre à quelques pannes — le tout piloté depuis k9s.
Étape 1 — Déploiement¶
- [ ] Crée un namespace
app. - [ ] Déploie un backend (ex:
hashicorp/http-echoou une API simple) + un frontend (nginx). - [ ] Branche la config via ConfigMap et un Secret.
- [ ] Vérifie chaque objet dans k9s (
:deploy,:cm,:secret,:po).
Étape 2 — Exposition¶
- [ ] Crée des Services
ClusterIPpour chaque composant. - [ ] Ajoute un Ingress (ou un Service
LoadBalancersi tu es sur EKS). - [ ] Vérifie le chemin navigateur → Ingress → Service → Pod.
Étape 3 — Résilience & ressources¶
- [ ] Ajoute
requests/limitsà chaque deployment. - [ ] Ajoute des probes (
liveness,readiness). - [ ] Scale le frontend à 3 réplicas, observe la répartition dans k9s.
Étape 4 — Pannes surprises (le mentor en déclenche)¶
Le mentor casse quelque chose pendant que tu as le dos tourné. À toi de diagnostiquer uniquement avec k9s :
- [ ] Un pod en
CrashLoopBackOff→ trouve la cause dans les logs. - [ ] Un Service qui ne répond plus → vérifie les endpoints / labels.
- [ ] Un déploiement bloqué →
describe+ rollout undo. - [ ] Un pod
Pending→ ressources / quota.
Étape 5 — Nettoyage¶
- [ ] Supprime proprement (namespace, et cluster EKS si applicable).
- [ ] Rédige un mini post-mortem : quelles pannes, comment trouvées, en combien de temps.
Grille d'auto-évaluation¶
| Compétence | 🟥 Non acquis | 🟧 En cours | 🟩 Acquis |
|---|---|---|---|
| Naviguer dans k9s sans hésiter | |||
| Debug describe → events → logs | |||
| Déployer + exposer une app | |||
| RBAC / ressources / Helm | |||
| Provisionner & détruire un EKS | |||
| Diagnostiquer une panne en autonomie |
Pour aller plus loin (bonus)¶
- GitOps : déployer via ArgoCD (comme l'infra de Timothé).
- Observabilité : Prometheus + Grafana, lire les métriques dans k9s (
:pulses). - Sécurité :
popeyepour auditer un cluster, NetworkPolicies. - CI/CD : build d'image multi-arch + déploiement automatique.
🎉 Bravo ! À ce stade tu pilotes un cluster au k9s, tu debugges en autonomie, et tu sais monter/détruire un cluster managé. La fiche de suivi peut être finalisée.