8379  Reviews star_rate star_rate star_rate star_rate star_half

IaC with OpenTofu for Azure Fundamentals

OpenTofu is a community-driven, open-source fork of Terraform that ensures continued access to a powerful Infrastructure as Code (IaC) tool, free from licensing concerns and vendor lock-in. It...

Read More
Duration 3 days
Course Code WA3579
Available Formats Classroom

Overview

OpenTofu is a community-driven, open-source fork of Terraform that ensures continued access to a powerful Infrastructure as Code (IaC) tool, free from licensing concerns and vendor lock-in. It prioritizes transparency, collaboration, and the freedom to build and manage cloud infrastructure without restrictions.

This Azure OpenTofu course teaches attendees how to use OpenTofu for deploying and managing resources on Azure. After learning OpenTofu basics, students advance to IaC OpenTofu workflows, the Azure Terraform provider, and Azure resources. In addition, attendees dive into HCL programming, incorporating best practices, troubleshooting, and integrating OpenTofu into their organizations with automation and GitOps.

Skills Gained

  • Understand IaC and OpenTofu, and their application to Azure
  • Understand how IaC stacks up against traditional scripting
  • Initiate an OpenTofu project and use the OpenTofu CLI
  • Explore OpenTofu's architecture and Azure provider fundamentals
  • Use Hashicorp's Azure provider
  • Enhance OpenTofu HCL programming skills
  • Explore resources, data sources, modules, and OpenTofu state
  • Understand the architecture of OpenTofu and how it impacts IaC workflows
  • Work with HCL Data Source blocks
  • Understand custom modules and general module architecture
  • Grasp the inner workings of OpenTofu state management.
  • Debug OpenTofu scripts and apply IaC principles.
  • Understand how to debug and troubleshoot OpenTofu projects targeting Azure
  • Apply resource management strategies maintaining security and performance
  • Explore OpenTofu within an organizational context and its integration with other tools
  • Understand how OpenTofu workflows impact organizations and vice-versa
  • Leverage configuration management tools for final configuration tweaks
  • Implement OpenTofu within CI/CD pipelines and GitOps
  • Integrate OpenTofu with other key tools for resource management
  • Compare OpenTofu and Terraform

Who Can Benefit

The ideal audience for this course works with cloud infrastructure, has basic working knowledge of Linux and Windows based systems including Bash or PowerShell, in addition to a basic understanding of Azure.

Course Details

Course Outline

Infrastructure as Code Overview

  • Holistic Overview
  • IaC vs Scripting

OpenTofu Basics - Getting Started

  • OpenTofu CLI
  • OpenTofu Project Structure
  • OpenTofu Workflow: Plan, Apply, Destroy
  • OpenTofu HCL Configuration Files
  • Resources - Introduction
  • Providers - Introduction
  • Provisioning Infrastructure using OpenTofu
  • Using OpenTofu Provider Documentation

Getting Started with OpenTofu and Azure

  • Creating and managing Azure resources using OpenTofu
  • State files and out of band changes - reality check

OpenTofu Architecture

  • OpenTofu Development Architecture
  • OpenTofu State
  • Local State
  • Remote State
  • Intro to OpenTofu Enterprise and OpenTofu Cloud
  • OpenTofu Registry
  • Providers
  • Plugins
  • Modules
  • OpenTofu CLI vs Provider version pinning
  • CLI Compatibility Promise
  • Provider Backward Compatibility

Azure Provider Fundamentals

  • Provider Landscape for creating cloud resources
  • Azure Provider Authentication
  • Creating Azure resources:
  • Compute: EC2 Instances, Lambda Functions, PaaS Applications
  • Storage: S3 Buckets, EBS Volumes
  • Databases: RDS, DynamoDB
  • Network: VPC, Subnets, Route Tables, Internet Gateways
  • Identity: IAM Users, Roles, Policies and attachments
  • Architecting Infrastructure in Azure with OpenTofu
  • OpenTofu vs CloudFormation and CDK

HCL Programming Basics

  • Variables and Outputs
  • Input
  • Local
  • Output
  • Input Variables in Detail
  • CLI Parameters
  • TFVARS File
  • Environment Variables
  • Validation Rules
  • HCL Expressions Basics
  • Value Data Types
  • Value References
  • Strings
  • Conditionals
  • For
  • Splat
  • Operators
  • Using Functions in OpenTofu
  • Numeric
  • String
  • Collections
  • Date and Time
  • Type Conversion
  • Encoding
  • Filesystem
  • Cryptographic and Hashing
  • IP Network
  • OpenTofu Best Practices - Basics
  • HCL Coding Best Practices
  • OpenTofu Project Best Practices

