-
00-Terraform-Basics - Terraform Definitions and more
-
01-Terraform-Installation - Install Terraform
-
02-Terraform-Configuration - Configure Terraform
-
- Provider : Define the providers like AWS, Azure, GCP
- Resource : Infrastructure Resources to be created, ex: VPC, S3, EC2
- Data Sources (optional) : Pull the data from the provider
- Variable: Give user option to enter the value for defined resources
- Arguments : Inputs
- Attributes : Outputs
- Meta-Arguments : Terraform specific Inputs ex: count, for_each,depends_on
-
04-Terraform-Top-Level-Blocks - Terraform Top Level Blocks
- Terraform Block (>0.13 version) or Terraform Settings Block or Terraform Configuration Block
- Provider Block
- Resource Block
- Input Variables Block
- Output Values Block
- Local Values Block
- Data Sources Block
- Modules Block
-
05-Terraform-Commands - Basic Terraform Commands
terraform initterraform validateterraform planterraform applyorterraform apply -auto-approveterraform destroyorterraform destroy -auto-approve
-
06-Terraform-VPC-Demo - Simple Demo to Create AWS VPC using Terraform
-
07-Terraform-Resources - Understanding Resource behavior
- created
- destroyed
- updated
-
08-Terraform-Resource-Meta-Arguments - Terraform Meta-Arguments
-
09-Terraform-Variables - Terraform Variables
- Terraform Variables with
defaultOption - Overriding
defaultVariable values with-varOption - Overriding
defaultVariable values withEnvironment VariablesOptions - Overriding
defaultVariable values withterraform.tfvarsfile - Overriding
defaultVariable values with different.tfvarsusing-var-fileOption - Terraform Variables type list
- Terraform Variables type map
- Custom Validation Rules
- Sensitive Variables
- Terraform Variables with
-
10-Terraform-Outputs - Terraform Output Values
-
11-Terraform-Data-Sources - Terraform Data Sources
-
12-Terraform-State - Terraform State
-
13-Terraform-Show - Terraform Show (need to update)
-
14-Terraform-Refresh - Terraform Refresh Desired and Current state sync
-
15-Terraform-State-Commands - Inspect, Modify, and Manage the Terraform state
-
16-Terraform-Workspaces - Manage multiple sets of infrastructure (dev, uat, pre, and prd) with the same Terraform configuration
-
17-Terraform-Modules - Reusable terraform codes
-
18-Terraform-Import - Bring Existing Infrastructure Under IaC
-
19-Terraform-Debug - Debugging Terraform
-
20-Terraform-Exam-Cheat-Sheet - Cheat Sheet for Terraform Certification
-
99-Terraform-Example-Codes - Sample Terraform codes for more practice
-
Create Simple Web Server (TBD)
- AWS Components
- EC2
- Security Group to allow port 22
- Security Group to allow port 80, 443
- Use Terraform variables where ever possible.
- AWS Components
- Website: https://www.terraform.io
- Forums: HashiCorp Discuss
- Documentation: https://www.terraform.io/docs/