We may earn an affiliate commission when you visit our partners.
Course image
Denis Astahov

Welcome to Course: Terraform - From Zero to Certified Professional

Course covering all features of Terraform required to pass HashiCorp Certified Terraform Associate Exam certification exam.Course is fully bases on building Infrastructure on AWS - Amazon Web Services, butI have one lesson to show how to work with GCP - Google Cloud Platform and provision VM and simple Web Server.Course Lessons:

Read more

Welcome to Course: Terraform - From Zero to Certified Professional

Course covering all features of Terraform required to pass HashiCorp Certified Terraform Associate Exam certification exam.Course is fully bases on building Infrastructure on AWS - Amazon Web Services, butI have one lesson to show how to work with GCP - Google Cloud Platform and provision VM and simple Web Server.Course Lessons:

  1. Welcome and Intro

  2. What is Terraform and Why you need it

  3. Installation on Windows

  4. Installation on Linux

  5. Installation on Mac

  6. Upgrade Terraform Version

  7. Installation of15.1

  8. Best way to recreate resource - terraform apply -replace since v0.15.2

  9. How to manage existing resources - terraform import

  10. How to Import existing resources semi-automatically with v1.5+

  11. Terraform Workspaces and when to use them - terraform workspace

  12. Refactoring Terraform code, manipulation with State - terraform state - Part-1

  13. Refactoring Terraform code, manipulation with State - terraform state - Part-2

  14. Terraform validate, Terraform show, Terraform output, Terraform console, Terraform apply -target

  15. Terraform Logs

  16. Terraform Cloud

  17. Terraform Enterprise

  18. Terraform folders Hierarchy for Dev, Staging, Prod environments

  19. How to use Global Variables

  20. Lock file .terraform.lock.hcl in Terraform v0.14+

  21. Review of HashiCorp Certified Associate Exam and how to Register

  22. Complex problem solution using Loop inside Loop inside Loop inside Loop

  23. Alternative AWS Provider - AWSCC

  24. BONUS - How to Switch or Migrate from Terraform to OpenTofu

Enroll now

Here's a deal for you

Save money when you learn with a deal that may be relevant to this course.
All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Introduction
Welcome
What is Terraform and Why you need it
Installation and Setup
Read more

HashiCorp updated their AWS Provider and now when you create SecurityGroup, you have to set vpc_id.
In many lessons we are using default VPC, which already pre-created by AWS in every Account, in order to set vpc_id for securitygroup we just need to add two more lines of code:
1. TO GET VPC ID:  resource "aws_default_vpc" "default" {} 
2. To SET VPC ID: inside block of resource "aws_security_group" add this line: vpc_id = aws_default_vpc.default.id

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Covers features required to pass the HashiCorp Certified Terraform Associate Exam, which validates practical skills and knowledge, and may help learners stand out to employers
Focuses on building infrastructure on AWS, which is a leading cloud platform, and also demonstrates how to work with GCP, providing learners with exposure to multiple cloud environments
Includes lessons on Terraform Cloud and Enterprise, which are collaboration and automation platforms, and may help learners understand enterprise-level infrastructure management practices
Explores advanced features such as Terraform Loops, Remote State, and Modules, which are essential for managing complex infrastructure deployments and promoting code reusability
Includes a bonus lesson on migrating from Terraform to OpenTofu, which is a relatively new infrastructure-as-code tool, and may help learners stay up-to-date with industry trends
Features lessons on Terraform versions 0.14 and 1.5+, which may require learners to adapt their code and configurations to align with the specific version being used in their projects

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Terraform for certification and practice

According to learners, this course is a highly effective resource for preparing for the HashiCorp Certified Terraform Associate exam. Students consistently praise the practical hands-on labs and demos, finding them crucial for understanding and applying concepts. The instructor's explanations are frequently noted as clear and easy to follow, even for complex topics like state management and modules. While the course covers a broad range of essential Terraform features, some reviewers mention the challenge of keeping course content perfectly aligned with the rapid pace of Terraform and cloud provider updates, although others appreciate efforts to update sections.
Keeping up with rapid version changes.
"With rapid Terraform updates, some sections needed minor adjustments to work, but most concepts are still valid."
"It's challenging for any course to keep up with cloud provider changes, but the core principles taught remain relevant."
"Found a few differences working with the latest AWS provider vs. what was shown, but easily adapted."
Wide range of Terraform features covered.
"The course covers a broad range of essential Terraform features, from basics to advanced topics."
"Covered crucial areas like remote state, modules, workspaces, and loops effectively."
"Good overview of using Terraform with AWS, and a useful intro to GCP."
Instructor explains complex topics clearly.
"The instructor explains everything step-by-step and makes complex topics easy to understand."
"Found the lectures very clear and concise, the delivery is excellent."
"Complex concepts like state management and modules were explained well."
Learn by doing with practical exercises.
"The hands-on labs were incredibly valuable for solidifying my understanding."
"Working through the practical examples on AWS was the best way to learn."
"Appreciated the numerous demos and exercises that allow you to follow along."
"The practical application is key and this course delivers with its labs."
Excellent preparation for certification.
"I passed the HashiCorp Certified Terraform Associate exam largely thanks to this course."
"This course covers all the topics needed for the HashiCorp certification exam."
"Felt very well-prepared for the associate exam after completing the lectures and labs."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Terraform - From Zero to Certified Professional with these activities:
Review AWS Fundamentals
Reinforce your understanding of AWS core services and concepts. This will provide a solid foundation for using Terraform to manage AWS infrastructure.
Show steps
  • Review AWS documentation on EC2, VPC, S3, and IAM.
  • Complete a basic AWS tutorial, such as launching an EC2 instance.
