Déploiement continu
1) Qu'est-ce qu'un CD et en quoi il diffère de CI/CD
Le déploiement continu (CD) est une pratique qui consiste à retirer automatiquement chaque modification de prod vérifiée, sans trains de sortie manuels. Les CD se distinguent des CI (assemblages automatiques et tests sur commande) en ce qu'ils complètent la chaîne : code → artefact → vérification → production. Dans les industries réglementées, les CD sont souvent combinés avec la livraison progressive (sortie progressive avec limitation de l'audience).
Objectifs du CD :- Réduire le Time-to-Market et le coût du changement.
- Réduire le risque de grandes sorties : les petits lots sont → plus faciles à trouver et à faire tomber.
- Imposer une discipline de qualité : « chaque commit est potentiellement commercial ».
2) Principes de base
Petits incréments. Branches de fiche courtes, rhubarbe rapide, murjing agressif.
Déterminisme de l'assemblage. Environnements de bulles reproductibles, fichiers lock, constructions hermétiques.
Shift-left-qualité. Linters, analyse statique, tests unitaires/contractuels avant intégration.
Production-j'aime l'environnement. Des configues identiques, des secrets à travers vault, des données synthétiques/impersonnelles.
Automatiser tout le chemin. Du commit au routage du trafic et au retour.
L'observabilité par défaut. Métriques, logs, traces, alertes - dans le cadre de Definition of Done.
Security-by-design. SAST/DAST, SCA, artefacts signés, vérification des politiques.
3) Architecture Pipline de référence CD
1. Trigger : événement en VCS (push/merge) marqué « prod-eligible ».
2. Build : assemblage d'un artefact (image, paquet), SBOM, signature (Sigstore/Cosign).
3. Test Fast : lint/unit/contrat ; feedback rapide (<5-10 min).
4. Test Deep (parallèle) : intégration, E2E, charge « par profil », échantillons de chaos dans le steadge.
5. Porte de sécurité : SAST/DAST/SCA, vérification des secrets, vérification des politiques (OPA/Conftest/Kiverno).
6. Gate de conformité : SoD/4-yeux si nécessaire, traçabilité des exigences, feuilles de contrôle.
7. Promotion : promotion de l'artefact comme le même billet à travers les médias (dev → stage → prod).
8. Deploy Strategy: blue-green / canary / progressive + feature flags.
9. Vérification post-déploiement : auto-santé, SLO/SLA, alertes, auto-rollback en cas de dégradation.
10. Audit & Evidence : artefacts, logs, protocoles de vérification - dans un coffre-fort immuable.
4) Stratégies de libération
Bleu-Vert : deux stands (Bleu = courant, Vert = nouveau), commutation de routage atomique. En plus, c'est un retour instantané. Le moins est une double infrastructure.
Canary : mise en service du trafic (1 % → 5 % → 25 % → 100 %) avec des gages SLO automatiques.
Livraison progressive : cohortes cibles (région, fournisseur, segment VIP), limite de rayon d'impact.
Feature Flags : fournir le code « off », activer par utilisateur/cohorte. Obligatoire : politique « flag lifecycle ».
5) Test et qualité
Tests contractuels et contrats de consommation pour les versions indépendantes de microservices.
Profils de charge par modèles réels (RPS, p95/p99, modèles ouverts/fermés).
Tests de migration OBD : direct/réversible, compatibilité des deux versions (expand → contract).
L'échantillon Chaos/Resilience : Désactivation des dépendances, retards réseau, limites de ressources.
Contrôle post-tir (smoke + synthétique) à partir de points proches de l'utilisateur.
6) Sécurité et conformité en CD
Signature des artefacts, provenance, SBOM. Nous surveillons l'origine, excluons les risques « supply chain ».
Policy-as-Code : nous n'admettons que les images du registre de confiance, avec scan-passage.
Secrets : jetons courts, clés rotatives, KMS ; l'interdiction des secrets dans le gîte.
Partage des responsabilités (SoD) : élaboration ≠ accès ; toutes les opérations se font par pipline.
Piste d'audit : Logs de libération immuables, qui/quoi/quand ; stockage N ans par la réglementation.
7) Gestion du changement et contrôle des risques
Types de changement : standard (entièrement automatique), normal (auto + approbation), d'urgence (fenêtre accélérée + post-mortem).
L'ACR-minimalisme : L'ACR pour les risques modifiés et les updates « cassantes » d'infrastructure, le reste est par des gats automatiques de qualité.
Risk Matrix : impact × probabilité → choix de stratégie (canary plus profond, drapeaux, surveillance supplémentaire).
Runbooks & Playbooks : instructions claires pour chaque type de sortie et de retour.
8) Observabilité, SLO et auto-rollback
Signaux en or : latence, erreurs, saturation, trafic ; mesures commerciales (conversion, dépôt, succès des paiements).
Guardrails : si p95> seuil, error rate↑, business - metrika↓ - auto-stop/reculs.
Release Dashboards : widgets : versiya→metriki→flagi→kanareyechnyye part du trafic.
Alert : niveaux de réduction du bruit, rotation sur appel, communication avec la gestion des incidents.
9) CD métriques
Les métriques DORA : taux de déchargements, temps de lecture pour les changements, MTTR, proportion de sorties ratées.
Change-failure-rate sur les cohortes (par fournisseur, région, appareil).
Temps de passage des gates : où sont les « goulots d'étranglement » (scan de sécurité, tests d'intégration).
Cost-to-Release : coût d'une minute de fenêtre, marge d'infrastructure des stratégies (bleu-vert vs canary).
10) Patterns de retour et compatibilité
Auto-rollback : au niveau du routage (traffic switch) et/ou du versioning (K8s rollout undo).
Migration OBD : stratégie expand-migrate-contract, les drapeaux ficha cachent les champs inaccessibles.
Idempotency & Exactly-once-like : pour les files d'attente/paiements - clés d'idempotentialité, déduplication.
Back-pressure et graceful degradation : en cas de dégradation, désactiver les fiches non fonctionnelles.
11) Modèle pratique des environnements
Approche GitOps : l'état cible est stocké dans un gîte, le contrôleur applique des manifestes.
Environnements : "dev" (rapide et sale), "stage" (prod-like, chaos-échantillons), "prod-A/B" (bleu-vert) ou "prod'avec pools canaris.
Isolation des données : configis comme données, secrets en dehors de l'image, comptes individuels/limites.
12) Processus et rôles
RACI : Architecte (politiques), Équipe de plateforme (pipline, clusters), Commandes de produits (tests/drapeaux), Sécurité (politiques/scans), SRE (SLO/fiabilité).
ChatOps : sorties de bots PR, visibilité des statuts, « /promote », « /rollback ».
SOP : checklists de sortie, post-release review, contrôle « aging » des drapeaux.
13) Caractéristiques pour les domaines hautement réglementés (par exemple, iGaming/fintech)
Traçabilité : trebovaniye→tiket→PR→bild→artefakt→sreda→log dans l'audit.
Géo-release : par pays/juridiction, avec une configuration de paiement locale/CUS.
Antifrod/risques-moteurs : Canaries-pools, surveillance false-positive/negative.
KYC/AML/jeu responsable : libérer les fiches via des drapeaux avec un contrôle obligatoire de l'exposition de l'utilisateur.
14) Anti-modèles fréquents
Étapes manuelles entre les étapes (« apporté l'artefact avec les mains »).
« Drapeaux gris » sans propriétaire ni durée de vie.
Un test général d'intégration « épais » au lieu de contrats.
Aucune migration OBD réversible.
Le scan de la sécurité après le dégel, pas avant.
15) Mini-chèque de préparation au CD
- L'article est déterministe ; l'artefact est signé ; il y a le SBOM.
- Tests contractuels et fictions pour les E2E.
- Security/Compliance-gates en tant que code ; les secrets sont à travers le vault.
- Observabilité : logs/métriques/tracks, dashboards de sortie, gates SLO.
- Stratégie de sortie : canary/blue-green + auto-rollback.
- Procédures de migration OBD (expand/contract).
- Feature flags avec la stratégie « créé → utilisé → supprimé ».
- RACI/Runbooks/ChatOps d'intégration.
16) Exemple de flux (script)
1. Merge dans 'main' déclenche le pipline.
2. Assemblage de conteneur, signature, SBOM.
3. Lint/unit/contrat → passé.
4. SAST/SCA/scan secret → « vert ».
5. Auto promo en stage : E2E + chaos + charge de profil.
6. Canary 1 % par prod, contrôle des erreurs/latence/métriques d'affaires.
7. Escalade jusqu'à 25 %/50 %/100 % avec des jeux verts.
8. Verrouillage automatique du drapeau « rollout-guard », enregistrement des artefacts d'audit.
9. Examen post-release, suppression des indicateurs temporaires.
17) Résultat
Le CD n'est pas un « bouton dépliant », mais une culture de petits changements sûrs et observables. Avec les bonnes politiques et l'automatisation, le CD réduit les risques, accélère la fourniture de valeur et rend les sorties routinières plutôt qu'un événement. Pour les systèmes hautement chargés et réglables, la clé du succès est la qualité stricte, le rollout progressif, les drapeaux de ficha, l'observabilité et la reproductibilité de chaque étape.