Infrastructure as Code · 멱등성 · 퀴즈
퀴즈: 멱등성
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
멱등성의 정의로 가장 정확한 것은?
- 한 번만 실행되도록 막는 성질
- 실패하면 자동으로 되돌아가는 성질
- 같은 작업을 여러 번 실행해도 결과가 동일한 성질
- 여러 서버에 동시에 적용되는 성질
내 자동화가 멱등한지 확인하는 가장 실무적인 방법은?
- 코드 리뷰에서 사람이 직접 눈으로 확인한다
- 테스트 커버리지를 100% 로 올린다
- 두 번째 실행이 더 빨리 끝나는지 본다
- 연속으로 두 번 적용한 뒤 두 번째 plan 이 변경 없음(종료코드 0)인지 본다
설정 파일에 한 줄을 추가하는 작업을 `>>` 로 구현했다. 무엇이 문제인가?
- 파일 권한이 초기화된다
- 다른 줄이 지워진다
- 문제 없다. 표준적인 구현이다
- 실행할 때마다 같은 줄이 쌓여 실행 횟수에 따라 결과가 달라진다
전용 모듈 대신 shell/command 로 명령을 직접 실행해야 할 때 멱등성을 지키는 방법은?
- 명령 앞에 sleep 을 넣어 간격을 둔다
- `creates=` / `removes=` 같은 조건을 붙여 이미 끝난 작업은 건너뛰게 한다
- 매번 그냥 실행하되 로그를 남겨 둔다
- 권한 실패를 막으려고 언제나 반드시 root 로 실행한다
운영 서버에 적용하기 전에 무엇이 바뀔지 미리 확인하려면?
- 일단 적용하고 문제가 생기면 되돌린다
- 로그 레벨만 올린다
- check mode 와 diff 를 함께 써서 변경될 내용을 미리 본다
- 병렬 실행 수를 1 로 줄인다
리소스 4개를 관리하는 러너를 두 번 연속 실행했다. 멱등하다면 두 번째 실행의 요약은?
- changed=4 unchanged=0
- changed=2 unchanged=2
- changed=1 unchanged=3
- changed=0 unchanged=4