Terraform CLI Command Practice
Master essential Terraform CLI commands through repetitive exercises. This will improve your speed and accuracy when working with Terraform configurations.
Show steps
  • Practice using 'terraform init', 'terraform plan', and 'terraform apply' on simple configurations.
  • Experiment with 'terraform destroy' and 'terraform refresh' to understand their effects.
  • Use 'terraform output' and 'terraform show' to inspect resource attributes and state.
Terraform: Up & Running
Supplement your learning with a comprehensive guide to Terraform. This book will provide additional context and practical examples to reinforce your understanding.
Show steps
  • Read the chapters on Terraform modules and state management.
  • Work through the examples provided in the book to build your own infrastructure.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Document Your Terraform Project
Improve your understanding by documenting your Terraform project. This will force you to think critically about your design choices and explain them clearly.
Show steps
  • Create a README file explaining the purpose of your project and its architecture.
  • Document each Terraform module, describing its inputs, outputs, and functionality.
  • Include diagrams illustrating the infrastructure you are creating.
Build a Multi-Tier Web Application Infrastructure
Apply your Terraform knowledge to build a real-world infrastructure. This will solidify your understanding of modules, variables, and remote state management.
Show steps
  • Design a multi-tier web application architecture with load balancers, application servers, and a database.
  • Create Terraform modules for each tier, encapsulating resource configurations.
  • Implement remote state management using Terraform Cloud or S3 backend.
  • Automate deployment and scaling using Terraform.
Contribute to a Terraform Module
Deepen your expertise by contributing to an open-source Terraform module. This will expose you to different coding styles and best practices.
Show steps
  • Find an open-source Terraform module on GitHub that you want to contribute to.
  • Identify a bug or feature request and create a pull request with your changes.
  • Respond to feedback from the maintainers and iterate on your code.
Infrastructure as Code
Gain a deeper understanding of the principles behind Infrastructure as Code. This book will provide a broader context for your Terraform skills.
Show steps
  • Read the chapters on IaC patterns and anti-patterns.
  • Reflect on how the concepts in the book apply to your Terraform projects.

Career center

