Terraform
Terraform

About Course
Focus: Cloud Provisioning & Automation
Learn to automate cloud infrastructure like a pro with the Terraform (Infrastructure as Code) course. This hands-on program teaches you how to provision, manage, and scale cloud resources efficiently using Terraform, the leading Infrastructure as Code (IaC) tool.
Module 1: Introduction to Infrastructure as Code (IaC)
- What is IaC?
- Benefits of IaC
- Overview of Terraform and use cases
- Terraform vs. other IaC tools (CloudFormation, Ansible, etc.)
Module 2: Terraform Basics
- Installation and setup
- Terraform CLI workflow: init, plan, apply, destroy
- Terraform configuration file structure
- Providers and provisioners
Module 3: Writing Terraform Configuration
- HCL (HashiCorp Configuration Language) syntax
- Variables, outputs, and locals
- Resources and data sources
- Modules: creating and using
Module 4: State Management
- Understanding Terraform state files
- Remote state storage (S3, Azure Blob, GCS)
- State locking and consistency
- Terraform workspaces
Module 5: Advanced Terraform Concepts
- Data types and expressions
- Dynamic blocks and for_each/for loops
- Dependencies and resource lifecycle
- Using functions
Module 6: Working with Modules
- Organising configuration with modules
- Module best practices
- Publishing and using modules from Terraform Registry
- Nested modules
Module 7: Provisioning Infrastructure on Cloud Providers
- AWS: EC2, VPC, S3, IAM, RDS, etc.
- Azure: Virtual Machines, Resource Groups, VNets, etc.
- GCP: Compute Engine, Cloud Storage, IAM, etc.
Module 8: Terraform in CI/CD Pipelines
- Integrating with Jenkins/GitLab CI/GitHub Actions
- Automating Terraform deployments
- Using Terraform with secrets managers
Module 9: Security and Compliance
- Securing state files
- Role-based access control (RBAC)
- Sensitive variables and secrets
- Terraform Sentinel (policy as code)
Module 10: Best Practices and Troubleshooting
- Code reuse and DRY principle
- Debugging and logging
- Terraform fmt and validate
- Performance tuning and managing drift