resource "aws_instance" "devops_ec2" {
ami = "ami-0c101f26f147fa7fd"
instance_type = "t2.micro"
vpc_security_group_ids = [data.aws_security_group.default_sg.id]
key_name = aws_key_pair.devops_kp.key_name
tags = {
Name = "devops-ec2"
}
}
resource "aws_key_pair" "devops_kp" {
key_name = "devops-kp"
public_key = "ssh-rsa-server-key"
}
data "aws_security_group" "default_sg" {
name = "default"
}
# terraform init
# terraform validate
# terraform plan
# terraform apply --auto-approve
# terraform show
Hi @GautamGohel
Could you please confirm if the EC2 instance type was required as t2.micro?
Usually, all labs ask for t3.micro.
You need to create a tls_private_key resource and reference the public key in the aws_key_pair block:
resource "tls_private_key" "devops_kp" {
algorithm = "RSA"
rsa_bits = 4096
}
resource "aws_key_pair" "devops_kp" {
key_name = "devops-kp"
public_key = tls_private_key.devops_kp.public_key_openssh
}
