Terraform/OpenTofu Fundamentals
Quiz: Refresh and the Order of Destruction
한국어 원문으로 표시합니다.
tofu apply -refresh-only 를 적용하면 무엇이 바뀌는가?
- 코드가 실물에 맞춰 자동으로 수정되고 상태는 그대로다
- 실물이 상태에 맞춰 되돌아가고 상태는 그대로다
- 상태만 실물에 맞춰 바뀌고 실물은 하나도 건드리지 않는다
- 상태와 실물이 모두 코드 기준으로 맞춰진다
밖에서 파일이 바뀐 직후 tofu plan -refresh=false 가 'No changes' 를 냈다. 옳은 해석은?
- 상태와 실물이 정말로 같다는 뜻이므로 안심하고 적용해도 된다
- 옵션이 잘못돼 계획이 반쯤만 세워졌으므로 다시 돌려야 한다
- 변경이 있지만 파괴가 섞여 있어 출력에서 감춰진 것이다
- 실물을 읽지 않아 상태에 적힌 값을 사실로 믿은 결과다
네트워크 → 데이터베이스 → 애플리케이션 순으로 만들어진 사슬을 파괴하면 지워지는 순서는?
- 애플리케이션 → 데이터베이스 → 네트워크
- 네트워크 → 데이터베이스 → 애플리케이션
- 설정 파일에 적힌 블록 순서 그대로
- 서로 의존이 없는 것으로 보고 무작위 병렬로
파괴 계획을 파일로 저장했다가 그 파일을 적용하는 방식의 장점으로 가장 알맞은 것은?
- 저장한 계획은 상태 잠금을 잡지 않아 다른 작업과 겹쳐도 안전하다
- 리뷰한 내용과 실제로 지워지는 것이 정확히 같음을 보장할 수 있다
- 저장한 계획은 의존 순서를 무시하고 병렬로 지워 시간이 줄어든다
- 적용 뒤에도 그 파일로 지운 자원을 되살릴 수 있다
tofu destroy -target=... 출력에 경고가 붙는 이유는?
- 대상을 좁히면 상태 잠금을 잡지 못해 동시 실행 위험이 생기기 때문이다
- 대상을 좁히면 해당 자원이 상태에서만 빠지고 실물은 남기 때문이다
- 대상을 좁히면 저장한 계획 파일이 무효가 되어 다시 뽑아야 하기 때문이다
- 전체 그래프의 일관성을 도구가 아니라 사람이 책임지게 되기 때문이다
모든 자원을 파괴한 뒤 상태 파일은 어떻게 되는가?
- 항목과 출력은 비지만 파일과 혈통 번호는 남고 일련번호가 올라간다
- 파일이 삭제되고 다음 적용 때 새 혈통 번호로 다시 만들어진다
- 파일은 남지만 혈통 번호가 새로 발급되어 이전 기록과 끊어진다
- 항목은 남고 각 항목에 파괴됨 표시만 붙어 이력으로 보존된다