Resources Deep Dive

  • Deep dive into HCL resource blocks
  • Resource Blocks
  • Resource Behavior
  • Resource Dependencies
  • Implicit
  • Explicit
  • Meta Arguments
  • count
  • depends_on
  • for_each
  • provider
  • lifecycle

Data Sources

  • Data Source Blocks
  • Working with Azure Data Sources

Modules Deep Dive

  • Modules Architectural Overview
  • Writing Custom Modules
  • Consuming Custom Modules
  • Module Meta Arguments
  • Publishing Modules
  • Modules Best Practices

OpenTofu State Deep Dive

  • OpenTofu State Architecture
  • OpenTofu Backends
  • Local
  • Remote - Enterprise
  • Remote - Cloud
  • Remote - Azure S3
  • Managing State
  • State Drift
  • Out of Band Changes
  • Convention over Control
  • Importing Existing Resources into OpenTofu
  • OpenTofu CLI Import Command Usage
  • 3rd Party Tools

Debugging and Troubleshooting

  • OpenTofu Log Levels
  • Debugging OpenTofu Scripts
  • Audit Trails for Troubleshooting
  • OpenTofu State File Issues
  • Common OpenTofu Errors and Solutions

OpenTofu Best Practices

  • Infrastructure as Code Principles
  • Mutable vs Immutable
  • Declarative Code
  • Version Control
  • Automation
  • Resource Management Strategies
  • Naming Conventions
  • Modularization
  • Resource Dependencies
  • Lifecycle Management
  • Effective Use of Data Sources
  • Security Best Practices
  • Secrets Management
  • Principle of Least Privileges
  • Use of Service Roles
  • Performance Optimization Tips
  • Parallel Resource Creation
  • Reducing Interdependencies
  • Azure Best Practices
  • IaC Code Management
  • Compatibility and Security
  • Testing and Documentation
  • Resource Management
  • Environment and Automation

OpenTofu in Organization Context

  • Centralized vs. Distributed Infrastructure Management
  • Hybrid Infrastructure Management
  • DevOps Approach with OpenTofu
  • Using Managed OpenTofu Services
  • Team Roles and Responsibilities
  • Governance and Best Practices
  • Case Studies and Real-world Scenarios

Last Mile Configuration using Provisioners

  • Configuration vs State
  • Integrating configuration management tools

OpenTofu in CI/CD Pipelines and GitOps

  • Overview of CI/CD
  • OpenTofu in CI/CD Context
  • GitOps with OpenTofu
  • Automated Testing of OpenTofu Code
  • Infrastructure Deployment Automation
  • Case Studies and Examples
  • Best Practices and Tools

Integration with Other Tools

  • IAC Tools that work with OpenTofu
  • Creating a workflow with open source tools and OpenTofu

OpenTofu vs Terraform

  • History of OpenTofu
  • Using Providers from Hashicorp
  • Migrating projects from Terraform to OpenTofu

Schedule

FAQ

How do I get a Microsoft exam voucher?

Pearson Vue Exam vouchers can be requested and ordered with your course purchase or can be ordered separately by clicking here.

  • Vouchers are non-refundable and non-returnable. Vouchers expire 12 months from the date they are issued unless otherwise specified in the terms and conditions.
  • Voucher expiration dates cannot be extended. The exam must be taken by the expiration date printed on the voucher.

Do Microsoft courses come with post lab access?

Most Microsoft official courses will include post-lab access ranging from 30 to 180 calendar days after instructor led course delivery. A lab training key in class will be provided that can be leveraged to continue connecting to a remote lab environment for the individual course attendee.

Does the course schedule include a Lunchbreak?

Lunch is normally an hour-long after 3-3.5 hours of the class day.

What languages are used to deliver training?

Microsoft courses are conducted in English unless otherwise specified.

Reviews

Fantastic and great training. Tons of hands-on labs to really make you understand the material being thought.

Class was very informative, although one lab didnt but will try again later

I like their training. A lot of material covered. The labs are very good. l learned a lot.

I was very pleased with the course setup by ExitCertified and the instructor.

Great company -- easy to sign up and very organized. Loved my teacher and class overall.