Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.
  • Labs icon Lab
  • A Cloud Guru
Google Cloud Platform icon

Create a Custom Terraform Module

Hey there, Gurus! Welcome to the lab! This lab will demonstrate how to create a custom module, and then call that module with a root module in your main configuration. This will allow you to share a piece of configuration with multiple infrastructure projects. We will first set up our child module, which will configure an EC2 instance. We will then add a module block that will call our child module in our main configuration. So let's get started creating a custom module!

Google Cloud Platform icon

Path Info

Clock icon Intermediate
Clock icon 30m
Clock icon Jan 26, 2022

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Create a Custom Module

    1. In the terminal, once logged in to your instance, change to the Use_Modules directory.
    2. In the Use_Modules directory, edit the modules/ec2/ file and add in your ami and subnet_id from the resource_ids.txt file.
    3. In the Use_Modules directory, edit the file and add the following:
      module "ec2-module" {
        source = "./modules/ec2/"
    4. Examine the configuration files in both the Use_Modules and Use_Modules/modules/ec2/ directories.
    5. Initialize your working directory.
    6. Deploy your resources.
  2. Challenge

    Confirm Your EC2 Instance Has Been Created

    1. Check your outputs to confirm your instance was deployed.
    2. Check the lab-provided AWS console or use the AWS CLI to confirm your EC2 instance was created.

The Cloud Content team comprises subject matter experts hyper focused on services offered by the leading cloud vendors (AWS, GCP, and Azure), as well as cloud-related technologies such as Linux and DevOps. The team is thrilled to share their knowledge to help you build modern tech solutions from the ground up, secure and optimize your environments, and so much more!

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.

Start learning by doing today

View Plans