🚀 DevOps & SRE Certification Program 📅 Starting: 1st of Every Month 🤝 +91 8409492687 🔍 Contact@DevOpsSchool.com

Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours on Instagram and YouTube and waste money on coffee and fast food, but won’t spend 30 minutes a day learning skills to boost our careers.
Master in DevOps, SRE, DevSecOps & MLOps!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

Terraform Tutorials: List of Terraform Blocks with Explanation

  1. Terraform Block: The “terraform” block is used to specify settings for the Terraform execution environment, such as the required Terraform version and any backend configuration settings.

Example:

terraform {
  required_version = ">= 0.14"
  backend "s3" {
    bucket = "my-terraform-state"
    key    = "terraform.tfstate"
    region = "us-west-2"
  }
}
  1. Provider Block: A provider block specifies the details of the provider being used. The provider is responsible for creating and managing resources in a specific infrastructure. The provider block is required for every Terraform configuration file.

Example:

provider "aws" {
  region = "us-west-2"
}
  1. Resource Block: A resource block specifies a single resource to be managed by Terraform. It includes the resource type, name, and its configuration options.

Example:

resource "aws_instance" "example" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t2.micro"
}
  1. Data Block: A data block defines data sources that can be queried from an external system, such as a cloud provider or a database.

Example:

data "aws_ami" "ubuntu" {
  most_recent = true
  filter {
    name = "name"
    values = ["ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*"]
  }
}
  1. Module Block: A module block specifies a reusable set of resources and configurations. Modules can be used to organize and reuse code across multiple Terraform configurations.

Example:

module "vpc" {
  source = "terraform-aws-modules/vpc/aws"
  version = "3.0.0"
  name = "my-vpc"
  cidr = "10.0.0.0/16"
  azs = ["us-west-2a", "us-west-2b", "us-west-2c"]
}
  1. Output Block: An output block defines the values that Terraform should output after applying a configuration. Outputs are useful for retrieving information from Terraform to use in other parts of your infrastructure.

Example:

output "public_ip" {
  value = aws_instance.example.public_ip
}
  1. Variable Block: A variable block defines variables that can be used in a Terraform configuration. Variables are used to provide values that may change depending on the environment.

Example:

variable "aws_region" {
  type = string
  default = "us-west-2"
}
  1. Locals Block: The locals block defines local values that can be used within a Terraform module or configuration file. These values are computed once during Terraform execution and can be used to simplify complex expressions or provide more descriptive names for values.

Example:

locals {
  instance_count = length(var.instance_types)
  instance_names = [ "web-${count.index}" for count.index in range(local.instance_count) ]
}
Subscribe
Notify of
guest


0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x