VOOZH about

URL: https://www.coursera.org/learn/packt-hashicorp-terraform-introduction-to-infrastructure-as-code-zqtlt

⇱ Hashicorp Terraform – Introduction to Infrastructure as Code | Coursera


Hashicorp Terraform – Introduction to Infrastructure as Code

Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Hashicorp Terraform – Introduction to Infrastructure as Code

Included with

Ask Coursera

Gain insight into a topic and learn the fundamentals.
Beginner level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
Beginner level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Master the core components and workflows of Terraform for managing cloud infrastructure.

  • Gain hands-on experience with Terraform and OpenTofu, from installation to deployment.

  • Learn best practices for structuring, maintaining, and writing reusable Terraform code.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

May 2026

Assessments

14 assignments

Taught in English

There are 13 modules in this course

This course features Coursera Coach!

A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Dive into the world of Infrastructure as Code (IaC) with Terraform, a powerful tool for automating infrastructure management. This course takes you step by step through key concepts such as Terraform's core components, its workflow, and how to efficiently manage and scale cloud resources. You'll learn not just the technical aspects, but also the best practices for writing, maintaining, and deploying infrastructure as code using Terraform and OpenTofu. You’ll begin with the foundational concepts of Terraform, including understanding the HashiCorp Configuration Language (HCL) and the role it plays in defining infrastructure. The course progresses with hands-on demonstrations, taking you through the process of installing and configuring Terraform and OpenTofu, setting up AWS, Azure, and GitHub credentials, and understanding how to organize and structure your Terraform files for maximum efficiency. The journey continues with an exploration of Terraform's state management, CLI commands, and meta-arguments, followed by detailed tutorials on writing reusable code and working with modules. With real-world examples and expert insights, you’ll quickly build expertise in managing complex infrastructure projects. This course is designed for anyone interested in learning Terraform, whether you’re a beginner or have some experience with cloud infrastructure. Ideal for developers, DevOps engineers, and IT professionals, it requires basic understanding of cloud platforms and infrastructure. No advanced programming skills are required, but familiarity with cloud concepts will be helpful. By the end of the course, you will be able to efficiently use Terraform to manage infrastructure, implement best practices for writing reusable code, automate cloud resource management, and troubleshoot issues in Terraform configurations.

In this module, we will introduce you to the basics of Terraform, including key concepts, components, and benefits. You will also learn about HashiCorp Configuration Language (HCL) and OpenTofu, which you will use throughout this course.

What's included

6 videos1 reading1 assignment

6 videosTotal 103 minutes
  • Course Introduction14 minutes
  • Introduction to Terraform18 minutes
  • Core Components and Benefits of Terraform22 minutes
  • Learn the Basics of HashiCorp Configuration Language (HCL)33 minutes
  • Introduction to OpenTofu15 minutes
  • How to Use OpenTofu in This Course2 minutes
1 readingTotal 10 minutes
  • Full Course Resource10 minutes
1 assignmentTotal 15 minutes
  • Introduction - Assessment15 minutes

In this module, we will guide you through the process of preparing your environment for Terraform and OpenTofu. This includes installation steps for various systems, setting up credentials, and configuring your IDE for efficient development.

What's included

9 videos1 assignment

9 videosTotal 40 minutes
  • Section Intro - Preparing Your Environment2 minutes
  • Installing Terraform on MacOS and Linux5 minutes
  • Installing Terraform on Windows4 minutes
  • Installing Terraform Auto-Complete4 minutes
  • Installing OpenTofu on Your Local Machine4 minutes
  • Installing Microsoft Visual Studio Code (IDE)5 minutes
  • Setting Up Credentials for Terraform and OpenTofu – AWS8 minutes
  • Setting Up Credentials for Terraform and OpenTofu – Azure4 minutes
  • Setting Up Credentials for Terraform and OpenTofu – GitHub5 minutes
1 assignmentTotal 15 minutes
  • Preparing Your Environment - Assessment15 minutes

In this module, we will explore how to organize Terraform configuration files effectively. This will help you manage and maintain your infrastructure projects with ease and efficiency.

What's included

1 video1 assignment

