• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

트래픽 흐름

21.05.21 18:31 작성 조회수 243

1

설명해주신 도식상으로는 

SVC -> MetalLB -> Deployment 순서로 트래픽이 흐르는것 같습니다. 

MetalLB가 최상단에 노출되는 SVC의 일종인거죠?

SVC=로드밸런서 로 설정하여 서비스IP=로드밸런서IP가 되고, 트래픽은 MetalLB ->  Deployment -> 각 worker node 순으로 보면 될까요? 

감사합니다. 

답변 1

답변을 작성해보세요.

0

안녕하세요 

좋은 질문 감사합니다. 

MetalLB는 그러니까...GCP와 같은 클라우드 사에서는 이미 구현해 놓은 L4 LoadBalancer 입니다. 쿠버네티스는 일부 영역을 Plugin 형태로 구현하도록 하는데,  LoadBalancer가 그러한 서비스입니다. 따라서 현재와 같은 가상 환경 또는 온프레미스 환경에서는 이를 추가로 구현하거나 설치할 필요가 있습니다. 

그래서 MetalLB를 설치한 것이고, 이를 통해서 LoadBalancer 서비스를 쿠버네티스에서 쓸수 있다고 생각하시면 됩니다. 자매품 Porter라는게 있는데 강의 소개에 제가 발표한 자료를 보시거나...

https://www.youtube.com/watch?v=lqVaianMKA8&t=14s&ab_channel=OpenStackKoreaGroup

이 링크로 보시면 될꺼 같습니다 .:) 

그래서 결론적으로 질문 

#1 MetalLB가 최상단에 노출되는 SVC의 일종인거죠?

아 MetalLB는 LoadBalancer 서비스를 사용하게 해주는 플러그인(또는 도구)라고 생각하시면 될 것 같습니다. MetalLB를 설치하지 않으면 온프레미스 또는 가상 환경에서 LoadBalancer 서비스를 선언해도 IP가 제공되지 않습니다. 

제가 설명이 부족했나봐요 ㅠㅠ 다음 강의에서 더 많이 보강하겠습니다. 

#2 SVC=로드밸런서 로 설정하여 서비스IP=로드밸런서IP가 되고, 트래픽은 MetalLB ->  Deployment -> 각 worker node 순으로 보면 될까요? 

2-1.svc는 로드밸런서 타입으로 선언하는게 일단 맞고요 (MetalLB가 지원해주니까...)

2-2.서비스IP(external ip 얘기하시는거겠죠?)는 로드밸런서에서 제공해주는 external ip가 됩니다. 지금 일부로 좀 안 다뤘는데 그거 configMap이라는 곳에서 설정해서 그걸 입력 값으로 받습니다. 클라우드 사에서는 좀 다르고요 (자체적으로 IP Pool을 가지고 운용됨)

2-3.트래픽은 아주 큰 그림에서는 MetalLB(LoadBalancer 서비스) > worker node > 목적지 deployment 입니다. 사실 이건 많이 큰 그림이고, 추후에 쿠버네티스 네트워크에서 아주 깊게 다룰 예정입니다. 이거 관련해서는 이 질문&답변을 보시면 좋을꺼 같아요 :)

https://www.inflearn.com/questions/179366

보시고 추가 질문 있으면 편하게 주세요 :) 

조훈 드림.