Search

쿠버네티스 Pod 헬스 체크

생성일
2024/09/01 08:41
Category
Kubernetes
태그
Kubernetes

쿠버네티스 Pod 헬스 체크

목적

쿠버네티스의 Pod 헬스 체크에 대해 정리한다.

내용

쿠버네티스 Pod 에는 Probe 라고 하는 헬스 체크 기능이 있다.
Probe 를 사용하지 않아도 Pod 가 Running 상태로 동작하기는 하지만, Pod 내에 애플리케이션이 정상적으로 동작한다고 보장할 수는 없다.
즉, Pod 내에 애플리케이션이 문제없이 정상적으로 실행되고 있는지까지 체크가 필요한데 쿠버네티스에서는 Probe 라는 이름으로 기능을 제공하고 있다.
Probe 의 종류에는 3가지가 있는데 대부분 Liveness Probe Readiness Probe 에 대해서만 적용하는 것 같은데 Startup Probe 도 적용하는 것이 좋다.
1.
Liveness Probe
2.
Readiness Probe
3.
Startup Probe

Startup Probe

Probe 들의 기능은 아래와 같다.
각각의 역할이 있고, 헬스체크에 실패 했을때 발생되는 동작도 모두 다르다.
Probe 종류
역할
실패 시 동작
Liveness Probe
파드 내부의 컨테이너가 정상 동작 중인지 확인
컨테이너 재기동
Readiness Probe
파드가 요청을 받아들일 수 있는지 확인
트래픽 차단 (파드를 재기동하지 않음)
Startup Probe
파드의 첫 번째 기동이 완료되었는지 확인
다른 Probe 실행을 시작하지 않음
Liveness Probe Readiness Probe 과 비교했을때 상대적으로 정보가 적은 Startup Probe 에 대하여 정리한다.
Startup Probe 는 파드가 처음 기동이 완료 되었는지 확인하기 위한 헬스 체크다.
Startup Probe 가 끝날 때까지는 Liveness Probe나 readiness Probe가 시작되지 않으며,
해당 파드가 서비스 되거나 정지되지 않는다.
apiVersion: v1 kind: Pod metadata: name: seoul-foobar-startup spec: containers: - name: seoul-foobar-container image: amsy810/tools:v2.0 startupProbe: httpGet: path: /health port: 80 scheme: HTTP faiureThreshold: 100 periodSeconds: 3
YAML
복사