Módulo Terraform
Um pacote reutilizável e parametrizado de recursos Terraform — o equivalente da infraestrutura a uma função. Em vez de copiar a mesma configuração de recurso em todo lugar, você a define uma vez como módulo, com entradas e saídas, e o chama com valores diferentes.
Mecânica: um módulo agrupa recursos relacionados (digamos, "uma VPC completa com subnets, tabelas de rota e um gateway") atrás de uma interface clara: variáveis de entrada (região, tamanho, nome) e saídas (os IDs dos recursos criados). Ele é chamado uma ou várias vezes com entradas diferentes → DRY ("don't repeat yourself") para infraestrutura. Ganhos: padronização (todos os times criam redes do mesmo jeito, já com hardening), reuso (criar dez ambientes idênticos a partir de um módulo) e abstração (quem chama não precisa conhecer todos os detalhes). Ecossistema: o Terraform Registry tem milhares de módulos prontos da comunidade (para VPC da AWS, EKS etc.). Contrapartida: abstração em excesso (hierarquias de módulos profundas demais) pode tornar o código difícil de acompanhar. Fundamental para IaC escalável. Relaciona-se com Infrastructure as Code e golden image.