이번에는 테라폼에서 리소스를 강제로 교체하는 방법을 알아보자
https://github.com/tedilabs/fastcampus-devops/blob/main/2-terraform/05-variable-local-output/main.tf
GitHub - tedilabs/fastcampus-devops: 🚀 패스트캠퍼스 데브옵스 초격차 코스 자료
🚀 패스트캠퍼스 데브옵스 초격차 코스 자료. Contribute to tedilabs/fastcampus-devops development by creating an account on GitHub.
github.com
위 링크에서 코드를 복붙해서 apply를 하면 vpc와 서브넷 라우트테이블이 생성된다.
terraform taint 명령어는 리소스를 비정상적인 상태로 표시시킨다.
만약 인터넷 게이트웨이에서 문제가 생겨서 새로 리소스를 교체해야 하는 상황이 생겼다고 가정해보자
그럼 terraform taint "module.vpc.aws_internet_gateway.this[0]" 명령어를 통해 해당 리소스를 비정상으로 표시가 된다,
따라서 apply를 진행하면 자동적으로 인터넷 게이트웨이가 replaced 되는 걸 볼 수 있다.
terraform untaint 명령어는 비정상적인 상태로 표시되는 리소스를 정상 상태로 표시시킨다.
apply시에는 -replace=[resource]라는 리소스를 강제로 교체시키는 옵션이 있다.
terraform apply -replace "module.vpc.aws_internet_gateway.this[0]" 명령어는
즉 terraform taint "module.vpc.aws_internet_gateway.this[0]" 와 같은 효과를 일으킨다.
'AWS > Part 4. Ch02 테라폼을 이용한 인프라 관리' 카테고리의 다른 글
CH02_15. 테라폼 모듈 작성 방법 (0) | 2022.06.04 |
---|---|
CH02_13. 테라폼 워크스페이스 관리 (0) | 2022.06.03 |
CH02_11. 테라폼 상태 관리 (0) | 2022.06.03 |
CH02_10. 테라폼 상태 저장소 (Backend) (0) | 2022.06.03 |
CH02_09. 테라폼 HCL 반복문(For) (0) | 2022.06.02 |