Terraforms
Limited Time Offer!
For Less Than the Cost of a Starbucks Coffee, Access All DevOpsSchool Videos on YouTube Unlimitedly.
Master DevOps, SRE, DevSecOps Skills!
Comparison B/W Ansible, Docker and Terraform
Ansible | Docker | Terraform |
Ansible is a configuration management tool | Docker is a container tool | Terraform is an Orchestration tool |
It provides support for mutable infrastructure | It provides support for immutable infrastructure | It provides support for immutable infrastructure |
It follows a procedural language | It follows a declarative language | It follows a declarative language |
It provides complete support for packaging and templating | It provides support for packaging and templating | It provides partial support for packaging and templating |
It does not have lifecycle management | It follows lifecycle | It depends on lifecycle and state management |
Terraform Script to create linux Ec2 instance with security groups
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 3.0"
}
}
}
provider "aws" {
region = "us-west-2"
access_key = "my-access-key"
secret_key = "my-secret-key"
}
resource "aws_instance" "hari-first-ec2" {
ami = "ami-03d5c68bab01f3496"
instance_type = "t2.micro"
tags = {
Name = "Harish"
}
}
resource "aws_security_group" "ResourceGroup" {
name = "allow_tls"
description = "Allow TLS inbound traffic"
vpc_id = aws_vpc.main.id
tags = {
Name = "harishResourceGroup"
}
}
resource "aws_key_pair" "deployer" {
key_name = "deployer-key"
public_key = ""
}