init
– Init. Initialize the (local) Terraform environment. Usually executed only once per session.plan
– Plan. Compare the Terraform state with the as-is state in the cloud, build and display an execution plan. This does not change change the deployment (read-only).apply
– Apply the plan from the plan phase. This potentially changes the deployment (read and write).destroy
– Destroy all resources that are governed by this specific terraform environment.
Terraform workflow
Step – 1 – Install terraform
Step – 2 – Decide a providers name which you want to work with?
- Create one directory under your workspace
- Inside directory, create one file called “providers.tf”
- Content of the providers.tf are as follow
- run init command to download aws providers. $ terraform init
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "4.61.0"
}
github = {
source = "integrations/github"
version = "5.18.3"
}
}
}
provider "aws" {
region = "us-east-1"
access_key = ""
secret_key = ""
}
provider "github" {
# Configuration options
}
Step – 3 – Create 1 AWS ec2 instance using Terraform
- Create aws.tf file in the same directory where providers.tf is located
- Put the following content. Modify AMI id as per your region
resource "aws_instance" "web" {
ami = "ami-007855ac798b5175e"
instance_type = "t2.micro"
tags = {
Name = "HelloWorld-DevOpsSchool"
}
}
Step – 4 – PLAN (DRY RUN) using terraform plan
- RUN a Dry run command $ terraform plan
Step – 5 – APPLY (Create a Resoureces) using terraform apply
- Run apply command to create resources $ terraform apply
Step – 6 – Verify a AWS ec2 instance at AWS
Step – 7 – APPLY (Update a Resoureces) using terraform apply
- Update tag info in your aws.tf code
- Run $ terraform apply
resource "aws_instance" "web" {
ami = "ami-007855ac798b5175e"
instance_type = "t2.micro"
tags = {
Name = "HelloWorld-Terraform"
}
}
Step – 8 – Terraform show
Check Statefile in the same directory
Step – 9 – Terraform destroy
Check AWS Account if AWS ec2-instance is destroyed or not
Terraform Basic Tutorial with Demo by Piyush 2020
Terraform Fundamental Tutorials by Harish in 2020
Terraform Fundamental Tutorial By Guru in 2020 Part-1
Terraform Fundamental Tutorial By Guru in 2020 Part-2
Terraform Fundamental Tutorial By Guru in 2020 Part-3
Terraform Fundamental Tutorial By Guru in 2020 Part-4
Terraform Fundamental Tutorial By Guru in 2020 Part-5
Terraform Advance Tutorial for Beginners with Demo 2020 — By DevOpsSchool
Latest posts by Rajesh Kumar (see all)
- Best AI tools for Software Engineers - November 4, 2024
- Installing Jupyter: Get up and running on your computer - November 2, 2024
- An Introduction of SymOps by SymOps.com - October 30, 2024