什么是负载均衡器?

负载均衡器可以跨资源(本地或云)动态分配网络流量,以支持应用。

负载均衡器是一种可充当流量代理的解决方案,可将网络或应用流量分配到多个服务器的端点。负载均衡器可用于流量高峰期分配容量,以及提高应用的可靠性。负载均衡器通过减轻单个服务或云的负担来提高应用的整体性能,并将需求分配到不同的计算表面,以帮助维持应用和网络会话。

现代应用必须同时处理数百万个会话,并以快速可靠的方式向每个用户返回正确的文本、视频、图像和其他数据。要处理如此大的流量,大多数应用需具备多个资源服务器,这些服务器之间存在重复数据。

负载均衡可在支持应用的资源网络中动态分配网络流量。负载均衡器是位于用户和服务器群组之间的设备或服务,充当无形的促进者,确保所有资源服务器得到平等使用。负载均衡器有助于提高可靠性和可用性,即使在高使用率和高需求的情况下也是如此,并确保更长的正常运行时间和更好的用户体验。

负载均衡的益处

用户和客户依赖近乎实时的能力来查找信息和进行交易。即使在需求和使用高峰期,时间滞后或不可靠、不一致的响应也会将客户永远拒之门外。如果传入的需求(或“负载”)过高而无法轻松满足,计算需求的高峰值可能会对内部服务器或服务器系统造成严重破坏。

使用负载均衡器的优势包括:

  • 应用可用性:内部和外部用户都需要能够依赖应用可用性。如果应用或功能出现故障、滞后或冻结,就会浪费宝贵的时间,还会带来潜在的摩擦源,可能会将客户推向竞争对手。
  • 应用可扩展性:假设您经营一家票务公司,宣布在某一特定日期和时间推出热门演出的门票。可能会有成千上万甚至更多的人试图访问您的网站购买门票。如果没有负载均衡器,网站将受限于单台/第一台服务器的容纳范围,这可能导致无法满足如此大的需求量。相反,您可以通过负载均衡器将请求和流量引导到其他可用的计算表面,从而对流量激增这一情况进行规划。这意味着更多的客户可以购买到想要的门票。
  • 应用安全:负载均衡还允许组织扩展其安全解决方案。主要方法之一是跨多个后端系统分配流量,这有助于最大程度地减少攻击面,尽可能避免资源耗尽和链路饱和。如果某个系统存在漏洞或受到攻击,负载均衡器还能将流量重新定向到其他系统。此外,如果某台服务器存在漏洞,负载均衡器还能在服务器之间重新定向流量,以提供应对 DDoS 攻击的额外保护层。
  • 应用性能:通过完成上述所有工作,负载均衡器可以提高应用性能。通过提高安全性、优化正常运行时间以及在需求高峰时实现可扩展性,负载均衡器可确保应用按设计运行,即以您和您客户所希望的方式运行。

负载均衡算法

就运行方式而言,负载均衡算法分为两种:静态和动态。静态负载均衡算法利用分布式网络中现有服务器的性能容量信息,以衡量服务器的传入负载。动态负载均衡算法可以动态确定运行期间需释放的负载量以及由哪个系统承担负载。其专为传入负载波动较大的系统而设计。

以下是几种常见的负载均衡算法。

  • 轮询:该算法使用域名系统 (DNS) 轮流向服务器列表发送流量(注:DNS 负载均衡也可以是动态解决方案)。
  • 阈值:该算法根据管理员设置的阈值分配任务。
  • Random with Two Choices:“双管齐下”算法随机选择两台服务器,通过应用“最少连接数”算法或“最少响应时间”算法(如有配置),将请求发送到所选择的服务器。
  • 最少连接数:新请求会发送到与当前客户端连接数最少的服务器,确定哪台服务器的连接数最少或哪台服务器使用的带宽或资源最少时,会考虑到每台服务器的相对计算能力。
  • 最少响应时间:在该算法中,请求会发送到结合最快响应时间和最少活动连接数这一公式而选择的服务器。
  • URL 哈希:该算法根据客户端请求中的 URL 生成哈希值。请求根据哈希值转发到服务器。负载均衡器会缓存 URL 的哈希值,因此使用相同 URL 的后续请求会被缓存命中并转发到同一服务器。
  • 源 IP 哈希:该算法使用客户端的源 IP 地址和目标 IP 地址生成唯一的哈希密钥,将客户端绑定到特定的服务器。由于该密钥可在会话断开连接时重新生成,因此可将重新连接请求重定向到先前使用的同一服务器。
  • 一致哈希:该算法将客户端和服务器映射到一个环形结构上,每台服务器根据其容量分配到环形结构上的多个点。当客户端请求进入时,会被散列到环形结构上的一个点,然后按顺时针方向动态路由到下一个可用的服务器。

负载均衡如何运作?

负载均衡的工作方式是静态或动态地响应用户请求,并将请求分配给能够满足请求的后端服务器之一。如果其中一台服务器宕机,负载均衡器会将流量重定向到其余在线服务器。

负载均衡的示例

静态负载均衡的示例:某公司托管网站上的内容主要是静态内容。这种场景是使用静态负载均衡器的不二之选,因为流量需求是可预测且一致的。该公司可以使用两台(或多台)相同的 Web 服务器,由静态负载均衡器来分配流量。

