hongkunyoo / blog-comments

blog comments for utteranc.es
1 stars 0 forks source link

[번역] 쿠버네티스에서 쉽게 저지르는 10가지 실수 | 커피고래의 노트 #23

Open utterances-bot opened 3 years ago

utterances-bot commented 3 years ago

[번역] 쿠버네티스에서 쉽게 저지르는 10가지 실수 | 커피고래의 노트

쿠버네티스를 사용하면서 쉽게 저지르는 10가지 실수에 대한 번역글입니다. 원글을 읽고 공감가는 부분이 많아 기록으로 남기고자 번역하였습니다.

https://coffeewhale.com/kubernetes/mistake/2020/11/29/mistake-10/

hongkunyoo commented 3 years ago

Comment written by bajutae on 11/30/2020 02:15:36

좋은글 감사합니다.

Comment written by HongKun Yoo on 11/30/2020 08:35:43

관심 가져주셔서 감사합니다!

hongkunyoo commented 3 years ago

Comment written by 오리뎅이 on 12/09/2020 13:08:36

"쿠버네티스 서비스를 externalTrafficPolicy: Local로 설정하게 되면 모든 노드에 NodePort가 열리지 않고 실제로 Pod가 존재하는 노드에만 포트가 열리게 됩니다. 만약 AWS ELB와 같이 지속적으로 타겟 노드의 상태검사(health check)를 수행하는 외부 로드밸랜서를 사용하는 경우 사용자의 요청이 실제로 Pod가 존재하는 노드로만 전달되게 됩니다.(역자주: 해당 Pod가 없는 노드는 health check에서 실패하기 때문에 트래픽을 전달하지 않습니다.) 이것은 지연시간을 개선해주고 처리 속도와 높혀주며 아웃바운드 비용을 감소 시킵니다."

==> 위 부분 내용중에서요.
"모든 노드에 NodePort가 열리지 않고 실제로 Pod가 존재하는 노드에만 포트가 열리게 됩니다"

[Question] iptables에서 처리를 하도록 모든 Node의 iptables에 다 처리하도록 엔트리가 생성이 되는데요. NodePort가 열리지 않는다는 것은 어떤 의미일까요?

==> 그리고 이 부분요.
"만약 AWS ELB와 같이 지속적으로 타겟 노드의 상태검사(health check)를 수행하는 외부 로드밸랜서를 사용하는 경우 사용자의 요청이 실제로 Pod가 존재하는 노드로만 전달되게 됩니다"

[Question] NodePort는 process가 처리하는 것이 아닌데요. ELB가 pod를 직접 health check 하는 것이 아니라 노드의 health check를 하는데, 어떻게 pod가 존재하는지를 알 수 있는 것일까요?

제가 알고 있는 내용들과는 다른 부분들이라서 제가 모르는 뭔가 다른 부분이 있는 것 같아서 질문 드립니다. 실제로 저렇게 동작하였으면 하는 바램이 있는데요. 실무에서는 저렇게 동작을 시키지 못하겠더라구요.

Comment written by HongKun Yoo on 12/09/2020 13:26:15

안녕하세요, 관심가져 주셔서 감사합니다.
저도 쿠버네티스에 대해서 완벽히 다 알진 못하지만 질문에 대해 답을 드리자면,

[Question#1] Service 리소스의 externalTrafficPolicy 프로퍼티를 Local로 설정하는 경우(기본값: Cluster), 모든 Node에서 iptables을 통해 엔트리(NodePort)가 생성되지 않고 실제로 Pod가 존재하는 노드에서만 엔트리(NodePort)가 생성됩니다.

[Question#2] 말씀하신대로 ELB는 노드의 health check만 관장합니다. 하지만 externalTrafficPolicy를 Local로 하게 되는 경우, Pod가 없는 노드에서는 NodePort가 열리지 않게 됨으로 노드의 health check fail이 일어나게 되기 때문에 자연스럽게 Pod가 없는 노드에는 트래픽이 전달되지 않게 됩니다.

혹시 도움이 되었을련지요, 더 궁금하신 점이나 제가 잘못 아는 부분이 있다면 말씀해주세요~
감사합니다!

joonseolee commented 1 year ago

글 잘 읽었습니다 :)

cocofun0126 commented 10 months ago

도움되는글이었습니다. 감사합니다!