LabHub

Terraform/OpenTofu 기초 · plan 읽는 법 · 퀴즈

퀴즈: plan 읽는 법

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. 계획에서 `-/+` 표시가 뜻하는 것은?

    1. 삭제한 뒤 다시 만든다
    2. 새로 만든 뒤 옛것을 삭제한다
    3. 데이터 소스를 읽기만 한다
    4. 제자리에서 속성만 수정한다
  2. `terraform plan -detailed-exitcode` 가 2 를 반환했다면?

    1. 오류가 발생했다
    2. 변경 사항이 있다
    3. 변경 사항이 없다
    4. 잠금 획득에 실패했다
  3. 계획을 `-out` 으로 파일에 저장한 뒤 그 파일로 적용해야 하는 이유는?

    1. 리뷰한 계획과 실제로 적용되는 계획이 같다는 것을 보장하기 위해
    2. 계획 파일에 직전 상태가 함께 담겨 적용이 실패해도 되돌릴 수 있기 때문
    3. 계획 파일이 없으면 apply 가 승인 프롬프트를 건너뛰고 곧바로 실행되기 때문
    4. 계획 파일을 거치지 않으면 apply 가 상태의 `serial` 을 올리지 않기 때문
  4. 계획 JSON 의 `resource_drift` 에 담기는 것은?

    1. 삭제 예정 리소스의 속성을 통째로 담아 둔 백업
    2. 프로바이더가 계획 중에 보고한 경고와 사용 중단 안내
    3. 이번 apply 로 실제 적용될 변경 동작의 전체 목록
    4. 조회 단계에서 발견한, 코드 밖에서 이미 벌어진 변경
  5. `-target` 을 쓸 때 도구가 경고를 내는 이유는?

    1. 대상에서 빠진 리소스가 상태에서 제거되어 상태 파일이 망가지기 때문에
    2. 옵션을 한 번에 하나만 줄 수 있어 여러 리소스를 함께 지정할 수 없기 때문에
    3. 그래프의 일부만 처리해 나머지가 코드와 어긋난 채 남을 수 있어서
    4. 다음 메이저 버전에서 없어질 예정이라 대체 문법으로 옮겨야 하기 때문에
  6. 프로바이더 메이저 버전을 올린 뒤 수백 개 리소스에 변경이 떴습니다. 가장 먼저 할 일은?

    1. 잠금 파일을 되돌려 이전 프로바이더 버전으로 다시 고정하고 업그레이드를 보류한다
    2. 계획을 JSON 으로 뽑아 동작별로 세어, 실제 인프라 변경인지 상태 속성 채움인지 구분한다
    3. 상태 파일을 지우고 모든 리소스를 새 프로바이더로 다시 import 한다
    4. 곧바로 적용해 새 프로바이더가 기대하는 형태로 상태를 한 번에 맞춰 둔다