动态负载均衡的示例:公司会遇到流量激增、高峰和下降的情况,其中有些情况可以预测,有些则不可预测。动态负载均衡将使这些组织受益匪浅。这类公司可能包括:宣布黑色星期五营业时间和日期的电子商务零售商;刚刚宣布可以在线预约季节性疫苗的医疗保健公司;要求失业保险受益人在一周的某一天提交每周申请的政府失业机构;可能需要在线快速响应自然灾害的救援组织。其中一些流量和需求的激增和峰值是可以计划的,但有些则不能。在这些场景中,动态负载均衡算法将有助于确保在客户和用户最需要的时候访问应用和资源。

不同类型的负载均衡器

在名为开放系统互连 (OSI) 模型的体系结构中,存在不同类型、不同功能的负载均衡器。该模型共有七层。网络防火墙位于第一层至第三层(L1-物理布线、L2-数据链路和 L3-网络)。同时,负载均衡发生在第四层至第七层(L4-传输、L5-会话、L6-演示和 L7-应用)。负载均衡器通常用于第 4 层和第 7 层

  • 第 4 层负载均衡器根据网络和传输层协议(IP、TCP、FTP、UDP)的数据引导流量。
  • 第 7 层负载均衡器根据应用层协议中的数据(如 HTTP 标头、Cookie、统一资源标识符、SSL 会话 ID 和 HTML 表单数据)分配请求。该负载均衡器还支持基于应用消息本身的数据(如特定参数的值)进行路由决策。第 7 层负载均衡器增加内容切换功能。

基于云的负载均衡

基于云的负载均衡器不仅是流量控制器,可用于控制流量峰值和优化服务器。云原生负载均衡器还可以提供预测分析,帮助您在流量瓶颈出现之前将其可视化。这反过来又可提供具有可行性的洞察信息,帮助任何公司优化其 IT 解决方案。

应用负载均衡:随着企业愈发依赖应用的性能和可用性,应用负载均衡可帮助企业扩大规模、简化运营以及节省资金。

Global Server Load Balancing:由于用户和客户遍布全球,公司可通过全球服务器负载均衡提高负载可用性,将用户发送到离他们最近的端点。

DNS 负载均衡:在域名系统 (DNS) 中配置域,以便将用户对该域的请求分配给一组服务器机器,这种做法称为 DNS 负载均衡

网络负载均衡:应用交付控制器 (ADC) 是一种物理或虚拟设备,可作为物理服务器的代理,管理应用或网络功能,并依靠网络负载均衡解决方案提供支持。

HTTP 负载均衡:在多个 Web 或应用服务器组之间分配流量以优化资源利用率,这种技术称为 HTTP 负载均衡

内部负载均衡:内部负载均衡器会被分配到私有子网中,没有公共 IP。其通常在服务器场中工作。

Diameter:Diameter 负载均衡器在网络中的多个服务器之间分配信令流量。要实现这一点,最经济有效的方法之一是扩展 Diameter 控制平面,而非数据传输层(Diameter 负载均衡也可以是静态或动态的)。

负载均衡器技术

还有其他类型的负载均衡器解决方案。这些负载均衡器可以单独使用,也可以在网络中搭配云原生负载均衡器使用。以下是一些值得注意的类型。

硬件负载均衡器:硬件负载均衡器是一种带有专用操作系统的物理设备,可以对其进行编程,以便在多个应用服务器(通常是本地服务器)之间分配 Web 流量。

软件负载均衡器:软件负载均衡器的工作原理与物理负载均衡器类似,但软件负载均衡器在软件程序上运行。软件使用静态和动态负载均衡,消除单点故障,从而确保各种流量需求下应用的可用性。

虚拟负载均衡器:虚拟负载均衡器是一种结合硬件和软件负载均衡器的负载均衡器。其使用应用交付控制器软件,帮助在硬件后端服务器之间分配网络流量负载。

F5 可以提供哪些帮助

寻找适合企业需求的负载均衡器,这对于保持系统的可用性和优化、数据的可访问性以及用户和客户的满意度至关重要。

F5 可满足企业对负载均衡器的特定需求,从静态解决方案到集成硬件、软件和基于云的负载均衡器优势的全局解决方案,不一而足。F5 有适合企业独特业务需求的负载均衡算法或解决方案。

BIG-IP 应用服务为管理、扩展和优化数字应用服务提供集成解决方案。BIG-IP Local Traffic Manager (LTM) 包括静态和动态负载均衡,可消除单点故障。F5 BIG-IP DNS实现跨应用的负载均衡,并在全球范围内应用,确保您的应用正常运行并响应客户需求。

F5 Distributed Cloud DNS Load Balancer 提供简单的负载均衡解决方案,具有可靠的灾难恢复功能,确保您的开发团队能够专注于帮助企业创新。

F5 Distributed Cloud App Connect 通过在任何类型的环境(包括边缘)中安全连接应用和服务,帮助实现负载均衡。

F5 提供一系列全面的负载均衡解决方案,保证您的应用、流量、数据和计算表面得到优化。