Skip to main content

Command Palette

Search for a command to run...

πŸ“˜ Terraform Series – Day 4

Updated
β€’2 min read
πŸ“˜  Terraform Series – Day 4
G

Gujjar Apurv is a passionate DevOps Engineer in the making, dedicated to automating infrastructure, streamlining software delivery, and building scalable cloud-native systems. With hands-on experience in tools like AWS, Docker, Kubernetes, Jenkins, Git, and Linux, he thrives at the intersection of development and operations. Driven by curiosity and continuous learning, Apurv shares insights, tutorials, and real-world solutions from his journeyβ€”making complex tech simple and accessible. Whether it's writing YAML, scripting in Python, or deploying on the cloud, he believes in doing it the right way. "Infrastructure is code, but reliability is art."

Terraform Workflow: init, validate, plan, apply & destroy

🧠 Before Starting (AWS Setup)

Before using Terraform with AWS, we first need to configure AWS access on our local machine.

πŸ‘‰ Steps:

  • Install AWS CLI
  • Configure AWS using:
aws configure

πŸ‘‰ It will ask for:

  • AWS Access Key

  • Secret Key

  • Region

  • Output format

βœ… After this setup, Terraform can interact with your AWS account.

🎯 Objective

  • Understand Terraform workflow

  • Learn core commands

  • Perform hands-on execution

🧱 Step 0: Create Terraform Configuration File

πŸ‘‰ Create a file:

main.tf

πŸ‘‰ This file contains your Terraform infrastructure code

βš™οΈ Step 1: Initialize Terraform

πŸ”Ή Command:

terraform init

πŸ”Ή Purpose:

  • Initializes working directory

  • Downloads required providers

  • Prepares environment

βœ… Step 2: Validate Configuration

πŸ”Ή Command:

terraform validate

πŸ”Ή Purpose:

  • Checks syntax of .tf files

  • Ensures configuration is valid

πŸ‘‰ β€œCheck if your code is correct”

πŸ“Š Step 3: Review Execution Plan

πŸ”Ή Command:

terraform plan

πŸ”Ή Purpose:

  • Shows what Terraform will do

  • Lists resources to create/change/destroy

  • Works as a dry run

πŸ‘‰ β€œPreview before execution”

πŸš€ Step 4: Apply Configuration

πŸ”Ή Command:

terraform apply

πŸ”Ή Purpose:

  • Executes the plan

  • Creates real infrastructure

πŸ‘‰ Type yes to confirm

🧨 Step 5: Destroy Infrastructure

πŸ”Ή Command:

terraform destroy

πŸ”Ή Purpose:

  • Deletes all resources

  • Avoids unnecessary cloud cost

⚑ Auto-Approve Option

terraform apply -auto-approve
terraform destroy -auto-approve

πŸ‘‰ Skips confirmation

πŸ‘‰ Useful in automation (CI/CD)

πŸ‘¨β€πŸ’» About the Author

β€œA complete Terraform series covering everything from fundamentals to advanced real-world infrastructure automation in a DevOps environment.”

πŸ“¬ Let's Stay Connected

Terraform

Part 4 of 12

πŸš€ Terraform Series – Automate Your Infrastructure Starting a complete **Terraform series** where I’ll cover everything from **basic to advanced level** with real-world practicals. In this series, you will learn: β€’ What is Infrastructure as Code (IaC) & why it matters β€’ Terraform fundamentals (providers, resources, state) β€’ Writing and managing Terraform configurations β€’ Variables, outputs & modules β€’ Remote state & state management β€’ Provisioning infrastructure on AWS β€’ Automation & real-world use cases β€’ Advanced concepts like workspaces, modules, and best practices 🎯 Goal: Help you automate infrastructure and become job-ready in DevOps. Perfect for **beginners, students, and DevOps learners** who want hands-on experience. Stay tuned and let’s build infrastructure the smart way βš‘πŸ’» #Terraform #DevOps #Cloud #AWS #InfrastructureAsCode #Automation

Up next

πŸ“˜ Terraform Series – Day 5

Terraform Providers, Resource Types & Naming In today’s Terraform journey, I explored one of the most fundamental concepts that every DevOps engineer must understand Providers and Resource Naming Stru

More from this blog

T

The OpsVerse with Apurv

26 posts

Sharing hands-on DevOps, AWS, and Cloud tutorials with real-world projects, tips, and automation guides for students and professionals.