⚙️ DevOps& Automation Track
Infrastructure as Code
Automate AWS infrastructure provisioning using Terraform with state management, modules, and CI/CD integration.
⏱️ 12-16 hours
🎯 Intermediate
📋 Overview
Manual infrastructure provisioning doesn't scale. In this project, you'll use Terraform to define AWS infrastructure (VPC, EC2, RDS) as code, enabling version control, repeatability, and automation.
✅ Prerequisites
Required
- • AWS account (free tier)
- • Basic cloud concepts
- • Git fundamentals
Tools
- • Terraform CLI
- • AWS CLI
- • VS Code + Terraform extension
🔨 Implementation
Step 1: Create VPC Module
resource "aws_vpc" "main" {
cidr_block = var.vpc_cidr
enable_dns_hostnames = true
tags = {
Name = "\${var.project_name}-vpc"
}
}
Step 2: Remote State (S3 Backend)
terraform {
backend "s3" {
bucket = "my-terraform-state"
key = "vpc/terraform.tfstate"
region = "us-east-1"
encrypt = true
}
}
📦 Deliverables
- ✓Terraform modules for VPC, EC2, RDS
- ✓Remote state configured in S3
- ✓GitHub Actions workflow for terraform plan/apply