当前位置: 首页 > 网络应用技术

kubernetes开源负载器-METALLB(BGP)

时间:2023-03-07 22:11:35 网络应用技术

  微信公共帐户:操作和维护开发故事,作者:刘达克斯

  在过去的一年中,为了欢迎亚洲游戏,该部门开发了许多大型屏幕显示界面。这些大屏幕显示页面需要提供给外国部门才能参观。首先,使用了入口方法,但是外部部门需要DNS。众所周知,大多数Loadbarans只能由提供外部负载Balanor的云提供商使用,而我们是裸机的金属群集。不可能。我们只能找到开源LoadBaranster解决方案。

  当我们寻找信息时,我们找到了两种解决方案,一个是库贝斯球的openelb,另一个是metallb。但是openenelb的文档太少了,而且仍然很久以前,所以我们选择了metallb。

  官方介绍

  Kubernetes不提供用于裸金属簇的网络负载平衡器。库伯内特(Kubernetes)发布的网络负载巴拉诺(Balanor)的实现是各种IaAS平台的外部负载平衡器。如果您不在支持的IAAS平台上运行,那么LoadSallancer将保持LoadBalancer保持不变。创建时无限期地“待处理”状态。

  裸金属群集操作员只有两种方式将用户流量引入集群,即“ nodeport”和“ externalips”服务。这两种选择对生产目的产生了重大不利影响,这使得裸金属簇成为第二个级别的公民。Kubernetes生态系统。

  Metallb的目标是通过提供与标准网络设备集成的网络负载Balanner来纠正这种不平衡。这样,裸金属集群上的外部服务也可以尽可能“正常工作”。

  Metallb具有提供此服务的两个特征:地址分配和外部通知。

  这是我们内部群集拓扑的简化图片

  Master 192.168.0.1 50001 Worker1 192.168.0.2 50001 Worker2 192.168.0.3 50001 Switch 192.168.0.254 50000

  检查BGP邻居的建立[Core-Switch] DIS BGP PEER

  现在转到开关查看[core-switch] dis bgp路由桌[core-switch] dis ip rou 10.11.11.1

  您可以看到开关已经学习了10.11.11.1的路线,以访问https://10.11.11.1在浏览器中

  原始:https://juejin.cn/post/7101545745504796703