V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
nakroy
V2EX  ›  云计算

本地集群的 LoadBalancer 方案

  •  
  •   nakroy · 69 天前 · 1162 次点击
    这是一个创建于 69 天前的主题,其中的信息可能已经有所发展或是发生改变。

    k8s 默认不支持本地裸金属集群的 LoadBalancer ,只有公有云厂商能提供直接可用的 LoadBalancer 。

    但是本地私有集群的场景应该也是比较多的,很多公司的自建集群可能出于各种原因不会上公有云,那这种情况下能支持本地裸金属集群的开源 LoadBalancer 方案,目前我看到的资料比较多的是 MetalLB 、OpenELB 和 kube-vip ,而且只有 BGP 模式才能做到真正的负载均衡,对于路由器不支持 BGP 的就只能用 Layer2 模式了。

    想问问各位大佬在本地集群场景有没有实践过的比较好的 LoadBalancer 架构(也许有其他的除了以上三个开源项目之外其他的 LoadBalancer 开源项目或者技术方案,对这方面的接触和了解不太多)

    小弟是最近刚入门研究 k8s 集群的菜鸟,对这个 LoadBalancer 方案如何实现比较好还是挺困扰的,没有太多关于网络和云原生的实践基础,恳请各位大佬指点迷津

    5 条回复
    ZxykM
        1
    ZxykM  
       68 天前
    有一个 Metallb 用于本地裸机器集群,用于提供 LB 功能,你可以看看
    ZxykM
        2
    ZxykM  
       68 天前
    @ZxykM 没仔细看 OP 的内容,原来已经提到了,我只用过这一个,没法对比
    nakroy
        3
    nakroy  
    OP
       68 天前
    @ZxykM 我对比了 MetalLB 、PureLB 、OpenLB 和 kube-vip 方案,前三个部署和使用比较方便,第四个部署比较麻烦(高可用要先于 k8s 集群部署,属于集群之外),由于我的路由器不支持 BGP 模式,所以我只能参考 layer2 的模式,对比这几个的 layer2 模式的性能。另一个回复中提到了 haproxy+keepalive+nodeport 的方案,也是独立于 k8s 集群之外的一层 LoadBalancer ,可能这种做法可靠性更高
    ZxykM
        4
    ZxykM  
       67 天前
    @nakroy 我现在也是外面两个虚机跑 HAProxy 来做 LB ,没啥毛病,官网教程也是这么做的
    nakroy
        5
    nakroy  
    OP
       67 天前
    @ZxykM 这个算是很成熟的方案了,成本也比较低,直接用硬件负载均衡应该是大型公司才会考虑的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2126 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 01:22 · PVG 09:22 · LAX 17:22 · JFK 20:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.