피드로 돌아가기
django-deploy-probes — deployment probe endpoints for Django
Dev.toDev.to
DevOps

Kubernetes Probe 최적화를 위한 Django 전용 헬스체크 엔드포인트 표준화

django-deploy-probes — deployment probe endpoints for Django

redryan2026년 5월 24일1beginner

Context

프로젝트별로 상이한 Health Check 구현 방식으로 인한 운영 일관성 결여. Liveness Check와 Dependency Check의 혼재로 인한 오탐지 및 불필요한 컨테이너 재시작 위험 존재.

Technical Solution

  • Kubernetes Probe 표준 규격에 맞춘 /healthz, /readyz, /startupz, /version 엔드포인트 분리 설계
  • /healthz 내 외부 의존성 체크를 배제하여 Liveness Probe의 경량화 및 False Positive 방지
  • Database, Redis, Celery 등 외부 Dependency 검증 로직을 /readyz 및 /startupz로 격리하여 Readiness 상태의 정확성 확보
  • 설정 기반의 Explicit Enable 방식을 통한 서비스 환경별 의존성 체크 커스터마이징 지원
  • 단순 반복되는 Deployment Logic을 패키지화하여 프로젝트 간 설정 표준화 달성

- Liveness Probe(/healthz)에는 애플리케이션 생존 여부만 확인하는 최소한의 로직만 배치 - DB 연결성 등 외부 의존성 확인은 Readiness Probe(/readyz)에서 처리하여 트래픽 유입 제어 - 초기화 시간이 긴 서비스의 경우 Startup Probe(/startupz)를 통해 초기 기동 시간 보장

원문 읽기