• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

externalTrafficPolicy설정

21.12.02 11:48 작성 조회수 114

1

externalTrafficPolicy를 local로 설정하면 해당 노드를 직접 찍어야만 서비스가 가능한건가요??

3대의 worker중에 2대만 서비스중이면 어떻게 서비스를 해야(찾아야?) 되는건가요??

답변 2

·

답변을 작성해보세요.

1

장태환님의 프로필

장태환

질문자

2021.12.03

음 그럼 externalTrafficPolicy는 특정 노드에만 구동되게 설정하거나 전체 노드에서 구동(node_expoter?)하는 케이스에서만 사용이 가능할까요??

네 이론상 그렇습니다^^

저도 실무에서 해당 기능을 꼭 써야하는 경우가 없었어서 답변에 한계가 있는점 양해바라고요.

쓴다고 했다면 daemonSet으로 설치되는 app인데 트래픽을 많이 받아서. 조금이라도 네트워크 부하를 줄여주고 싶을 경우인데. 

가능한 케이스로 nginx를 daemonSet으로 설치해서 쓸 수가 있고. 네트워크 부하를 조금이라도 줄이기 위해 해당 속성을 쓸수 있을꺼 같아요

1

안녕하세요

externalTrafficPolicy를 설정를 왜 해야되는지부터 말씀드리면,

결국 network 홉 수를 줄이기 위해서입니다.

LB에서 특정 워커노드로 트래픽이 갔을때 Service는 각 Pod에 균등하게 트래픽을 분산시켜 주기 위해서 꼭 자신의 워커노드에 있는 서비스가 아닌 다른 워커노드에 있는 Pod로 트래픽을 또 포워딩 합니다.

그래서 네트워크 트래픽을 줄일 목적으로 externalTrafficPolicy를 쓰고 externalTrafficPolicy를 썼을때의 전제 사항이 모든 워커노드에 Pod가 올라가져 있어야 하는거라.

질문주신 내용으로 봐선 externalTrafficPolicy를 쓰려고하지만 모든 워커노드에 pod를 두진 않겠다라 의미로 보이는데, 그럴경우 쿠버네티스에선 pod가 없는 워커노드로 트래픽이 갔을때 서비스가 안되는게 맞는 동작입니다.

감사합니다.