LabHub

CKAD — 쿠버네티스 애플리케이션 개발자 · 관측성과 유지보수 · 퀴즈

퀴즈: 관측성과 유지보수

LabHub 에서 이어서 보기

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

  1. readinessProbe 가 연속 실패했을 때 쿠버네티스의 동작은?

    1. 파드를 Service 엔드포인트에서 제거하고 컨테이너는 그대로 둔다
    2. 파드를 삭제하고 ReplicaSet 이 새로 만들게 한다
    3. 파드를 다른 노드로 재스케줄한다
    4. 컨테이너를 재시작한다
  2. startupProbe 를 붙인 컨테이너에서 liveness/readiness 프로브는 언제부터 동작하는가?

    1. startupProbe 가 처음 성공한 뒤부터 동작한다
    2. startupProbe 와 동시에 시작하되 실패는 무시된다
    3. startupProbe 가 있으면 liveness 는 영구히 비활성화된다
    4. `initialDelaySeconds` 가 지나면 startupProbe 와 무관하게 동작한다
  3. CrashLoopBackOff 인 파드에서 **재시작 직전** 컨테이너가 남긴 로그를 보려면?

    1. `kubectl describe pod POD`
    2. `kubectl logs POD --previous`
    3. `kubectl logs POD --since=1h`
    4. `kubectl logs POD --tail=-1`
  4. 컨테이너가 세 개인 파드에서 `worker` 컨테이너의 최근 10분 로그만 보려면?

    1. `kubectl logs POD worker --since=10m`
    2. `kubectl logs POD --container=worker --tail=10m`
    3. `kubectl logs -l app=worker --since-time=10m`
    4. `kubectl logs POD -c worker --since=10m`
  5. 셸이 없는 distroless 이미지로 만든 파드 안을 조사해야 한다. 가장 적절한 방법은?

    1. `kubectl attach POD` 로 표준 입출력에 연결한다
    2. `kubectl debug -it POD --image=busybox --target=CONTAINER` 로 임시 컨테이너를 붙인다
    3. `kubectl cp` 로 셸 바이너리를 컨테이너에 복사한 뒤 exec 한다
    4. `kubectl exec -it POD -- sh` 로 접속한다
  6. `terminationMessagePolicy: FallbackToLogsOnError` 의 효과는?

    1. 종료 메시지를 무시하고 항상 로그만 남긴다
    2. 컨테이너 로그 전체를 언제나 종료 메시지로 대신 사용한다
    3. 종료 메시지 파일이 비어 있고 컨테이너가 비정상 종료했을 때 로그의 마지막 부분을 종료 메시지로 채운다
    4. 오류 발생 시 로그를 외부 저장소로 전송한다
  7. 레플리카 3인 Deployment 에 `minAvailable: 2` 인 PDB 를 걸었다. 옳은 설명은?

    1. 노드가 갑자기 죽어도 항상 2개는 살아 있도록 보장된다
    2. 노드 drain 같은 자발적 중단에서 한 번에 하나까지만 축출되며, 노드 장애 같은 비자발적 중단은 막지 못한다
    3. HPA 가 레플리카를 2 아래로 줄이지 못하게 막는다
    4. 롤링 업데이트에서 maxUnavailable 을 1로 강제한다