‣
因為地端的K8S原生並沒有實作LoadBalancer的功能,
所以只能在公有雲IaaS平台才能直接使用
LoadBalancer
類型的service。除此之外就只能用
NodePort
or externalIP
來暴露服務。但一般來說建議還是使用
LoadBalancer
類型較好。而 MetaILB 就是在幫我們建立地端的
LoadBalancer
安裝
- 檢查 CNI 套件相容性 (network addon compatibility)
- 設定 kube-proxy IP 模式為 ipvs
- 下載配置檔並安裝
L2 模式 vs BGP 模式
L2 和 BGP 是指負載均衡器分配 IP 和廣播流量的兩種運作模式,
它們代表了兩種不同的網路通訊層面和協議:
特性 | L2 模式 | BGP 模式 |
運作原理 | 使用 ARP(IPv4)或 NDP(IPv6)來回應請求,分配 IP。 | 使用 BGP 協議廣播負載均衡器分配的 IP 給路由器。 |
依賴條件 | 必須與客戶端在同一 L2 網段。 | 需要支持 BGP 協議的路由器設備,並且需配置正確的 ASN。 |
配置難易度 | 簡單,適合小型網絡或無多層路由環境。 | 複雜,適合大型網絡,尤其是多子網環境。 |
網絡擴展性 | 有限,僅支持單一 L2 範圍,無法跨越子網。 | 可跨子網及多層路由,具有較高的網絡靈活性。 |
適用場景 | 小規模部署或所有節點在同一 L2 網段內。 | 大規模部署或需要跨越多子網、支持多路徑的環境。 |
L2 配置教學
- IPAdressPool 設置
- L2Advertisement 設置
- service 套用設置
- 最後檢查設置