Terraform에서 taint와 untaint 명령어는 특정 리소스를 손상된 것으로 표시하거나 표시 해제하여, 다음 terraform apply 실행 시 해당 리소스를 강제로 재구성할 수 있게 합니다. 이는 리소스를 직접 수정하거나 특정 상태로 강제로 다시 만들고 싶을 때 유용합니다.

주고 Elastic IP를 재생성한다던지, 비정상적인 리소스를 처리하기 위해 사용합니다.

terraform taint 명령어

terraform taint 명령어는 특정 리소스를 손상된(tainted) 상태로 표시합니다. 손상된 리소스는 다음 terraform apply 실행 시 삭제된 후 다시 생성됩니다.

사용 예시

terraform taint aws_instance.example

이 명령어는 aws_instance.example 리소스를 손상된 상태로 표시합니다. 다음 terraform apply 실행 시 이 인스턴스는 삭제된 후 새로 생성됩니다.

그러나 위 명령어는 deprecated 되었기 때문에 아래 명령어로 대체할 수도 있습니다.

terrarform apply -replace="aws_instance_example[0]"

사용 상황

terraform untaint 명령어

terraform untaint 명령어는 이전에 손상된(tainted) 상태로 표시된 리소스를 원래 상태로 되돌립니다. 이렇게 하면 해당 리소스는 다음 terraform apply 실행 시 삭제 및 재생성되지 않습니다.