4 points par ironlung 2023-11-06 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Lors de la mise en place d’une infrastructure dans le cloud, il est préférable d’utiliser un outil d’IaC plutôt que de la construire via une console web, afin de prendre en compte la réduction des coûts, l’amélioration de la vitesse de déploiement, la cohérence, la stabilité et la réutilisabilité
  • Terraform est open source et c’est l’outil d’IaC le plus utilisé
  • Pour écrire du code Terraform de manière efficace et pertinente, il est important d’utiliser correctement les fonctionnalités fournies par Terraform
  • Boucles Terraform
    • Les langages déclaratifs classiques n’ont généralement pas de boucles, mais Terraform prend en charge diverses fonctions permettant d’en utiliser
    • Les principales boucles utilisées sont : count, for_each
      • Paramètre count : répétition des ressources et des modules
      • Expression for_each : répétition des ressources, des blocs inline à l’intérieur des ressources et des modules
    • Comment utiliser chaque boucle
      • count : permet de créer rapidement et simplement des ressources lorsque celles à générer sont presque identiques et ne changent pas
      • for_each : permet de créer et modifier de façon sûre des ressources avec des noms uniques, contenant des données, ou qui ne doivent pas être recréées
  • Count
    • Le paramètre count accepte un entier et répète une ressource entière ou un module pour les créer
    • Avec une configuration basée sur count, on peut utiliser count.index pour accéder à l’index créé par count
    • Limitations de count
      • count répète l’ensemble de la ressource, mais ne répète pas les blocs inline à l’intérieur de la ressource
      • Si l’on supprime une valeur intermédiaire parmi les ressources créées avec count, toutes les valeurs suivantes sont supprimées puis recréées. Le résultat final est identique, mais cela peut poser problème pour des ressources qui ne doivent pas être recréées
  • For_each
    • L’expression for_each itère sur une list, un set ou une map pour répéter une ressource entière, des blocs inline dans une ressource, ou un module
    • Avec une configuration basée sur for_each, on peut utiliser each.key et each.value pour accéder à la clé et à la valeur correspondantes
    • Lorsqu’on utilise for_each sur une ressource, les listes ne sont pas prises en charge
    • Dans la collection, on définit le set ou la map à parcourir, puis dans la configuration, each.value permet de récupérer la clé et la valeur définies dans la collection

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.