DevOps·

Dialectique entre DevOps, CI/CD et le Cloud

Comprendre l'étroite relation entre le mouvement DevOps, les concepts du CI/CD et les technologies du Cloud
Dialectique entre DevOps, CI/CD et le Cloud

Introduction

DevOps, CI/CD et Cloud forment un triptyque indissociable dans les infrastructures modernes. Après avoir travaillé sur ces trois axes chez des dizaines de clients -- de la startup au groupe de défense -- voici mon analyse de leur synergie.

Où DevOps rencontre le Cloud

Le Cloud a rendu le DevOps accessible à tous. Avant, monter un environnement de test prenait des semaines (commande de serveurs, rack, câblage...). Aujourd'hui, un terraform apply suffit. J'ai travaillé avec tous les grands providers : AWS, Azure, GCP, OVH, Scaleway, et même Outscale pour les environnements SecNumCloud.

Chez une startup e-commerce, j'ai mis en place une AWS Organization avec 3 environnements (dev, staging, prod) séparés en comptes distincts. Terraform gère le tout. Le résultat : une isolation complète entre les environnements, avec une infrastructure reproductible d'un compte à l'autre.

La CI/CD, colonne vertébrale du DevOps

La CI/CD est le moteur qui fait tourner la machine DevOps. Mon pipeline type :

  1. CI (GitHub Actions) : lint, tests, build Docker, scan de sécurité
  2. CD (ArgoCD) : déploiement GitOps sur Kubernetes

Chez Padam Mobility, cette séparation CI/CD est propre : GitHub Actions ne touche jamais au cluster K8s, il se contente de pousser des images vers le registry. ArgoCD détecte les changements et déploie. Cette séparation de responsabilités est fondamentale pour la sécurité.

Les outils que j'utilise au quotidien

  • CI : GitHub Actions (principal), Jenkins (legacy), GitLab CI (quand le client est sur GitLab)
  • CD : ArgoCD (standard), Flux (alternative)
  • IaC : Terraform (infrastructure), Ansible (configuration)
  • Conteneurs : Docker (build), Kubernetes (orchestration), Helm (packaging)

Chez Coopengo, la migration de Helm v2 vers v3 a été un chantier important mais nécessaire. La dette technique sur les outils CI/CD, c'est comme la dette technique sur le code : elle s'accumule et finit par coûter cher.

Docker et Kubernetes : le standard de fait

Docker a standardisé le packaging des applications. Kubernetes a standardisé leur déploiement. Chez Metronome, j'ai monté un cluster Kubernetes from scratch sur OVH avec Terraform et Helm. L'application, qui tournait sur des VM gérées manuellement, a été conteneurisée et déployée sur K8s en 3 semaines. Le gain : des déploiements automatisés, du monitoring natif avec Prometheus/Grafana, et une scalabilité horizontale.

Les modèles Cloud : choisir le bon niveau d'abstraction

Mon retour d'expérience sur les différents modèles :

  • IaaS (EC2, Compute Engine) : maximum de contrôle, mais plus de maintenance
  • CaaS (EKS, GKE, AKS) : le sweet spot pour la plupart des projets
  • Serverless (Fargate, Cloud Run) : idéal pour les workloads event-driven

Chez un éditeur de logiciels, j'ai choisi EKS Fargate pour ne pas gérer les nodes. Le coût est légèrement supérieur, mais l'overhead opérationnel est quasi nul.

Conclusion

DevOps, CI/CD et Cloud ne sont pas des concepts indépendants : ils forment un écosystème cohérent. La clé du succès : choisir les bons outils pour votre contexte, automatiser progressivement, et investir dans l'observabilité. C'est cette combinaison qui permet de livrer vite, bien et en toute confiance.



RDV