inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CloudNet@ - Amazon EKS 확장판 강의

Readiness Probe, Graceful Shutdown, Termination Grace Period

Readiness Probe 관련 질문드립니다.

4

ssunn0812

작성한 질문수 2

0

안녕하세요. Readiness Probe 관련해 궁금한 부분이 생겨 질문드립니다.

강의에서 Rolling Update 중, 대상 그룹의 신규 Pod 대상이 Active 상태로 진입하기 전에 기존 Pod 대상이 Draining 상태로 전환되어 통신이 불가능한 상황에 Readiness Probe 설정으로 이를 개선할 수 있다고 하셨습니다.

image.png

하지만 위와 같은 상황에서 ALB 대상 그룹에서 new Pod(1)이 Initial 상태이고 old Pod(1)이 draining 상태인 경우, 통신이 불가능하다고 생각했습니다. (15초와 27초 사이)
따라서 이 문제는 Readiness Probe만으로 해결된다기보다는 Readiness Probe, Pod Graceful Shutdown, Termination Grace Period 세 가지 설정을 같이 사용할 때 개선될 수 있는 것으로 이해했습니다. 제가 제대로 이해한 것이 맞는지 궁금합니다.

또한 찾아보니 Readiness Gate를 사용하면 Pod가 ALB 대상 그룹에서 healthy인지 확인 후에 기존 Pod를 종료할 수 있다고 하는데, 이러한 설정도 실무에서 자주 사용하는지 궁금합니다.

감사합니다.

aws kubernetes security observability eks

답변 1

0

Ongja_CloudNet@

안녕하세요. CloudNet@ 팀입니다.

좋은 질문 감사합니다. :)

결론부터 말씀드리면, 말씀하신 방향의 이해가 맞습니다.

실제로는 Readiness Probe만으로 완전히 해결된다기보다는, 여러 설정이 함께 동작해야 안정적인 Rolling Update가 가능한데요.

Readiness Probe는 기본적으로 Pod가 트래픽을 받을 준비가 되었는지 확인하는 역할입니다.

다만 AWS ALB 환경에서는..

  • Kubernetes Ready 상태

  • ALB Target Group Healthy 상태

사이에 시간 차이가 발생할 수 있습니다.

그래서 실무에서는 보통..

  • Readiness Probe

  • Graceful Shutdown

  • terminationGracePeriodSeconds

  • ALB Deregistration Delay

등을 함께 고려해서 무중단 배포를 구성합니다.

 

그리고 질문 주신 Readiness Gate 역시 좋은 포인트인데요.

AWS Load Balancer Controller의 Pod Readiness Gate를 사용하면, ALB Target Group에서 Healthy 상태가 확인된 이후 Pod를 Ready로 판단할 수 있어서, 보다 안정적인 Rolling Update 구성에 도움이 될 수 있습니다.

 

다만 모든 환경에서 반드시 사용하는 것은 아니며, 서비스 특성과 운영 방식에 따라 선택적으로 적용하는 경우가 많습니다.

즉, 각 환경에 따른 적절한 튜닝이 필요한 것이죠. :)

좋은 포인트를 잘 짚어주셨습니다.

감사합니다~

강의 외 개념 및 시험 관련 질문

0

7

1

구매후 바로 질문 하나만요..

0

30

1

강사님 가이드 부탁드립니다.

1

26

1

localhost:30000 접속 안되는 문제 관련 질문

0

35

2

Guest OS

1

34

2

sprint 강의 내용 보이지 않음

1

30

2

수강기간 연장 부탁드립니다.

0

33

2

강의가 예전 강의라 그런지 녹화영상이랑 다른부분이 있습니다

0

19

1

기간 연장 부탁드립니다. 시험 준비하는데 시간이 부족합니다. 감사합니다.

0

34

2

pm2 가 설치가안됩니다

0

36

2

part 2 강의 일정

1

24

1

설치 관련 문의

0

40

2

Docker Desktop 설치 관련 질문

0

45

2

세부 모니터링 질문입니다

0

24

2

인스턴스생성(VPC)

0

19

1

kubeTM Blog는 없어진건가요????

1

34

2

[문의] 강의 연장 가능할까요?

0

30

2

내장형 톰캣일경우

0

27

2

configmap 을 환경변수로 사용할 때 파드 적용 시점 문의

1

32

2

Docker + Spring Boot CI/CD 방법

0

38

2

gateway 생성 후 접속 확인 질문

0

46

2

BationHost에서 AWS CLI 접속 실패

1

74

2

ch1 external-dns pod 관련 버전 오류와 해결 방법 후 추가 오류 사항

1

121

2

terraform plan 오류

1

334

2