반응형
Auto Scaling에 사용될 시작 템플릿을 만들기 위한 AMI 생성
1. Terraform Docs 예시
https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ami_from_instance
예시:
인수 등:
2. Terraform 코드 작성
# 15_ami.tf
resource "aws_ami_from_instance" "pmh_ami" {
name = "pmh-ami"
source_instance_id = aws_instance.pmh_ma.id
depends_on = [
aws_instance.pmh_ma
]
}
resource "aws_ami_from_instance" "pmh_ami"
pmh_ami 라는 이름의 이미지 생성
name = "pmh-ami"
이미지 이름을 "pmh-ami"로 설정
source_instance_id = aws_instance.pmh_ma.id
이미지로 만들 인스턴스의 ID를 지정
(앞서 만들었던 인스턴스의 id)
depends_on = [ aws_instance.pmh_ma ]
이미지가 만들어지기 전에 선행되어야 될 작업
(EC2 인스턴스가 먼저 생성되도록 의존성을 설정)
3. Terraform 분석 및 적용
terraform 파일이 있는 위치에서 아래 명령어 실행
# 변경 사항 검토 및 확인
terraform plan
# (대화형 승인 없이)변경 사용항 적용
terraform apply -auto-approve
4. 결과
+ 변수처리하는 방법
tag 변수 파일 생성
# var.tf
variable "tag" {
type = string
default = "pmh"
}
# 15_ami.tf
resource "aws_ami_from_instance" "pmh_ami" {
name = "${var.tag}-ami"
source_instance_id = aws_instance.pmh_ma.id
depends_on = [
aws_instance.pmh_ma
]
}
반응형
'AWS > Terraform' 카테고리의 다른 글
[AWS Terraform 기초]18. AutoScaling Group 생성 (0) | 2023.07.13 |
---|---|
[AWS Terraform 기초]17. Launch Template(시작 템플릿) 생성 (0) | 2023.07.13 |
[AWS Terraform 기초]15. ALB Listener 생성 (0) | 2023.07.12 |
[AWS Terraform 기초]14. ALB Target Group 생성 (0) | 2023.07.12 |
[AWS Terraform 기초]13. Application Load Balancer(ALB) 생성 (0) | 2023.07.12 |