개발/Infra

(인강복습) 쿠버네티스 어나더 클래스 Sprint 1 - Application 기능으로 이해하기 - Probe

희묭 2025. 4. 10. 13:22
startupProbe:
  httpGet:
    path: "/startup"
    port: 8080
  periodSeconds: 5
  failureThreshold: 36
readinessProbe:
  httpGet:
    path: "/readiness"
    port: 8080
  periodSeconds: 10
  failureThreshold: 3
livenessProbe:
  httpGet:
    path: "/liveness"
    port: 8080
  periodSeconds: 10
  failureThreshold: 3
  1. 기동중
    1. startupProbe : 10초에 한번씩 날림, 성공하면 중지
      1. 초기화되는동안은 실패
  2. 기동완료
    1. readinessProbe : 성공했을때 외부트래픽 받을수있도록함
      1. 내부API 성공 후에 외부API 성공
      2. 3번실패하면 트래픽연결 해제
    2. livenessProbe : 앱이살이있는지 체크해서 장애발생시 재기동
      1. 3번실패하면 재기동
  3. 일시적인장애시
    1. readinessProbe와 livenessProbe 의 주기를 같지않도록하면 일시적인장애에 대응할수있다 (case by case)
  4. 주의사항
    1. startupProbe 의 failureThreshold 를 적게 세팅하면 무한재부팅에 빠짐
    2. API를 날리는 법외에 커멘트호출을 할수도있다
      1. exec: command: ["cat", "/usr/src/myapp/datasource/postgresql-info.yaml"]