1 videoTotal 12 minutes
  • Terraform File Structure and Organization12 minutes
1 assignmentTotal 15 minutes
  • Terraform File Structure and Organization - Assessment15 minutes

In this module, we will dive into Terraform state, explaining its crucial role in managing infrastructure changes and discussing how to securely store state files, both locally and remotely.

What's included

3 videos1 assignment

3 videosTotal 11 minutes
  • Section Intro - Terraform State1 minute
  • Introduction to Terraform State8 minutes
  • Where Can I Store Terraform State?2 minutes
1 assignmentTotal 15 minutes
  • Understanding Terraform State - Assessment15 minutes

In this module, we will cover the core Terraform workflow. You will learn to initialize, plan, apply, and destroy infrastructure configurations using essential Terraform commands.

What's included

5 videos1 assignment

5 videosTotal 25 minutes
  • Section Intro - Terraform Workflow1 minute
  • Terraform Init6 minutes
  • Terraform Plan8 minutes
  • Terraform Apply5 minutes
  • Terraform Destroy5 minutes
1 assignmentTotal 15 minutes
  • Terraform Workflow - Assessment15 minutes

In this module, we will introduce the Terraform CLI and demonstrate how to use it effectively for managing infrastructure. You’ll also learn how to maximize your efficiency with advanced CLI techniques.

What's included

5 videos1 assignment

5 videosTotal 51 minutes
  • Section Intro - Terraform CLI1 minute
  • Introduction to the Terraform CLI14 minutes
  • Demo - Terraform CLI18 minutes
  • Making the Most of the Terraform CLI9 minutes
  • Demo - Making the Most of the Terraform CLI8 minutes
1 assignmentTotal 15 minutes
  • Terraform CLI - Assessment15 minutes

In this module, we will explore the different Terraform block types, including provider, resource, and output blocks, and how they define infrastructure. You'll also learn how to use variables and modules for more flexible code.

What's included

12 videos1 assignment

12 videosTotal 135 minutes
  • Section Intro - Terraform Block Types1 minute
  • Introduction to Terraform Block Types3 minutes
  • Provider Block14 minutes
  • Resource Block24 minutes
  • Data Block15 minutes
  • Variable Block15 minutes
  • Variable Block - Types of Variables12 minutes
  • Variable Block - Assigning Values to Variables13 minutes
  • Output Block7 minutes
  • Terraform Block12 minutes
  • Module Block9 minutes
  • Import Block8 minutes
1 assignmentTotal 15 minutes
  • Terraform Block Types - Assessment15 minutes

In this module, we will guide you through writing your first Terraform configuration. You will gain hands-on experience in defining and deploying basic infrastructure with Terraform.

What's included

1 video1 assignment

1 videoTotal 4 minutes
  • Section Intro - Writing Your First Terraform Configurations4 minutes
1 assignmentTotal 15 minutes
  • Writing Your First Terraform Configurations - Assessment15 minutes

In this module, we will teach you how to use Terraform's official documentation to find solutions and examples. This will empower you to troubleshoot and enhance your Terraform configurations.

What's included

1 video1 assignment

1 videoTotal 14 minutes
  • Learn How to Use Terraform Documentation14 minutes
1 assignmentTotal 15 minutes
  • Using Terraform Documentation - Assessment15 minutes

In this module, we will show you how to enhance your Terraform code for reusability. You'll learn about dynamic values, locals, and meta-arguments to streamline and optimize your Terraform configurations.

What's included

18 videos1 assignment

18 videosTotal 119 minutes
  • Section Intro - Making Code Reusable2 minutes
  • The "Why" Behind Reusability6 minutes
  • Enhancing Code with Dynamic Values13 minutes
  • Demo - Enhancing Code with Dynamic Values7 minutes
  • Using Locals to Avoid Code Duplication10 minutes
  • Demo - Using Locals to Avoid Code Duplication9 minutes
  • Meta-Arguments - Write Less Code, Deploy More Efficiently7 minutes
  • Using the count Meta-Argument4 minutes
  • Demo - Using the count Meta-Argument7 minutes
  • Using the for_each Meta-Argument5 minutes
  • Demo - Using the for_each Meta-Argument7 minutes
  • Using the depends_on Meta-Argument3 minutes
  • Demo - Using the depends_on Meta-Argument5 minutes
  • Using the provider Meta-Argument6 minutes
  • Demo - Using the provider Meta-Argument4 minutes
  • Using the lifecycle Meta-Argument3 minutes
  • Demo - Using the lifecycle Meta-Argument5 minutes
  • Using Built-In Functions to Standardize Code18 minutes
