-
카테고리
-
세부 분야
데브옵스 · 인프라
-
해결 여부
미해결
terraform apply 명령 실행 시 EC2 인스턴스도 destroy 되는 문제
22.05.21 03:03 작성 조회수 344
0
안녕하세요.
올려주신 강의를 참고하면서 AWS 인프라를 직접 구축해보고 있습니다.
강의에서는 VPC, IAM 리소스를 다뤘는데 여기에 더 나아가 EC2 리소스도 테라폼으로 작성해보고 있습니다.
지금까지는 퍼블릭 서브넷 안에 한 개의 우분투 서버를 띄워 봤습니다.
그런데 이 인스턴스의 security group에 룰을 추가하는 정도의 간단한 작업도 (aws_security_group 리소스 안에 inline으로 ingress 룰을 추가했습니다)
terraform apply 하면 EC2 인스턴스를 완전히 종료 시켰다가 새로 생성하더라고요.
실제 서비스에서라면 돌아가던 서버가 완전히 날라가는 꼴이 되는 것 같은데 현업에서는 어떤 식으로 이 문제를 처리하나요?
ec2.tf:
resource "aws_instance" "ubuntu" {
# Canonical, Ubuntu, 22.04 LTS, amd64 jammy image build on 2022-04-20
ami = "ami-063454de5fe8eba79"
instance_type = "t2.micro"
key_name = aws_key_pair.ec2.key_name
security_groups = [aws_security_group.ec2_security_group.id]
subnet_id = data.terraform_remote_state.vpc.outputs.public_subnet_id
root_block_device {
volume_size = 20
}
tags = {
"Name" = "Ubuntu"
}
}
답변을 작성해보세요.
2
송주영
지식공유자2022.05.23
안녕하세요
테라폼 plan 나올때 -/+ 형태로 나오는건 re-create 입니다.
destroy 이후 create 하는거죠.
EC2 가 변경되는 항목중에는 ec2 를 다시 생성해야하는 항목도 그냥 변경만해도 되는 항목이 있습니다.
ec2 에 붙히는 SG Rule 만 변경해서는 ec2 는 아무 변경이 없어야 합니다.
해당 항목중에서는 볼륨이 변경되거나 다른건 변경이 없는건지,
terraform plan 할때 나오는 항목을 점검할 필요가 있을 것 같습니다.
re-create 되는 상황의 terraform plan 결과를 알려주시면, 저도 같이 도와드리도록 하겠습니다~
답변 1