Module Terraform
Un paquet réutilisable et paramétré de ressources Terraform — l'équivalent de la fonction pour l'infrastructure. Au lieu de copier partout la même configuration de ressource, on la définit une fois sous forme de module avec des entrées et des sorties, et on l'appelle avec des valeurs différentes.
Mécanique : un module regroupe des ressources apparentées (disons « un VPC complet avec sous-réseaux, tables de routage et passerelle ») derrière une interface claire : des variables d'entrée (région, taille, nom) et des sorties (les identifiants des ressources créées). On l'appelle une ou plusieurs fois avec des entrées différentes → DRY (« don't repeat yourself ») pour l'infrastructure. Bénéfices : standardisation (toutes les équipes créent leurs réseaux de la même manière durcie), réutilisation (dix environnements identiques à partir d'un seul module) et abstraction (l'appelant n'a pas besoin de connaître tous les détails). Écosystème : le Terraform Registry propose des milliers de modules communautaires prêts à l'emploi (pour AWS VPC, EKS, etc.). Contrepartie : la sur-abstraction (des hiérarchies de modules trop profondes) peut rendre le code difficile à suivre. Fondamental pour une IaC qui passe à l'échelle. À rapprocher de l'Infrastructure as Code et de la golden image.