
Explore OpenTofu, an open source infrastructure as code tool forked from Terraform under free license, backed by Linux Foundation projects, offering provider support, secure API-driven provisioning, and state tracking.
Install OpenTofu on macOS via Homebrew or GitHub releases, then extract binary, move to /usr/local/bin, chmod +x, and verify with tofu --version.
Learn OpenTofu syntax (hcl) for infrastructure as code by building blocks, variables, and expressions that connect resources like AWS SSM parameters, with comment styles and template mixing.
Explore OpenTofu data types and values, from strings and booleans to lists, maps, and objects, plus any and null, and learn how variables, data blocks, and resources connect with providers.
Create an S3 bucket and a DynamoDB table in AWS to store and lock the Terraform state for OpenTofu. Configure the backend and run init to migrate the state securely.
Explore OpenTofu's modular structure to organize infrastructure code into reusable models and provision security groups, EC2, parameter store, and RDS quickly.
Implement Terragrunt with OpenTofu across regions, configure the backend with S3 and DynamoDB, use environment and backend YAML files, and apply hooks for plan and apply during migration from Terraform.
Introduction to OpenTofu release 1.7.0
The new Terraform Plugin SDK added support for provider-defined functions that you can use directly in OpenTofu.
Review of declarative import blocks, that supports now the usage of the for_each instruction on the block.
State encryption is one of the flagship features of this release. Here you will know how to use the encryption and even how to encrypt your state file on the AWS cloud using AWS KMS keys.
New feature of the removed block, that lets you remove a resource from the state file but keep it on the infrastructure.
Supporting of tfvars files from the test folder.
Review of improvements on CLI and built-in functions of OpenTofu
Welcome to the "OpenTofu & Terragrunt: From zero to migration from Terraform" course!
Step into the world of Infrastructure as Code (IaC) via OpenTofu and Terragrunt.
Explore the functionality of these tools, followed by a guide to prepare from scratch the multi-region architecture on AWS cloud and even migrate your existing Terraform configuration to OpenTofu.
Course Overview:
Foundations of OpenTofu:
Gain a comprehensive understanding of OpenTofu, exploring its features, syntax, and setup for efficient infrastructure management.
AWS architecture with OpenTofu:
Dive into practical deployments on AWS using OpenTofu, learning to create, manage, and optimize resources such as EC2 instances, SSM, and RDS.
Terragrunt Integration & Multi-Region Deployment:
Explore the integration of Terragrunt into your workflow, unraveling its role in managing Terraform configurations. Design and deploy a HA multi-region architecture, mastering scalability and regional infrastructure management.
Migration of existing Terraform code to OpenTofu:
Conduct a detailed comparison between OpenTofu and Terraform, identifying strengths and weaknesses. Learn the step-by-step process of migrating from Terraform to OpenTofu, addressing compatibility and optimization challenges.
Release 1.7.0 review
Implementation of provider-defined custom functions
Importing multiple objects to OpenTofu with a for loop
Encryption of state file with local encryption and AWS KMS key
Cleaning resources from state file with removed block
Implementing tests with an imported variables file
Overview of CLI and built-in functions changes
Upon finishing the course, you'll have well-prepared Infrastructure as Code scripts covering AWS architecture across two regions and capable of dynamic scaling using OpenTofu and Terragrunt tools following best practices. You'll also receive tips for making the right decisions between Terraform and OpenTofu, along with guidance on preparing your migration correctly. Join us in enhancing your IaC expertise on this journey!