EC2, SG 구성하기
resource "aws_security_group" "security_group" {
name = "${var.key_name}-Security-Group"
vpc_id = data.aws_vpc.default_vpc.id # 어느 vpc에 속할지
ingress { # 인바운드 규칙
from_port = 22
protocol = "tcp"
to_port = 22
cidr_blocks = ["0.0.0.0/0"] # AnyWhere Ipv4
}
ingress {
from_port = 8080
protocol = "tcp"
to_port = 8080
cidr_blocks = ["0.0.0.0/0"]
}
egress { # 아웃바운드 규칙
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"] # 모든 트래픽 허용
ipv6_cidr_blocks = ["::/0"] # 모든 트래픽 허용
}
}
resource "aws_instance" "ec2" {
ami = var.ami # ami(Amazon Machine Image) 설정
instance_type = var.instance_type # 인스턴스 유형
security_groups = [aws_security_group.security_group.id] # 어느 보안 그룹 쓸건지
associate_public_ip_address = true # 퍼블릭 ip 할당
subnet_id = var.subnet_id # 어느 subnet에 들어갈건지
tags = {
Name = "${var.key_name}-Server"
}
}
# pem key 등 받아서 output으로 뽑아주는 코드 필요