MetalLB 和 OpenELB 都是 Kubernetes 的 LoadBalancer 方案,用于在裸机或私有云环境中提供 Service 类型的 LoadBalancer,但两者在架构、功能、适用场景上有所不同。
1. 基本概念
方案 | 作用 | 适用环境 | IP 分配方式 | 负载均衡方式 |
---|---|---|---|---|
MetalLB | 在物理机/私有云上提供 LoadBalancer 类型的 Service | 物理机、私有云(如 vSphere, OpenStack) | Layer 2 模式(ARP/NDP)或 BGP(边界网关协议) | 仅支持 L4(TCP/UDP)负载均衡 |
OpenELB | 为 Kubernetes Service 提供 LoadBalancer,专为 边缘计算和云原生环境 设计 | 物理机、私有云、混合云、边缘计算 | IPPool(自定义 IP 池)、BGP | 仅支持 L4(TCP/UDP)负载均衡 |