LabHub

Ansible 실전 · 조건과 반복 · 퀴즈

퀴즈: 조건과 반복

LabHub 에서 이어서 보기

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

  1. `loop` 와 `when` 을 함께 쓰면 조건은 언제 평가되나요?

    1. 반복이 모두 끝난 뒤
    2. 첫 항목에서만
    3. 반복 시작 전 한 번
    4. 반복의 각 항목마다
  2. `loop_control.label` 을 지정하지 않으면 생기는 실질적 문제는?

    1. label 이 없으면 반복이 첫 항목에서 끝나 한 번만 돌고 만다
    2. 태스크 본문에서 `item` 변수를 참조할 수 없어 값을 못 쓴다
    3. 항목 딕셔너리 전체가 로그에 찍혀 그 안의 민감한 값까지 노출된다
    4. 항목마다 붙인 `when` 조건이 무시되고 전부 실행된다
  3. `until`/`retries`/`delay` 를 쓸 때 함께 해야 할 판단은?

    1. until 은 loop 와 함께 쓸 때만 동작하므로 반복 목록을 먼저 만든다
    2. 재시도 횟수는 넉넉할수록 안전하므로 상한을 최대한 크게 잡아 둔다
    3. delay 는 기본값인 1초를 유지해야 재시도가 정상 동작한다
    4. '이 시간 안에 안 되면 진짜 문제'라는 기준을 정해 횟수와 간격에 반영한다
  4. 환경 3개 × 컴포넌트 2개 × 리전 5개를 조합 반복하면 몇 번 도나요? 그리고 그 함의는?

    1. 5회, 가장 긴 리스트의 길이에 맞춰 나머지가 잘린다
    2. 호스트 수에 따라 달라지므로 횟수가 미리 정해지지 않는다
    3. 10회, 리스트 길이의 합이므로 부담이 크지 않다
    4. 30회, 실행 시간과 로그가 곱으로 늘어나므로 계산에 넣어야 한다
  5. 파일 패턴 조회(fileglob)의 결과를 다룰 때 주의할 점은?

    1. 결과가 항상 파일 이름 알파벳 순으로 정렬돼 오므로 그대로 써도 된다
    2. 결과 순서가 보장되지 않으므로 순서에 의존하지 말고 필요하면 정렬한다
    3. 제어 노드가 아니라 원격 호스트의 파일만 조회하므로 경로를 맞춘다
    4. 패턴에는 와일드카드를 쓸 수 없어 파일 이름을 전부 적어야 한다
  6. 반복 태스크가 멱등하지 않을 때 나타나는 증상은?

    1. 첫 실행에서 중간 항목부터 오류가 나며 반복 태스크가 통째로 실패한다
    2. loop 변수가 앞 항목의 값을 그대로 물고 있어 초기화되지 않는다
    3. 두 번째 실행에서 반복 횟수만큼 changed 가 나 재실행이 안전하지 않게 된다
    4. 통지를 받은 핸들러가 반복 항목 수만큼 되풀이해 발화하며 서비스를 흔든다