CGOA — GitOps 인증 어소시에이트 · 조정 루프와 드리프트 · 퀴즈
퀴즈: 조정 루프와 드리프트
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
Argo CD 에서 refresh 를 실행했을 때 실제로 일어나는 일은?
- Git 저장소의 최신 상태를 클러스터에 그대로 적용한다
- 실패한 sync 를 즉시 재시도한다
- 매니페스트를 다시 렌더하고 live 상태와 비교해 Sync/Health 상태만 갱신한다
- 클러스터의 현재 상태를 Git 에 커밋한다
3-way diff 에서 세 번째로 보는 상태(last-applied)가 없으면 생기는 문제는?
- Git 저장소의 커밋 이력을 알 수 없다
- Health Status 를 계산할 수 없다
- 우리가 관리한 적 없는 필드(다른 컨트롤러가 소유한 값)까지 지워야 할 차이로 오판한다
- 여러 클러스터를 동시에 관리할 수 없다
`syncPolicy.automated.selfHeal: true` 인 앱에서 장애 대응 중 `kubectl scale` 로 replicas 를 늘렸다. 이후 어떻게 되는가?
- Argo CD 가 변경을 감지해 Git 을 새 값으로 자동 커밋한다
- OutOfSync 로 표시되지만 값은 그대로 유지된다
- 해당 리소스가 prune 대상이 되어 삭제된다
- 다음 조정 루프에서 Git 에 선언된 값으로 되돌아간다
sync wave 에 대한 설명으로 옳은 것은?
- 현재 웨이브의 모든 리소스가 Healthy 가 될 때까지 다음 웨이브로 넘어가지 않는다
- 웨이브 번호가 높은 것부터 적용된다
- 웨이브는 PreSync 단계에서만 유효하다
- 같은 웨이브 안에서는 파일 이름 알파벳 순서로 적용된다
훅 삭제 정책(`argocd.argoproj.io/hook-delete-policy`)을 명시하지 않았을 때 적용되는 기본값과 그 효과는?
- BeforeHookCreation — 다음 sync 에서 새 훅을 만들기 직전에 이전 훅 리소스를 삭제한다
- HookSucceeded — 성공하면 즉시 삭제되어 로그를 볼 수 없다
- HookFailed — 실패했을 때만 삭제된다
- 기본값이 없어 훅 리소스가 영원히 쌓인다
`retry.backoff` 가 `duration: 5s`, `factor: 2`, `maxDuration: 3m` 일 때 재시도 대기 시간의 순서로 옳은 것은?
- 5s, 10s, 20s, 40s, 80s (이후 3분에서 상한)
- 5s, 7s, 9s, 11s, 13s
- 3m, 3m, 3m, 3m, 3m
- 5s, 25s, 125s, 625s