NNetpath
原理预计 35 分钟

MetalLB:裸金属集群的 LoadBalancer

云上一行 type: LoadBalancer 就有 VIP,裸金属得自己实现。两种宣告方式,选错了要么不通、要么只有高可用没有负载均衡。

学完这节你能做到

  • 解释 L2 模式下 VIP 是怎么被宣告与抢占的,以及为什么它只是高可用
  • 说清 BGP 模式的对等配置与 ECMP 分担,并据此在两种模式之间选择
  • 排查 VIP 不通时知道该看哪个 CRD、哪份日志、抓什么包

建议先学跳过这几节会看不懂本节的部分推导

正文待编写以下是本节已定稿的小节大纲
  1. 1Service 那节留下的问题:VIP 怎么让物理网络知道它的存在
  2. 2ARP 与 gARP:无请求应答式宣告,以及切换时怎么让全网更新缓存
  3. 3L2 模式:单节点承载全部流量,speaker 选主与故障接管
  4. 4BGP 基础:AS 号、对等会话、路由宣告
  5. 5BGP 模式:多节点宣告同一个 /32,靠 ECMP 真正分担
  6. 6两种模式对照:带宽上限、切换速度、对网络组的要求
  7. 7与 CNI 的配合:Cilium BGP 把 Pod CIDR 一起宣告出去
  8. 8地址池规划:从机房要一段可路由地址,且不能和节点网重叠
  9. 9排障四条路:servicel2statuses、speaker 日志、arping 反查、抓 ARP 包
  10. 10两个高频坑:externalTrafficPolicy 与 exclude-from-external-load-balancers 标签

延伸资料