Learners who complete Terraform - From Zero to Certified Professional will develop knowledge and skills that may be useful to these careers:
Cloud Engineer
A Cloud Engineer designs, plans, manages, and maintains cloud environments. This Terraform course is beneficial since Cloud Engineers use infrastructure as code tools like Terraform to automate the provisioning and management of cloud resources. Understanding Terraform is essential for defining and deploying infrastructure on platforms like AWS and Google Cloud. The course provides a thorough overview of Terraform, including installation, resource creation, state management, modules, and best practices, all vital for a Cloud Engineer to effectively manage cloud infrastructure. Lessons on AWS and GCP will be helpful.
DevOps Engineer
A DevOps Engineer works to automate and streamline the software development lifecycle. Key to this role is the management and provisioning of infrastructure, which this Terraform course directly addresses. DevOps Engineers use Terraform to automate infrastructure provisioning, enabling faster and more reliable deployments. The course covers Terraform fundamentals, advanced features like loops and modules, and real-world applications with AWS and Google Cloud. The hands-on experience could help a DevOps Engineer implement Infrastructure as Code principles and improve deployment workflows.
Infrastructure Automation Engineer
An Infrastructure Automation Engineer focuses on automating the provisioning and management of IT infrastructure. This Terraform course directly aligns with the core responsibilities of this role. Infrastructure Automation Engineers rely on tools like Terraform to define infrastructure as code, enabling consistent and repeatable deployments. This course provides comprehensive training in Terraform, covering everything from basic concepts to advanced techniques. The course's emphasis on AWS and Google Cloud integrations will be helpful for practical application.
Systems Engineer
A Systems Engineer is responsible for the design, implementation, and management of an organization's IT systems. This Terraform course enhances their ability to manage infrastructure. Systems Engineers can use Terraform to automate the provisioning and configuration of servers, networks, and other infrastructure components. The course's coverage of Terraform basics, modules, and cloud provider integrations, particularly with AWS and Google Cloud, helps a Systems Engineer streamline infrastructure management and improve system reliability. Learning how to manage existing resources is important.
Solutions Architect
A Solutions Architect designs and implements IT solutions that meet an organization's business requirements. This often involves creating infrastructure solutions, making this Terraform course highly relevant. Solutions Architects use Terraform to define and deploy infrastructure as code, ensuring consistency and repeatability across environments. The course offers a comprehensive understanding of Terraform, from fundamentals to advanced features like modules and remote state management. The practical examples with AWS and Google Cloud help a Solutions Architect design and implement cloud-based solutions.
Site Reliability Engineer
A Site Reliability Engineer, or SRE, ensures the reliability and performance of software systems. A key aspect of this role involves managing and automating infrastructure, making this Terraform course particularly useful. SREs use Terraform to automate infrastructure provisioning, configuration management, and deployment processes. The course covers Terraform fundamentals, advanced features like loops and modules, and best practices which an SRE to build and maintain reliable systems. The modules on Terraform Cloud and Enterprise will assist with collaboration.
Cloud Architect
A Cloud Architect designs and oversees the implementation of cloud computing strategies for organizations. The use of infrastructure as code is critical for cloud deployments, which makes this Terraform course exceptionally valuable. Cloud Architects leverage Terraform to automate the provisioning and management of cloud resources across platforms like AWS and Google Cloud. The course provides a comprehensive understanding of Terraform, from basic concepts to advanced features like remote state management and modules. Knowing the exam content for the HashiCorp Certified Terraform Associate Exam may also be helpful.
Infrastructure Engineer
An Infrastructure Engineer is responsible for building and maintaining the underlying IT infrastructure that supports an organization's applications and services. This Terraform course is directly applicable, as it focuses on infrastructure provisioning and management. Infrastructure Engineers use Terraform to automate the deployment and configuration of servers, networks, and other infrastructure components. The course provides a comprehensive overview of Terraform, covering everything from basic concepts to advanced features like modules and remote state. The AWS and Google cloud coverage are both very relevant.
Automation Engineer
An Automation Engineer designs and implements automated solutions to improve efficiency and reduce manual effort in various processes, including infrastructure management. This Terraform course is relevant for automating infrastructure provisioning. Automation Engineers use Terraform to automate the deployment and configuration of infrastructure resources, ensuring consistency and repeatability. The course offers thorough training in Terraform, from foundational concepts to advanced topics like loops and modules. The modules on deployment will be particularly useful.
Release Engineer
A Release Engineer manages and automates the software release process, focusing on efficiency and reliability. This Terraform course is beneficial for automating infrastructure provisioning. Release Engineers use Terraform to automate the deployment and configuration of infrastructure resources needed for software releases. The course provides extensive training in Terraform, from core principles to advanced features like modules. The best practices for different environments should be considered.
Network Engineer
A Network Engineer designs, implements, and manages network infrastructure. As infrastructure as code becomes increasingly relevant for networking, this Terraform course enhances their skills. Network Engineers can use Terraform to automate the provisioning and configuration of network devices and services. The course covers Terraform basics, modules, and cloud provider integrations, which can help a Network Engineer manage cloud-based networks. The portions on AWS and GCP will both be incredibly useful.
Technical Consultant
A Technical Consultant advises clients on technology solutions to improve their business operations. If the consulting involves cloud infrastructure or automation, this Terraform course is valuable. Technical Consultants can use Terraform to design and implement infrastructure as code solutions for their clients. The course provides a comprehensive understanding of Terraform, from basic concepts to advanced features like modules and remote state management. The materials regarding Terraform Cloud and Enterprise may be useful.
Product Manager
A Product Manager is responsible for the strategy, roadmap, and feature definition of a product. For a Product Manager working on infrastructure or cloud services, this Terraform course may provide valuable technical context. While they might not directly use Terraform, understanding how infrastructure is provisioned and managed programmatically can inform their product decisions. The course covers a wide range of Terraform features and integrations with cloud platforms like AWS and Google Cloud, which may give a Product Manager a better understanding of the engineering challenges. The exam review may also be helpful.
Project Manager
A Project Manager oversees and coordinates projects, ensuring they are completed on time and within budget. While not directly involved in technical implementation, a Project Manager working on infrastructure or cloud projects may find this Terraform course useful for understanding the technical aspects. Understanding the basics of Terraform and infrastructure as code can help a Project Manager communicate more effectively with the technical team and manage project risks. The best practices section may be particularly helpful.
Technical Recruiter
A Technical Recruiter identifies, interviews, and recruits qualified candidates for technical positions. Having a basic understanding of the technologies they recruit for can be advantageous, so this Terraform course may be useful. While a Technical Recruiter doesn't need to be an expert in Terraform, knowing the fundamentals and its role in infrastructure automation can help them better assess candidates' skills and experience. Understanding the HashiCorp Certified Terraform Associate Exam may make it easier to evaluate candidates.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Terraform - From Zero to Certified Professional.
Provides a comprehensive guide to Terraform, covering everything from basic concepts to advanced techniques. It is particularly useful for understanding Terraform's core principles and best practices. The book is commonly used by both beginners and experienced practitioners to deepen their understanding of infrastructure as code. It adds depth to the course by providing real-world examples and practical advice.
Provides a broader perspective on Infrastructure as Code (IaC) principles and practices. While not specific to Terraform, it offers valuable insights into the underlying concepts and benefits of IaC. It is particularly helpful for understanding the strategic implications of using Terraform and how it fits into a larger DevOps ecosystem. This book is more valuable as additional reading to provide a broader context.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser