Détection et remédiation du drift Terraform

Le drift Terraform crée des risques silencieux dans votre environnement de production. Cela se produit lorsque votre infrastructure réelle ne correspond plus à votre code.

Ce décalage provoque des interruptions de service. Il crée des failles de sécurité. Il entraîne des échecs de conformité.

Pourquoi le drift se produit-il ?

  • Les ingénieurs effectuent des correctifs d'urgence (hotfixes) dans la console cloud.
  • Les équipes effectuent des modifications manuelles lors d'un incident.
  • Des utilisateurs créent des ressources en dehors de votre flux de travail IaC.
  • La rapidité dépasse vos règles de gouvernance.

Exemple : Votre code définit une instance EC2 en tant que t2.micro. Un ingénieur la modifie manuellement en t2.large dans la console AWS. Votre code et votre réalité sont désormais différents. C'est cela, le drift.

Comment le détecter : Exécutez la commande terraform plan. Cela vous montre l'écart entre votre code et le cloud. Notez que certaines modifications manuelles peuvent rester cachées si elles n'affectent pas les ressources spécifiques suivies par Terraform.

Comment l'empêcher :

  • Utilisez un backend distant. Stockez votre état dans AWS S3. Cela permet de garder votre fichier d'état en sécurité et versionné pour toute votre équipe.
  • Utilisez GitOps. Faites de Git votre source unique de vérité. Chaque modification doit passer par une pull request.
  • Automatisez les tests. Vérifiez vos modifications d'infrastructure avant leur mise en production.
  • Surveillez en permanence. Utilisez des outils comme AWS Config ou Spacelift pour vous alerter lorsque des modifications surviennent en dehors de votre code.

Comment le corriger : Si vous constatez un drift, vous devez ramener l'infrastructure à l'état défini dans votre code. Utilisez la commande terraform apply pour écraser les modifications manuelles et restaurer l'état souhaité.

La cohérence garantit la stabilité de vos systèmes.

Source: https://dev.to/vprachi360/terraform-drift-detection-and-remediation-tactics-29bm

Optional learning community: https://t.me/GyaanSetuAi