文档库 最新最全的文档下载
当前位置:文档库 › F5服务器负载均衡基本原理

F5服务器负载均衡基本原理

F5服务器负载均衡基本原理
F5服务器负载均衡基本原理

本文由tangwudi1979贡献

doc1。

F5 Application Management Products

服务器负载均衡原理

F5 Networks Inc 2004-11-30

1. 服务器负载平衡市场需求 …… 3 2. 负载平衡典型流程 …… 5 2..1 通过 VIP 来截获合适的需要负载平衡的流量…… 5 2.2 服务器的健康监控和检查 …… 5 2.3 负载均衡和应用交换功能,通过各种策略导向到合适的服务器 …… 7

1. 服务器负载平衡市场需求 .

随着 Internet 的普及以及电子商务、电子政务的发展,越来越多的应用系统需要面对更 高的访问量和数据量。同时,企业对在线系统的依赖也越来越高,大量的关键应用需要 系统有足够的在线率及高效率。 这些要求使得单一的网络服务设备已经不能满足这些需 要,由此需要引入服务器的负载平衡,实现客户端同时访问多台同时工作的服务器,一 则避免服务器的单点故障,再则提高在线系统的服务处理能力。从业界环境来说,如下 的应用需求更是负载均衡发展的推动力:

业务系统从 ClientBrowser系统结构, 业务系统从 Client-Server 转向采用 Browser-Server 系统结构,关键系统需要高可 用性

电子商务系统的高可用性和高可靠性需要 电子商务系统的高可用性和高可靠性需要 系统的高可用性和高可靠性 应用系统大集中 大集中的 IT 应用系统大集中的需要 (税务大集中,证券大集中,银行大集中) 数据中心降低成本, 数据中心降低成本,提高效率

负载均衡技术在现有网络结构之上提供了一种廉价、有效、透明的方法,来扩展网络设 备和服务器的带宽、 增加吞吐量、 加强网络数据处理能力、 提高网络的灵活性和可用性。 它有两方面的含义: 首先, 大量的并发访问或数据流量分担到多台节点设备上分别处理, 减少用户等待响应的时间; 其次, 单个重负载的运算分担到多台节点设备上做并行处理, 每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。

BIG/IP 利用定义在其上面的虚拟 IP 地址来为用户的一个或多个应用服务器提供 服务。 因此, 它能够为大量的基于 TCP/IP 的网络应用提供服务器负载均衡服务。 BIG/IP 连续地对目标服务器进行 L4 到 L7 合理性检查, 当用户通过 VIP 请求目标服务器服务时, BIG/IP 根椐目标服务器之间性能和网络健康情况,选择性能最佳的服务器响应用户的 请求。

下图描述了一个负载平衡发生的流程:

1. 客户发出服务请求到 VIP 2. BIGIP 接收到请求,将数据包中目的 IP 地址改为选中的后台服务器 IP 地址,然 后将数据包发出到后台选定的服务器 3. 后台服务器收到后,将应答包按照其路由发回到 BIGIP 4. BIGIP 收到应答包后将其中的源地址改回成 VIP 的地址,发回客户端,由此就 完成了一个标准的服务器负载平衡的流程。

2. 负载平衡典型流程 . 负载平衡典型 典型流程

通过 VIP 来截获合适的需要负载平衡的流量 服务器监控和健康检查,随时了解服务器群的可用性状态 服务器监控和健康检查,随时了解服务器群的可用性状态 负载均衡和应用交换功能, 负载均衡和应用交换功能,通过各种策略导向到合适的服务器 2..1

通过 VIP 来截获合适的需要负载平衡的流量

在 BIGIP 上通过设置 VIP 来截获需要进行负载平衡的流量,这个 VIP 地址可以是一个 独立的主机地址和端口的组合(例如:202.101.112.115:80)也可以是一个网络地址和端 口的组合(例如:202.101.112.0:80),当流量经过 BIGIP 的时候,凡是命中 VIP 的流量 都将被截获并按照规则进行负载平衡。

2.2

服务器的健康监控和检查

服务器 (Node) - Ping (ICMP)

BIGIP 可以定期的通过 ICMP 包对后台服务器的 IP 地址进行检测, 如果在设

定的时间内 能收到该地址的 ICMP 的回应,则认为该服务器能提供服务

服务 (Port) – Connect BIGIP 可以定期的通过 TCP 包对后台服务器的服务端口进行检测, 如果在设定的时间内 能收到该服务器端口的回应,则认为该服务器能提供服务

扩展内容查证(ECV: Verification)— 扩展内容查证(ECV: Extended Content Verification)—ECV

