Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
Installation With Kubernetes Manifests


> kubectl apply -f https://raw.githubusercontent.com/google/metallb/v0.7.3/manifests/metallb.yaml


(yaml 파일의 버전은 metallb 홈페이지의 installation을 참고하여 적용하도록 한다.)



Installation With Helm


> helm install --name metallb stable/metallb

...

또한, Kubernetes에 의해 자동으로 프로비저닝되고 관리된다.

■ Kubernetes API Gateway Service Expose 시나리오

1) On-Premise 환경에서의 외부 로드 밸런서 구현 → MetalLB project 이용. (설치 및 설정은 위 내용 참고)

2) 노출 domain은 /path로 구분하되, Ingress Resource가 아닌, Zuul Gateway에서 처리한다.

   - Ingress Resource에서의 multi domain은, 구현된 외부 로드밸런서가 DNS와 연계된 최초 진입점이어야 한다.

3) Zuul Gateway를 LoadBalancer Type의 서비스로 등록한다. → MetalLB가 외부 IP 제공 (IP 영역을 MetalLB Config로 관리 - 위 내용 참고)

   - TLS 종단 처리(Https)를 Zuul Gateway LoadBalancer 서비스에서 처리

4) Zuul Gateway 서비스를 여러개로 등록하고, 해당 IP를 별도의 도메인으로 묶어, L7 스위치 장비 뒤에 위치 시킨다.

   - 로드 밸런서 뒤에 다시 복수 로드밸런서가 위치하는 모양새 → On-Premise 환경에서의 일반 노드 장비 안정성에 대한 대비

5) 기타 어드민 관련 서비스는 Ingress를 이용하여 별도의 외부 IP를 부여받고, /path로 구분 → /admin/kube-dashbord, /admin/eureka, /admin/grafana 등등