쿠버네티스 어나더 클래스 sprint1-8 Pod(probe)

KIM HYUNMIN·2025년 5월 28일

쿠버네티스

목록 보기
16/16


출처: https://www.openmaru.io/kubernetes-%EC%97%90%EC%84%9C-pod-%EC%97%90-%EB%8C%80%ED%95%9C-%ED%97%AC%EC%8A%A4%EC%B2%B4%ED%81%AC-probe

Kubernetes Probe는 컨테이너의 상태를 지속적으로 모니터링 하고, 문제가 발생하면 자동으로 조치를 취하는 Kubernetes 기능입니다. 이런 기능으로 서비스의 가용성, 신뢰성을 유지할 수 있습니다.

Probe

동작방식

  1. HTTP 방식: HTTP GET 요청을 보내서 2XX 또는 3XX 응답이 오는지 체크한다.
    2.TCP 방식: TCP의 3-Way Handshake가 잘 맺어졌는지 체크한다.
  2. Exec 방식:컨테이너에 특정 명령을 실행해서 종료 코드가 0인지 체크한다.

진단결과는 크게 Success,Failure,Unknown의 세가지로 구분

Probe는 크게 Startup Probe,Liveness Probe,Readiness Probe가 있다.

  1. Startup Probe: 컨테이너가 정상 구동되는 시점을 감지한다. 그 전까지는 다른 프로브의 동작을 막고, 해당 시점을 기준으로 자기 자신의 역할을 종료한 뒤 프로브 기능을 다른 프로브들에게 넘긴다.
  2. Liveness Probe: 컨테이너가 멈추거나 비정상 종료 되는 상황이 감지되면 해당 컨테이너를 재시작 시킨다.
  3. Readiness Probe: 컨테이너가 요청을 처리할 수 없는 상황이 감지되면 해당 파드로의 트래픽을 중지 시킨다. 파드 자체는 건드리지 않는다.

  1. startupProbe
    • 역할: 앱 초기화 완료 여부 확인
    • 주요 시점: 컨테이너 시작 직후
    • 성공 전까지 livenessProbe, readinessProbe는 작동 안 함
    • 실패 시: 컨테이너 재시작
    • 성공 후: 다른 프로브로 전환됨

→ 앱이 시작될 때까지 기다려주는 역할

  1. livenessProbe
    • 역할: 앱이 살아있는지 체크
    • 지속적인 헬스체크
    • 연속 실패 시: Pod 재시작
    • 성공 시: 정상 동작 유지

→ 앱 자체가 죽었는지 감지

  1. readinessProbe
    • 역할: 앱이 트래픽 받을 준비됐는지 확인
    • 실패 시: Service에서 연결 해제 (트래픽 X)
    • 성공 시: Service 연결 재개

→ 트래픽을 받을 준비가 안 됐으면 자동으로 연결 해제

profile
Linux,Window,Network,docker,kubernets

0개의 댓글