vlambda博客
学习文章列表

鱼与熊掌竟可兼得?浅析硬/软件负载均衡

纵观当前的信息技术发展趋势,可以明显发现 SD Software-Define )即【软件定义】这一概念,逐渐成为许多我们熟知领域的“前缀”。软件定义网络( SDN )、软件定义广域网( SD-WAN )、软件定义存储( SDS )、软件定义数据中心( SDDC )。随着这些技术的成熟发展,大量的企业接受并将软件定义的解决方案作为将来数据中心建设的主要方向。

作为一个有传统网络背景的工程师,笔者常常会思考,是否会有这么一天,数据中心里将不再有传统网络设备的位置?只有一排一排整齐的服务器安静的运转,而所有的功能都已经由软件提供呢?

     

                     

今天我们就顺着软件定义的这股趋势,聊一聊数据中心里必不可少的一种设备: 负载均衡器(Load balancer

首先,对于没有接触过负载均衡器(或应用交付控制器)的读者,可以简单的理解为:在于数据流量过大的网络中,往往单一设施无法承担如此负载,需要多台设施进行数据分流,而负载均衡器就是将数据分流到多台设施的一个转发器。

简言之就是:将高并发、高流量的网络请求,经过负载均衡,动态转发给后端多个节点处理,以提高响应效率、提高吞吐量

当前为大型服务器集群的负载均衡主要分为:硬件负载均衡和软件负载均衡。

硬件负载均衡在国内外都比较流行。硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为应用交付控制器,由专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求。

市场上,比较主流的负载均衡硬件厂商有F5、Citrix、Radware等,这些硬件负载均衡的优劣势其实十分明显,其优点在于

功能丰富,大多数硬件负载器均衡不仅提供负载均衡服务,同时也包含应用交换、会话交换、SSL加速、智能HTTP压缩、内容转换应用攻击过滤、拒绝服务(DoS)攻击等功能。

性能强大,与网络设备直接连接、负载性能强。可以应用于大量设施、适应大量访问。

可靠服务,由原厂提供售后维保,迅速解决问题,保障业务稳定运行。

而硬件负载均衡的劣势就更好总结了,就一个字:贵!

动辄数万甚至数十万的硬件、许可费用先不提。大多数的硬件负载均衡采用的是A/S模式的双机冗余部署.即使网络请求分发到服务器集群,负载均衡设施却是单点工作。拥有成本更是上了一个台阶。

而反观软件负载均衡,情况正好截然相反。由于硬件负载均衡价格高昂,一般对于中小规模应用,使用软件负载均衡便可解决生产中所遇到的问题。

Nginx/LVS/HAProxy是目前使用最广泛的三种开源的负载均衡软件。一般随着应用规模的提升根据不同的阶段来使用不同的技术。使用这些开源的技术消耗的仅仅是一些物理服务器的计算、存储资源,成本相较于物理负载均衡低得多。但有得必有失、相对来说,软件的负载均衡在处理性能、运维难度和售后维保上也没有硬件负载均衡的优势。

如何在硬件或软件的负载均衡解决方案中取舍?是选择高成本、高性能的硬件方案?还是价格低廉、却功能较弱的软件方案?这成为了许多数据中心设计者的两难抉择。

如果有一种产品兼具两者所长,既有如同硬件一般的高性能,又能将成本降低,那岂不是鱼与熊掌两者兼得?

鱼与熊掌竟可兼得?浅析硬/软件负载均衡

目前看来,V记的软件定义负载均衡产品是相对接近这个目标的解决方案之一。软件定义、数控分离的架构实现了与底层架构的彻底解构,在几乎所有主流基础架构(服务器、裸金属、公有云或是容器环境)都能流畅运行。并为运行在这些基础架构上的应用提供原生的企业级负载均衡服务。并且无需购买昂贵的硬件设备,拥有成本比硬件负载均衡低得多。

         许多读者此时心中一定有个疑问,说到底这不还是软件的负载均衡吗?那性能的问题如何解决?这就不得不提到这款产品的一个核心功能:自动扩容(AutoScaling)。

 

鱼与熊掌竟可兼得?浅析硬/软件负载均衡

         与传统的硬件负载均衡不同,软件定义负载均衡会根据业务的实时访问量,智能的调节整个负载均衡集群的规模。在业务访问量暴增的时候,集群规模会自动扩张,利用多个负载均衡组件(Service Engine)组成集群的方式,对应用提供高性能的负载均衡服务。在这种形态下,官方给出了高达每秒108.5万次SSL卸载的数据。其性能指标相比硬件负载均衡器毫不逊色。而在业务访问量下降时,集群也会相应缩小规模,释放之前占用的多余资源,使宿主服务器有更多的空间运行其他业务。

         基于以上的特点,软件定义的负载均衡与传统硬件负载均衡、开源软件负载均衡、公有云原生负载均衡这三种目前业界主流的负载均衡解决方案相比。都能一定程度上弥补他们各自的不足。

  • 对比传统负载均衡

解决方案成本更低,提供更多数据分析、自动化方向的功能,支持混合云部署,为这些基础架构上的业务提供相应的负载均衡服务。

  • 对比公有云负载均衡

功能更丰富,包括流量分析、应用安全、WAF等,且能够集成多种公有云平台,统一管理不同公有云、数据中心上的负载均衡服务。

  • 对比开源、容器负载均衡

提供统一的管理平台管理K8SOpenshift等不同的基础架构。并提供更强大的处理性能、更丰富的安全功能、和专业可靠的售后服务。

         当然,不仅是这款V记的软件定义负载均衡产品,众多负载均衡行业的资深厂商和新进者,都正在将自家的产品向软件定义的方向靠拢。为此笔者也做好了相应产品充分的技术探索与理论储备。究竟负载均衡行业、乃至整个网络行业日后的发展将指向哪里。笔者将会保持一贯的热切关注,也期待与大家分享更多优秀的解决方案与产品。

 

引用文档:《NSX-ALB-性能测报告》

https://blogs.vmware.com/china/files/2020/03/Principled-Technologies-NSX-ALB-%E6%80%A7%E8%83%BD%E6%B5%8B%E6%8A%A5%E5%91%8A.pdf