Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Gestion des drifts Terraform avec la méthode GitOps

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 47 Anzeige

Gestion des drifts Terraform avec la méthode GitOps

Herunterladen, um offline zu lesen

Terraform est l’outil d’infrastructure as Code qui s’est imposé sur le marché ces dernières années. Cependant, un des principaux manquements que nous pouvons lui reprocher, c’est l’absence de gestion proactive des drifts. Durant ce talk, nous verrons comment réussir à réconcilier l’état de l’infrastructure et le code Terraform qui la décrit grâce à la méthode GitOps.

Terraform est l’outil d’infrastructure as Code qui s’est imposé sur le marché ces dernières années. Cependant, un des principaux manquements que nous pouvons lui reprocher, c’est l’absence de gestion proactive des drifts. Durant ce talk, nous verrons comment réussir à réconcilier l’état de l’infrastructure et le code Terraform qui la décrit grâce à la méthode GitOps.

Anzeige
Anzeige

Weitere Verwandte Inhalte

Aktuellste (20)

Anzeige

Gestion des drifts Terraform avec la méthode GitOps

  1. 1. Gérer les drifts Terraform grâce à la méthode GitOps Katia HIMEUR DEVOPS D-DAY #7 Jeudi 1er décembre 2022 Orange Vélodrome, Marseille
  2. 2. $ whoami Katia HIMEUR - CTO & Cofondatrice - Dev & Ops depuis toujours - Cloud & DevOps aujourd’hui cockpitio.com @katia_tal #Cloud #Conteneurisation #IAC #GitOps #CICD #DevOps DEVOPS D-DAY 01/12/2022
  3. 3. Cockpit io Conseil, Build & Formation Cloud & Devops Adopter, transformer et optimiser Cloud & Techno agnostic Ce qui nous anime : le collectif, le partage, l’excellence, le mentorat cockpitio.com DEVOPS D-DAY 01/12/2022
  4. 4. On recrute https://www.cockpitio.com/join-us cockpitio.com DEVOPS D-DAY 01/12/2022
  5. 5. 5 Gestion de l’infrastructure
  6. 6. Avant automatisation Gestion de l’infrastructure via Ligne de commande Portail en ligne Scripts regroupant les commandes cockpitio.com DEVOPS D-DAY 01/12/2022
  7. 7. Limites La gestion complexe dès que : L’équipe grandit Des incidents se produisent Les besoins évoluent Les scripts s’alourdissent ... cockpitio.com DEVOPS D-DAY 01/12/2022
  8. 8. Naissance de l’infrastructure as code cockpitio.com Et si nous nous inspirions du monde du développement pour gérer nos scripts ? DEVOPS D-DAY 01/12/2022
  9. 9. Infrastructure as code
  10. 10. Qu’est-ce que l’infrastructure as code ? Suite logique de l’avènement du Cloud et du DevOps Application des bonnes pratiques du monde du développement à la gestion des infrastructures cockpitio.com DEVOPS D-DAY 01/12/2022
  11. 11. Avantages de l’infrastructure as code Versioning Code review Idempotence Réduction des risques d’erreur cockpitio.com Gain de temps Réutilisabilité Résilience Tests … DEVOPS D-DAY 01/12/2022
  12. 12. Terraform, un outil référence
  13. 13. Terraform, un outil référence Outil Open source Grande communauté cockpitio.com 2 500 providers 11 500 modules communaut aires Possibilité de créer ses propres modules et providers DEVOPS D-DAY 01/12/2022
  14. 14. Les apports de Terraform
  15. 15. Les apports de Terraform Création d’environnements ISO à la production Création d’environnements éphémères Automatisation de la gestion des infrastructures Bénéficier des outils de son écosystème : terratest, infracost, tfsec… cockpitio.com DEVOPS D-DAY 01/12/2022
  16. 16. Un workflow Terraform
  17. 17. Workflow Terraform cockpitio.com Init Validate Plan Apply DEVOPS D-DAY 01/12/2022
  18. 18. … mais
  19. 19. … mais … Ce modèle fonctionne sauf jusqu’à l’apparition des drifts cockpitio.com DEVOPS D-DAY 01/12/2022
  20. 20. Drifts des ressources Terraform
  21. 21. Drifts des ressources Terraform Différences entre l’état désiré déclaré et l’état réel de la ressource Causées par : Des modifications manuelles Des effets de bord de l’exécution d’autres scripts Erreurs Subsistent entre deux « apply » Risques d’incidents et d’erreurs accrus cockpitio.com DEVOPS D-DAY 01/12/2022
  22. 22. Comment éviter les drifts ?
  23. 23. Gérer les drifts : Option 1 On ne fait rien, et on espère qu’il n’y ait pas de modifications cockpitio.com DEVOPS D-DAY 01/12/2022
  24. 24. Gérer les drifts : Option 2 Script maison Exécuté de manière programmée 2 workflows : gestion de l’infrastructure + Détection de drifts Risques d’erreurs et d’incidents accrus lors de l’exécution Processus de maintien et d’évolution complexe cockpitio.com DEVOPS D-DAY 01/12/2022
  25. 25. Quelle serait la solution idéale ?
  26. 26. Quelle serait la solution idéale ? Solution idéale : Outil autonome Gérant aussi bien la mise à jour des infrastructures que la détection des drifts Configurable Qui puisse réconcilier les états de l’infrastructure cockpitio.com DEVOPS D-DAY 01/12/2022
  27. 27. 27 Eureka : GitOps
  28. 28. Qu’est-ce que le GitOps ? Implémentation du déploiement continu d’applications et d’infrastructures cloud native Processus automatisé qui fait en sorte que l’environnement corresponde toujours à l’état désiré déclaré Le repository Git devient la source de vérité cockpitio.com DEVOPS D-DAY 01/12/2022
  29. 29. 29 Les avantages du GitOps pour l’IaC
  30. 30. Les avantages du GitOps pour l’IaC Workflow unique pour la gestion de l’infrastructure et la détection de drifts L’IaC se prête parfaitement à cette méthode Ecosystème riche autour du GitOps cockpitio.com DEVOPS D-DAY 01/12/2022
  31. 31. 31 Principaux outils GitOps
  32. 32. Principaux outils GitOps cockpitio.com DEVOPS D-DAY 01/12/2022
  33. 33. 33 L’outil qui nous intéresse
  34. 34. L’outil qui nous intéresse cockpitio.com DEVOPS D-DAY 01/12/2022
  35. 35. Flux Outil GitOps Développé par Weaveworks en 2014, open sourcé en 2016 CNCF cockpitio.com DEVOPS D-DAY 01/12/2022
  36. 36. TF-controller
  37. 37. TF-controller Aussi appelé Weave GitOps Terraform Controller Contrôleur Flux qui réconcilie les ressources Terraform grâce à la méthode GitOps Weaveworks, société à l’origine de Flux « GitOpsifier » l’infrastructure grâce à Kubernetes et Terraform cockpitio.com DEVOPS D-DAY 01/12/2022
  38. 38. Plusieurs modèles GitOps possibles
  39. 39. Plusieurs modèles GitOps possibles cockpitio.com Complet Du provisionning à la détection des drifts Hybride Gestion d’une partie de l'infrastructure Application du fichier d'état Sauvegarde de l'état des ressources Détection de drifts Détection sans modification DEVOPS D-DAY 01/12/2022
  40. 40. Fonctionnalités
  41. 41. Fonctionnalités Multi-tenancy : fonctionnalité native à Flux Détection de drifts en read-only Possibilité de validation manuelle Possibilité de spécifier des dépendances cockpitio.com DEVOPS D-DAY 01/12/2022
  42. 42. Comment fonctionne le contrôleur ?
  43. 43. Comment fonctionne le contrôleur ? 1. Le contrôleur performe un plan et un apply des spécifications Terraform 2. Les ressources gérées sont écrites dans un fichier TFSTATE 3. Ce fichier est stocké dans un secret Kubernetes 4. À intervalles réguliers définis, le contrôleur contrôle les drifts 5. Si drifts, un apply est exécuté. cockpitio.com Cas modèle automatisation complète DEVOPS D-DAY 01/12/2022
  44. 44. Démonstration
  45. 45. Démonstration Prérequis Kubernetes Flux TF-Controller cockpitio.com DEVOPS D-DAY 01/12/2022
  46. 46. Questions ?
  47. 47. Merci !

×