RousselTMLEARNING

TP · DevOps : de la découverte à l'expertise

TP : Rolling update, canary et retour arrière sur Kubernetes

Ce que vous allez apprendre dans ce TP
  • Configurer un rolling update sûr
  • Faire un déploiement canary
  • Revenir en arrière avec kubectl

Introduction #

Ce que vous allez apprendre dans cette section
  • Configurer un rolling update sûr
  • Faire un déploiement canary
  • Revenir en arrière avec kubectl

Contexte. L'équipe migre vers Kubernetes et veut des déploiements progressifs. Vous validez sur un cluster local le comportement des mises à jour et des retours arrière.

Prérequis : Docker, kubectl et kind installés sur votre poste  ·  Durée estimée : 50 min

Des déploiements progressifs maîtrisés et un retour arrière en une commande.

Mise en place #

Étapes guidées, avec leur correction.

  1. 1. Créer le cluster et déployer la v1

    Pourquoi ? maxUnavailable: 0 et une readiness probe garantissent qu'aucune requête n'atteint un pod non prêt.

    Créez un cluster kind et déployez 4 réplicas de hashicorp/http-echo affichant « v1 », avec une stratégie RollingUpdate prudente et une readiness probe, exposées par un Service.
  2. 2. Rolling update sans interruption

    Pourquoi ? On observe le remplacement des pods un par un pendant que le trafic continue.

    Lancez une boucle de requêtes depuis le pod client, puis passez à v2 avec une annotation de cause. Suivez le déploiement et l'historique.
  3. 3. Bloquer une version cassée

    Pourquoi ? Une image introuvable ou un pod qui ne devient jamais prêt arrête le rolling update : les anciens pods continuent de servir.

    Déployez une image inexistante, constatez que rollout status échoue après un délai et que le service répond toujours v2.
  4. 4. Revenir en arrière

    Pourquoi ? Kubernetes conserve les ReplicaSets précédents : le retour arrière est immédiat.

    Annulez la dernière révision, vérifiez que tous les pods sont prêts, puis revenez explicitement à la révision 1.
  5. 5. Déploiement canary

    Pourquoi ? Sans maillage de services, on approxime un canary en répartissant les réplicas derrière le même Service.

    Créez un Deployment web-canary (1 réplica, texte « v3-canary », label track: canary) partageant le label app: web. Mesurez la part de trafic reçue, puis promouvez ou supprimez le canary.

Niveau de difficulté : ●●●○○ (3/5)

Mon suivi

  • ⏱ Durée estimée : ≈ 50 min

Connectez-vous pour suivre votre progression et prendre des notes. Se connecter

✉️ Poser une question

Glossaire de la formation

DevOps

Culture, mouvement et pratiques visant à unifier le développement logiciel (Dev) et l'administration des infrastructures informatiques (Ops).Découvrir...

DevSecOps

Intégration native de la sécurité (Security) dès la conception et tout au long du cycle de vie DevOps (approche "Shift-Left").Voir comment intégrer la...

AIOps (Artificial Intelligence for IT Operations)

Utilisation de l'intelligence artificielle et de l'apprentissage automatique pour automatiser et améliorer les opérations informatiques (ex: détection...

NoOps

Concept où l'environnement informatique est tellement automatisé et abstrait (ex: Serverless, PaaS) qu'il ne nécessite quasiment plus d'équipe opérati...

GitOps

Pratique de déploiement continu où un dépôt Git sert de source unique de vérité déclarative pour l'infrastructure et les applications.Maîtriser le dép...

FinOps (Financial Operations)

Culture de responsabilité financière du Cloud visant à maximiser la valeur métier en optimisant les coûts. Elle permet une collaboration étroite entre...

SRE (Site Reliability Engineering)

Discipline qui applique les principes de l'ingénierie logicielle aux problématiques d'exploitation. Le but est de créer des systèmes hautement scalabl...

Platform Engineering

Discipline consistant à concevoir et construire des chaînes d'outils et des flux de travail permettant aux développeurs de gérer leur infrastructure e...

Articles recommandés

CI/CD de bout en bout (4/5) : stratégies de déploiement et retour arrière

Déployer sans interruption et sans risque : recreate, rolling update, blue/green, canary, feature...

Mur de la confusion

Le 'mur de la confusion' (ou 'wall of confusion') est une métaphore souvent utilisée dans le cont...

Soutien Logistique Intégré

Soutien Logistique Intégré (SLI) (L'Integrated Logistics Support (ILS) en anglais), est une appro...

Application 12 Facteurs

Un guide détaillé sur la méthodologie des 12 facteurs pour le développement d'applications modern...

Le framework CALMS : Les 5 piliers du DevOps

Découvrez le framework CALMS, le socle indispensable pour réussir votre transformation DevOps à t...

Bonnes pratiques DevOps : culture, CI/CD, infrastructure as code et mesure

Bonnes pratiques DevOps : culture et collaboration, intégration et livraison continues, trunk-bas...

Tests de charge avec Grafana k6 : pourquoi et quels types de tests

Pourquoi tester la performance avant la production, les types de tests (smoke, charge, stress, pi...

Écrire des scripts k6 : requêtes, vérifications, scénarios et exécuteurs

La structure d'un script k6 (init, setup, default, teardown), les requêtes HTTP, les checks, les ...

Seuils, métriques et résultats d'un test k6

Lire le résumé d'un test k6, comprendre les métriques intégrées (http_req_duration, http_req_fail...