This HashiCorp Learn tutorial will teach you about our recommended enterprise patterns for modules so that you can apply them to your organization’s workflows.
HashiCorp Terraform modules are pre-built configurations of infrastructure as code. By organizing your infrastructure into modules, your team can reuse them in future configurations which can save time and reduce costly errors. While there are many ways to design modules, there are coding best practices you should adhere to whenever possible, such as clear organization and the DRY ("Don't Repeat Yourself") principle.
In the first tutorial for our Recommended Enterprise Patterns for Terraform collection, Module Creation - Recommended Pattern, you will learn the architectural recommendations for module creation. This tutorial discusses principles for writing composable, shareable, and reusable infrastructure modules, distilled from our engagements with large enterprises using Terraform. These architectural recommendations can be helpful to enterprises using any edition of Terraform, including open source.
The tutorial also includes a scoping exercise where you’ll learn how to break the following architecture down into Terraform modules.
By the end of this tutorial, you will be familiar with our recommended enterprise patterns for modules and be able to apply them to your organization’s workflows.
To learn more about Terraform modules, refer to the Terraform Modules documentation. For step-by-step tutorials on using and creating Terraform modules, refer to the Reuse Configuration with Modules tutorials on HashiCorp Learn.
Learn how to use best practices-based modules to build production-grade Terraform deployments on AWS.
Learn a quick method for getting started with the Cloud Development Kit (CDK) for Terraform using TypeScript as infrastructure code and provisioning on Microsoft Azure.
The Terraform AWS Provider now offers users the ability to define default tags at the provider level, simplifying tag management.