F5负载均衡器维护手册 下载本文

量均匀的分布到每个TMM核心上去。而每个TMM核心占据一个CPU内核

1.5 BIG-IP LTM的负载均衡算法

轮询算法(Round Robin):

BIG-IP LTM顺序循环将请求一次顺序循环地连接每个服务器。当其中某个服务器发生第2到第7 层的故障,则将其从顺序循环队列中拿出,不参加下一次的轮询,直到其恢复正常。

比率算法(Ratio):

在BIG-IP LTM上给每个服务器分配一个加权值为比例,根椐这个比例,BIG-IP LTM把用户的请求分配到每个服务器。当其中某个服务器发生第2到第7 层的故障,就把其从服务器队列中拿出,不参加下一次的用户请求的分配, 直到其恢复正常。

最少连接数(Least Connections):

在BIG-IP LTM上对每一台服务器的当前连接数进行统计,当有新的请求进入时,将新的请求分配给当前最少连接处理的服务器。当其中某个服务器发生第2到第7 层的故障,BIG-IP

LTM就把其从服务器队列中拿出,不参加下一次的用户请求的分配, 直到其恢复正常。

最快响应速度(Fastest):

在BIG-IP LTM上通过观察每台服务器得应用响应速度,当有新的请求进入的时候,将新的请求分配给响应最快的服务器。当其中某个服务器发生第2到第7 层的故障,BIG-IP LTM就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。

观察模式(Observed):

连接数目和响应时间以这两项的最佳平衡为依据为新的请求选择服务器。当其中某个服务器发生第二到第7 层的故障,BIG/IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。

性能预测分配:(Predictive)

由负载均衡设备收集到的应用程序和应用服务器的各项性能参数如CPU占用率,内存占用率、当前并发用户数等关键信息,并可进行加权处理。当有新的请求进入的时候,将新的请求分配给综合性能最佳的服务器。当其中某个服务器发生第2到第7层的故障,BIG-IP LTM就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。

1.6 BIG-IP LTM会话保持

1.6.1 会话保持的需求:

以最典型的HTTP应用为例,在大多数电子商务的应用系统或者需要进行用户身份认证

的在线系统中,一个客户与服务器经常经过好几次的交互过程才能完成一笔交易或者是一个请求的完成。由于这几次交互过程是密切相关的,服务器在进行这些交互过程的某一个交互步骤时,往往需要了解上一次交互过程的处理结果,或者上几步的交互过程结果,服务器进行下一步操作时需要这就要求所有这些相关的交互过程都由一台服务器完成,而不能被负载均衡器分散到不同的服务器上。 一个典型的HTTP请求流程如下:

? 客户端发起一个连接到服务器的服务端口,并在此连接中发送HTTP请求

? 服务器在接收到用户请求后,在本地产生一个内部SessionID 用于唯一标识该用户 ? 服务器将返回内容进行组织后,同时将Session ID 通过Cookie返回给用户 ? 用户在收到回应后,将Cookie保存在内存中。 ? 用户下一次点击重新发起一个连接到服务器的服务端口 ? 用户在新建连接中发送HTTP请求,并带上Cookie进行发送。

? 服务器在收到请求后,从Cookie中获得该用户的Session ID,根据此Session ID进行相关处理

1.6.2 源地址会话保持:

源地址会话保持的一个基本概念就是将一个源地址认为是一个用户,凡是同一个源地发送过来的连接,则认为是同一个用户发起的多个请求,根据会话保持策略,将这些连接/请求都转发到同一台服务器。

当一个新的连接请求发送到虚拟服务后,首先查找源地址会话保持表,如果在源地址会话保持表中查询到了该请求发起的源地址对应的服务器,则直接将该请求转发到相应的服务器上,如果在源地址会话保持表中没有查询到相应的条目,则按照负载均衡算法将请求转发到相应的服务器,同时,将该请求发起的源地址和对应的服务器地址添加到源地址会话保持表中。这样,下次同一IP地址再发起新建连接到该虚拟服务时,则在源地址会话保持表中已经存在相应的条目,新的连接则会根据源地址会话保持表的对应项转发到对应的服务器上。

源地址会话保持同时还存在有一个超时时间参数。每次有有新建连接请求或已建立的连接中有数据在传输时,就会刷新会话保持表中的超时时间。比如设置源IP会话保持的超时时间为300秒,则对于同一个源IP,只要有新建连接或已建连接有数据传输,则在源地址会话保持表中的超时时间一直刷新为0。当没有新建连接或者数据传输时,该值就开始按秒进行累加,一旦超出300秒没有新建连接请求或没有数据传输。则将其条目从源地址会话保持表中清除。如果该IP地址在在过了超时时间之后又有新的连接请求,则以第一次连接请求按照负载均衡的算法进行处理,此时,源地址会话保持表中的超时时间又从0开始计算。