Probe

raccoonback·2020년 3월 6일
0

kubernetes

목록 보기
2/3
post-thumbnail

활성 프로브(livenessProbe)

  • 컨테이너가 작동하고 있는지 확인하는 헬스체크 기능
  • 주기적으로 해당 경로로 요청해 헬스체크
  • 2XX, 3XX 상태코드로 응답하지 않거나 응답하지 않으면, 죽은 것으로 판단하여 컨테이너 다시 실행
  • httpGet 아닌 tcpSocket, exec(임의의 명령어 실행) 으로 체크 가능
# 활성 상태 체크
# 2XX, 3XX 상태코드로 응답하면 활성상태로 판단
# 다른 값이면 죽은상태로 판단
livenessProbe:
  httpGet:
    path: {{ .path }}
    port: {{ .port }}
  # 첫 번쨰 활성 프로브를 보내기 전까지 얼마나 기다려야 하는지 설정
  initialDelaySeconds: {{ .initialDelaySeconds }}
  # 활성 프로브 요청 주기
  periodSeconds: {{ .periodSeconds }}
  httpHeaders:
  - name: header 명
    value: header 값 지정

준비성 프로브(readinessProbe)

애플리케이션 초기화 과정이 긴 경우 완료될 때까지 오래 기다린 후 요청을 받아야 함.
따라서, 애플리케이션은 완료될 때까지 요청을 처리할 수 없다는 것을 쿠버네티스에 알려주어야 함.
이러한 신호를 '준비성 프로브'라 부름.

  • 파드가 시작되면 쿠버네티스는 컨테이너가 실행상태가 되자마자 트래픽을 전달.
  • 준비성 프로브가 설정했다면 성공 메시지를 받을때까지 대기하여, 준비되지 않은 컨테이너 때문에 발생하는 사용자 에러 예방 가능
# 애플리케이션 준비 여부 체크
# 2XX 상태코드로 응답하면 Ready 상태로 판단
# 다른 값이면 죽은상태로 판단하고 해당 Pod 로 트래픽을 보내지 않음
readinessProbe:
  httpGet:
    path: {{ .path }}
    port: {{ .port }}
  initialDelaySeconds: {{ .initialDelaySeconds }}
  periodSeconds: {{ .periodSeconds }}
profile
한번도 실수하지 않은 사람은, 한번도 새로운 것을 시도하지 않은 사람이다.

0개의 댓글