TL;DR
- OpenTofu v1.12.0은
lifecycle.prevent_destroy를 동적으로 설정할 수 있게 해 프로덕션 인스턴스에는 삭제 방지를 적용하고 개발·스테이징 인스턴스는 자유롭게 해체할 수 있게 함. - 이전에는
prevent_destroy가 정적 값이어야 해 같은 루트 모듈의 환경별로 삭제 방지를 다르게 설정하기 어려웠음. - 이제 변수값에 따라 삭제 방지를 설정할 수 있으며, 프로덕션에서는 활성화하고 개발 및 임시 인스턴스에서는 기본적으로 비활성화할 수 있음.
- 새로운
destroy = false수명 주기 옵션은 실제 인프라를 삭제하지 않고 리소스를 상태에서 제거하는 기능임. - 두 기능 모두 데이터베이스를 코드형 인프라(IaC)로 관리할 때 리소스 삭제에 대한 우려를 줄이는 안전 장치임.
동적 `prevent_destroy` 기능
- 5월에 출시된 OpenTofu v1.12.0의 주요 기능으로 동적
lifecycle.prevent_destroy를 소개함. - 이전에는
prevent_destroy에 정적 값만 지정할 수 있어 같은 루트 모듈을 사용하는 프로덕션 인스턴스에는 삭제 방지를 적용하고 개발·스테이징 인스턴스에는 적용하지 않으려면 추가 작업이 필요했음. - 이제
prevent_destroy값을 변수로 설정할 수 있어 다중 인스턴스 루트 모듈에서 인스턴스별로 삭제 방지 여부를 다르게 지정할 수 있음. - 프로덕션 루트 모듈 인스턴스는
prevent_destroy_enabled를true로 설정하고, 개발 및 임시 인스턴스는 기본값을false로 두어 별도 개입 없이 해체할 수 있음.
데이터베이스 관리와 안전성
- 이 기능은 안전한 인프라 관리 절차를 더 쉽게 적용할 수 있게 하는 사용자 경험(UX) 개선임.
- 대량의 데이터베이스를 관리하는 대형 고객이 IaC를 통한 데이터베이스 관리에서 리소스 삭제를 우려하는 사례를 봐 왔으며, 해당 기능이 우려를 덜고 도입을 촉진하는 데 조금이나마 도움이 될 것으로 봄.
- 함께 살펴볼 기능으로 새로운
destroy = false수명 주기 옵션이 있으며, 실제 인프라를 삭제하지 않고 리소스를 상태에서 제거함. - 이 옵션도 운영 이후 단계(day-2 operations)에서 활용할 수 있는 안전 장치임.
릴리스에 대한 평가
- OpenTofu 팀이 계속 기능을 출시하고 있어 반가움.
- 게시 시점은 2026년 9월 22일이며, 본문에는 OpenTofu v1.12.0이 5월에 출시됐다고 명시됨.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요