오전 10시 43분, 슬랙에 알람이 울렸습니다.
[ALERT] Deployment `api-server` — Pod 3개 CrashLoopBackOff, RESTARTS: 7회
신규 배포(v2.1.0) 직후 발생. 전체 API 요청 실패 중.
당신은 온콜 담당자입니다. 방금 v2.1.0을 배포했는데, Pod들이 죽고 살아나기를 멈추지 않습니다. RESTARTS가 7이라는 건 지수 백오프로 이미 10분 넘게 서비스가 완전히 다운된 상태입니다. 고객 CS팀에서 "결제 API가 안 된다"는 문의가 쌓이고 있습니다.
CrashLoopBackOff는 Kubernetes가 "무언가 잘못됐음"을 알려주는 신호입니다. 원인은 환경변수 누락, OOM, liveness probe 오설정, 이미지 버그 중 하나입니다. 틀린 방향으로 수정하면 같은 CrashLoop가 반복됩니다.
다음 순서로 장애를 처리합니다:
1. kubectl get pods → describe — CrashLoopBackOff Pod 특정 + Events 첫 단서
2. kubectl logs --previous — 컨테이너가 죽기 직전 남긴 에러 메시지 확인
3. 원인 분류 — exit code + 로그로 환경변수/OOM/probe 중 하나로 좁힌다
4. Deployment 수정 + rollout — 원인에 맞는 필드를 수정하고 Running 복구 확인
5. 이벤트 보존 + 재발 방지 — 1시간 후 사라질 증거를 저장하고 팀에 공유