OpenELB 是一种开源负载均衡器实现,此前命名为 PorterLB,是为物理机(Bare-metal)、边缘(Edge)和私有化等环境设计的负载均衡器插件。由于在生产环境 Kubernetes 对外暴露服务需要依赖 LoadBalancer,通常只有公有云才提供该能力,私有化环境相对缺少支持。OpenELB 的出现,弥补了这一局限性,可作为 K8s、K3s、KubeSphere 等容器平台对集群外暴露的“LoadBalancer”类型的服务。
OpenELB 项目最初由 KubeSphere 社区 发起,目前已作为 CNCF 沙箱项目 加入 CNCF 基金会,由 OpenELB 开源社区维护与支持。
为什么选择 OpenELB
在云服务环境中的 Kubernetes 集群里,通常可以用云服务提供商提供的负载均衡服务来暴露 Service,但是在本地没办法这样操作。而 OpenELB 可以让用户在裸金属服务器、边缘以及虚拟化环境中创建 LoadBalancer 类型的 Service 来暴露服务,并且可以做到和云环境中的用户体验是一致的。
核心功能
BGP 模式和二层网络模式下的负载均衡
ECMP 路由和负载均衡
IP 池管理
基于 CRD 来管理 BGP 配置
支持 Helm Chart 方式安装
github openELB
官方文档很详细 L2 mode 生产使用还是有很多缺陷的,尽量选用bgp模式
实验过程>> 有道云笔记