Skip to main content

Command Palette

Search for a command to run...

πŸ“˜ Terraform Series – Day 3

Updated
β€’2 min read
πŸ“˜  Terraform Series – Day 3
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 Blocks, Labels, and Arguments

In Day 2, we installed Terraform.
Now, before writing real infrastructure code, we must understand how Terraform actually reads and executes configurations.

πŸ‘‰ Every Terraform file is built using 3 core concepts:

  • Blocks

  • Labels

  • Arguments

πŸ”Ή 1. What is a Block?

πŸ‘‰ A block is the main building unit in Terraform used to define infrastructure or configuration.

πŸ“Œ Example:

resource "aws_instance" "my_vm" {
}

πŸ‘‰ Meaning:

  • Block tells Terraform what you want to create

πŸ“Œ Common blocks:

  • resource

  • provider

  • variable

  • output

πŸ”Ή 2. What are Labels?

πŸ‘‰ Labels are identifiers of a block that define resource type and name.

πŸ“Œ Example:

resource "aws_instance" "my_vm" {
}

πŸ‘‰ Meaning:

  • aws_instance β†’ resource type

  • my_vm β†’ resource name

πŸ‘‰ Used to uniquely identify resources

πŸ”Ή 3. What are Arguments?

πŸ‘‰ Arguments are key-value pairs inside a block used to configure the resource.

πŸ“Œ Example:

instance_type = "t2.micro"

πŸ‘‰ Meaning:

  • Defines how the resource should be created

  • Controls behavior and properties

πŸ”— Combined Example

resource "aws_instance" "my_vm" {
  instance_type = "t2.micro"
}

πŸ‘‰ Breakdown:

  • Block β†’ resource

  • Labels β†’ aws_instance, my_vm

  • Argument β†’ instance_type

πŸ‘¨β€πŸ’» 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 3 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 4

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

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.