패스잇
인프라 & 클라우드 · 심화

쿠버네티스에서 Deployment의 롤링 업데이트가 진행되는 도중 일부 트래픽이 5xx를 반환하는 현상이 보고됐습니다. readinessProbe, terminationGracePeriod, preStop 훅이 이 문제와 어떻게 연관되는지 설명해주세요.

힌트 · 엔드포인트에서 파드가 제거되는 시점과 SIGTERM 처리·연결 드레이닝의 타이밍 불일치 관점에서 접근하세요.

readinessProbeterminationGracePeriodSecondspreStopHooknewReplicaSetoldReplicaSet

모범답안

Deployment 롤링 업데이트 중 5xx 오류는 주로 새 파드 준비 완료 시점과 기존 파드 트래픽 종료 시점 간의 타이밍 불일치로 발생합니다.

readinessProbe는 파드가 트래픽을 받을 준비가 되었는지 판단합니다. 이 프로브가 통과해야 서비스가 해당 파드로 트래픽을 보내기 시작합니다. 만약 새 파드의 readinessProbe가 너무 빨리 통과하거나, 기존 파드가 아직 트래픽을 처리 중인데 엔드포인트에서 제거되면 문제가 발생할 수 있습니다.

terminationGracePeriodSecondspreStopHook은 파드 종료 시점에 중요합니다. terminationGracePeriodSeconds는 파드가 종료 신호(SIGTERM)를 받은 후 정상적으로 종료될 시간을 제공합니다. preStopHook은 이 기간 동안 실행되어, 파드가 더 이상 새 요청을 받지 않도록 하고 기존 요청을 안전하게 처리하도록 할 수 있습니다.

이 둘이 제대로 설정되지 않으면, SIGTERM을 받은 기존 파드가 아직 요청을 처리 중인데 엔드포인트에서 제거되어 5xx 오류를 반환하거나, 새 파드가 완전히 준비되지 않은 상태에서 트래픽을 받게 되어 오류가 발생할 수 있습니다. 즉, readinessProbe로 새 파드의 준비 상태를, terminationGracePeriodSecondspreStopHook으로 기존 파드의 안전한 종료를 보장하는 것이 중요합니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 DevOps / CI·CD 면접 질문

← DevOps / CI·CD 면접 질문 전체 보기