Skip to content

Latest commit

 

History

History
60 lines (56 loc) · 1.26 KB

008.md

File metadata and controls

60 lines (56 loc) · 1.26 KB

(Opsional) Implementasi MetalLB sebagai Load Balancer

MetalLB ini akan digunakan sebagai internal LoadBalancer khusus untuk pemasangan kluster kubernetes Bare Metal (Bukan melalui cloud provider)

Pra Syarat

  • Kluster Kubernetes
  • Helm 3

Instalasi

  • Tambah repo metallb:
helm repo add metallb https://metallb.github.io/metallb
helm repo update
  • Install
kubectl create ns load-balancer
helm install metallb metallb/metallb -n load-balancer
  • Cek status
watch -n2 'kubectl get all -n load-balancer'

Penggunaan

  • Buat file pool.yaml
  • Isikan:
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:
  name: production
  namespace: load-balancer
spec:
  # Masukkan range subnet IP node. IP range tidak boleh digunakan oleh service lain.
  addresses:
  - 192.168.56.10/30
  • Buat file advertise.yaml
  • Isikan:
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:
  name: external
  namespace: load-balancer
spec:
  ipAddressPools:
  - production
  • Apply:
kubectl apply -f pool.yaml -f advertise.yaml
  • Cek status misalnya pada ingress:
watch -n2 'kubectl get all -n ingress'

Apabila berhasil, maka IP Eksternal LoadBalancer akan terisi dengan IP MetalLB.