ECV 是一种非常复杂的服务检查,主要用于确认应用程序能否对请求返回对应的数据。 如果一个应用对该服务检查作出响应并返回对应的数据,则 BIG/IP 控制器将该服务器 标识为工作良好。如果服务器不能返回相应的数据,则将该服务器标识为宕机。宕机一 旦修复,BIG/IP 就会自动查证应用已能对客户请求作出正确响应并恢复向该服务器传 送。 该功能使 BIG/IP 可以将保护延伸到后端应用如 Web 内容及数据库。 BIG/ip 的 ECV 功能允许您向 Web 服务器、防火墙、缓存服务器、代理服务器和其它透明设备发送查 询,然后检查返回的响应。这将有助于确认您为客户提供的内容正是其所需要的。

扩展应用查证(EAV: 扩展应用查证(EAV: Extended Application Verification)

EAV 是另一种服务检查,用于确认运行在某个服务器上的应用能否对客户请求作出响 应。为完成这种检查,BIG/IP 控制器使用一个被称作外部服务检查者的客户程序,该 程序为 BIG/IP 提供完全客户化的服务检查功能,但它位于 BIG/IP 控制器的外部。例 如, 该外部服务检查者可以查证一个 Internet 或 Intranet 上的从后台数据库中取出数据并 在 HTML 网页上显示的应用能否正常工作。 EAV 是 BIG/IP 提供的非常独特的功能, 它

提供管理者将 BIG/IP 客户化后访问各种各样应用的能力,该功能使 BIG/IP 在提供标 准的可用性查证之外能获得服务器、应用及内容可用性等最重要的反馈。 该功能对于电子商务和其它应用至关重要,它用于从客户的角度测试您的站点。 例如,您可以模拟客户完成交易所需的所有步骤-连接到站点、从目录中选择项目以及 验证交易使用的信用卡。一旦 BIG/ip 掌握了该“可用性”信息,即可利用负载平衡使 资源达到最高的可用性。

BIG/ip 已经为测试 Internet 服务的健康情况和状态, 预定义的扩展应用验证(EAV), 它有二种用户界面: 浏览器和 CLI 配置。 BIG/IP 预定义的应用检查: FTP、 NNTP、 SMTP、 POP3 和 MSSQL。

2.3

负载均衡和应用交换功能,通过各种策略导向到合适的服务器 负载均衡和应用交换功能 通过各种策略导向到合适的服务器

BIGIP 是一台对流量和内容进行管理分配的设备。它提供 12 种灵活的算法将数据流有 效地转发到它所连接的服务器群。而面对用户,只是一台虚拟服务器。用户此时只须记 住一台服务器, 即虚拟服务器。 但他们的数据流却被 BIGIP 灵活地均衡到所有的服务器。 这 12 种算法包括:

轮询(Round Robin):顺序循环将请求一次顺序循环地连接每个服务器。当其中 某个服务器发生第二到第 7 层的故障,BIG/IP 就把其从顺序循环队列中拿出,不 参加下一次的轮询,直到其恢复正常。 比率(Ratio):给每个服务器分配一个加权值为比例,根椐这个比例,把用户的请 求分配到每个服务器。当其中某个服务器发生第二到第 7 层的故障,BIG/IP 就把 其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。 优先权(Priority):给所有服务器分组,给每个组定义优先权,BIG/IP 用户的请 求,分配给优先级最高的服务器组(在同一组内,采用轮询或比率算法,分配用户 的请求);当最高优先级中所有服务器出现故障,BIG/IP 才将请求送给次优先级 的服务器组。这种方式,实际为用户提供一种热备份的方式。 最少的连接方式(Least Connection):传递新的连接给那些进行最少连接处理的服 务器。当其中某个服务器发生第二到第 7 层的故障,BIG/IP 就把其从服务器队列 中拿出,不参加下一次的用户请求的分配,直到其恢复正常。 最快模式(Fastest):传递连接给那些响应最快的服务器。当其中某个服务器发生 第二到第 7 层的故障,BIG/IP 就把其从服务器队列中拿出,不参加下一次的用户 请求的分配,直到其恢

复正常。 观察模式(Observed):连接数目和响应时间以这两项的最佳平衡为依据为新的请 求选择服务器。当其中某个服务器发生第二到第 7 层的故障,BIG/IP 就把其从服 务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。 预测模式(Predictive):BIG/IP 利用收集到的服务器当前的性能指标,进行预测 分析,选择一台服务器在下一个时间片内,其性能将达到最佳的服务器相应用户的 请求。(被 bigip 进行检测)

动态性能分配 (Dynamic Ratio-APM):BIG/IP 收集到的应用程序和应用服务器的各项 性能参数,动态调整流量分配。 动态服务器补充(Dynamic Server Act.):当主服务器群中因故障导致数量减少时,动 态地将备份服务器补充至主服务器群。 服务质量(QoS):按不同的优先级对数据流进行分配。 服务类型(ToS):按不同的服务类型(在 Type of Field 中标识)对数据流进行分配。 规则模式: 针对不同的数据流设置导向规则, 用户可自行编辑流量分配规则, BIG/IP 利用这些规则对通过的数据流实施导向控制。

相关文档