1 assignmentTotal 15 minutes
  • Making Code Reusable - Assessment15 minutes

In this module, we will introduce you to Terraform modules, explaining how they help organize and reuse your code. You'll also learn how to write and use your own modules for standardized, maintainable code.

What's included

4 videos1 assignment

4 videosTotal 74 minutes
  • Section Intro - Modules2 minutes
  • Introduction to Modules24 minutes
  • Using the Terraform Registry25 minutes
  • Writing and Using Your Own Modules23 minutes
1 assignmentTotal 15 minutes
  • Introduction to Modules - Assessment15 minutes

In this module, we will explore how to manage and maintain your Terraform code in the long term. You’ll learn strategies for upgrading resources, targeting specific changes, and importing existing resources.

What's included

4 videos1 assignment

4 videosTotal 36 minutes
  • Section Intro - Managing and Maintaining Your Code3 minutes
  • Targeting the Replacement and Removal of Specific Resources9 minutes
  • Upgrading a Provider or Module9 minutes
  • Importing an Existing Resource into Terraform15 minutes
1 assignmentTotal 15 minutes
  • Managing and Maintaining Your Terraform Code - Assessment15 minutes

In this final module, we will congratulate you on completing the course and encourage you to apply the knowledge gained to real-world projects. We’ll also provide guidance for continued learning in Terraform and IaC.

What's included

1 video2 assignments

1 videoTotal 4 minutes
  • You Did It!!!4 minutes
2 assignmentsTotal 75 minutes
  • Full Course Assessment60 minutes
  • Full Course Practice Assessment15 minutes

Instructor

Offered by

Why people choose Coursera for their career

👁 Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
👁 Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
👁 Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
👁 Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

Infrastructure as Code (IaC) is the practice of managing and provisioning computing infrastructure through machine-readable configuration files, rather than through manual processes. IaC allows for automated, consistent, and scalable infrastructure management, which is essential in today's fast-paced development environments. HashiCorp Terraform is one of the most popular tools for implementing IaC, enabling teams to define, provision, and manage infrastructure in a declarative way.

This course provides an introduction to HashiCorp Terraform, a tool for managing infrastructure as code. It covers the basics of Terraform, including its core components, the HashiCorp Configuration Language (HCL), and how to work with both Terraform and OpenTofu. Additionally, the course delves into setting up your environment, managing Terraform state, and utilizing different block types for defining resources. You will also learn how to make your code reusable and maintainable through various Terraform workflows and modules.

After completing this course, you will have the skills to use Terraform to define and provision infrastructure. You will be able to work with both Terraform and OpenTofu, manage infrastructure resources through the Terraform CLI, and apply best practices for writing reusable and modular code. You'll also be proficient in setting up and managing your environment for Terraform development and be able to confidently manage infrastructure on cloud platforms like AWS, Azure, and GitHub.

This course assumes no prior knowledge of Terraform or infrastructure as code. Basic familiarity with command-line interfaces and cloud services like AWS and Azure will be helpful, but is not required. The course starts with the fundamentals and builds up to more advanced concepts, making it suitable for beginners in the field of infrastructure management.

This course is intended for IT professionals, system administrators, developers, and anyone interested in learning how to automate infrastructure provisioning. Whether you're new to DevOps or want to enhance your infrastructure automation skills, this course will provide you with the foundational knowledge to start using Terraform in your work.

This course contains approximately 10 hours of video content. The total time to complete the course may vary depending on your pace and how much hands-on practice you incorporate into your learning experience.

Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.

If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.

Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.

If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.

This course is currently available only to learners who have paid or received financial aid, when available.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,