본문 바로가기
Infrastructure as Code/Terraform

Terraform - 변경, 삭제

by 코인선물로부자된다 2024. 6. 2.
반응형

# Terraform 리소스 변경

이미지 변경

main.tf

terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 3.34"
}
}
}

provider "aws" {
profile = "dev"
region = "ap-northeast-2"
}

resource "aws_instance" "my_instance" {
ami = "ami-058165de3b7202099"
instance_type = "t3.micro"

tags = {
Name = "Myinstance"
}
}

변경 사항 계획

terraform plan

-/+ 삭제하고 다시 만든다 replacement 교체

이미지만 변경 할 수 없기 때문에 , 기존 이미지를 제거하고 다시 만든다.

변경 사항 적용

terraform.tfstate 파일 확인

terraform.tfstate 파일로 현재 상태를 볼 수 있다.

apply를 하게 되면 terraform.tfstate 텍스트 파일이 생성 되는데 절대 git에 push되지 않도록 주의한다.

json형태의 데이터가 나오는데 apply를 했을 때 실제로 리소스가 만들어지고 상태가 저장된다. 리소스의 정보가 저장된다. 수동으로 수정하지 않는것이 좋다. 파일을 삭제하게 되면 배포 된 인스턴스를 Terraform이 더이상 관리하지 않는다 (import를 시키면 다시 관리 가능). 삭제 후 apply를 하게 되면 새로운 리소스가 생성된다.

terraform.tfstate.backup 파일 확인

terraform.tfstate.backup 바로 직전 상태를 보여주는 파일

# 인프라 리소스 삭제

리소스 삭제

삭제 후 terraform.tfstate 파일 확인