- Understanding of Infrastructure as Code (IaC)
Audience
- DevOps engineers
- Cloud engineers
- System administrators
- Software developers
Terraform in Practice refers to the real-world application and utilization of Terraform, a powerful open-source tool developed by HashiCorp, used for implementing Infrastructure as Code (IaC). Terraform allows DevOps teams to define and provision data center infrastructure using a high-level configuration language known as HashiCorp Configuration Language (HCL).
This instructor-led, live training (online or onsite) is aimed at intermediate-level DevOps engineers who wish to use Terraform to build and manage real infrastructure projects in a cloud environment.
By the end of this training, participants will be able to:
- Understand Terraform and IaC fundamentals.
- Learn to write and manage Terraform configurations.
- Master Terraform for infrastructure automation across AWS, Azure, and GCP.
- Utilize Terraform's advanced features including workspaces and modules.
- Integrate Terraform with CI/CD pipelines and Terraform Cloud for team collaboration.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Introduction to IaC & Terraform
- What is Infrastructure as Code?
- Terraform benefits and architecture
- Comparing Terraform with vendor-specific tools
- Basic Terraform concepts and workflow
Terraform Fundamentals
- Installing Terraform and setting up the environment
- Authentication in Terraform
- Understanding Terraform files and their role in modules
- Terraform template structure and syntax
- Introduction to Terraform workspaces
- Executing core Terraform commands
- Managing parallelism in Terraform operations
- Understanding implicit vs. explicit dependencies
Terraform Providers
- Introduction to the OpenStack Provider
- Configuring the OpenStack Provider
- Authentication with OpenStack (via credentials, environment variables, etc.)
- Provider resources and data sources
- Managing credentials and environment variables for OpenStack
- Creating and Managing OpenStack resources with Terraform
- Best Practices for Terraform with OpenStack
- Integration with other tools
Terraform Variables and Functions
- Deep dive into variables
- Exploring built-in functions for dynamic configurations
- Using interpolation, expressions, and functions
Advanced Terraform Configuration
- Advanced template design and nesting modules
- Managing Terrafor states
- Addressing configuration drift and resource lifecycle management
- Importing and managing existing resources
- Local vs. remote execution models
- Debugging and logging in Terraform
Terraform Cloud
- Comparing Terraform open source, cloud, and enterprise editions
- Setting up and managing workspaces in Terraform Cloud (TFC)
- Benefits of Terraform Cloud for Teams and collaborative environments
Summary and Next Steps