Les 3 voies du DevOps
Le DevOps repose sur trois principes fondamentaux décrits par Gene Kim dans The Phoenix Project :
1. Flow (accélérer le flux)
Optimiser le flux de travail de gauche a droite — du développement à la production.
- Réduire la taille des lots : petits changements, déployés fréquemment
- Limiter le travail en cours (WIP) : éviter le multitâche excessif
- Éliminer les goulots d'étranglement : automatiser les processus manuels
- Rendre le travail visible : tableaux Kanban, métriques de flux
2. Feedback (amplifier les boucles de retour)
Créer des boucles de feedback rapides de droite à gauche.
- Monitoring en production : détecter les problèmes avant les utilisateurs
- Tests automatisés : feedback immédiat sur la qualité du code
- Alerting intelligent : notifier les bonnes personnes au bon moment
- Post-mortems blameless : apprendre des incidents sans pointer du doigt
3. Apprentissage continu
Cultiver une culture d'expérimentation et d'amélioration.
- Expérimentation : tester des hypothèses avec des feature flags
- Prise de risque calculée : échouer vite, apprendre vite
- Partage de connaissances : documentation, pair programming, tech talks
- Amélioration continue : rétrospectives régulières, kaizen
CALMS — Les piliers DevOps
| Pilier | Description |
|---|---|
| Culture | Collaboration entre Dev et Ops, responsabilité partagée |
| Automatisation | CI/CD, IaC, tests automatisés, monitoring |
| Lean | Éliminer le gaspillage, flux continu, small batches |
| Mesure | Métriques DORA, SLI/SLO, lead time, MTTR |
| Sharing | Partage de connaissances, transparence, blameless culture |
Métriques DORA
Les 4 métriques clés pour mesurer la performance DevOps :
| Métrique | Elite | High | Medium | Low |
|---|---|---|---|---|
| Deployment Frequency | À la demande | 1/jour - 1/semaine | 1/semaine - 1/mois | 1/mois - 6/mois |
| Lead Time for Changes | < 1 heure | 1 jour - 1 semaine | 1 semaine - 1 mois | 1 - 6 mois |
| Change Failure Rate | 0-15% | 16-30% | 16-30% | 46-60% |
| MTTR | < 1 heure | < 1 jour | < 1 jour | 1 semaine - 1 mois |
Anti-patterns à éviter
- Silos : équipes Dev et Ops isolées, blame culture
- Snowflake servers : serveurs configurés manuellement, non reproductibles
- Change Advisory Board comme goulot : approbations manuelles pour chaque déploiement
- Heroics : dépendance à des individus pour résoudre les incidents
- Déploiements Big Bang : tout déployer en une fois au lieu de livraisons incrémentales
You build it, you run it
Le principe fondamental d'Amazon : l'équipe qui construit un service est aussi responsable de son fonctionnement en production. Cela encourage :
- La qualité du code (vous serez réveillé si ça casse)
- L'empathie pour les opérations
- Des boucles de feedback directes
- L'ownership bout en bout