08-负载均衡配置
本章节下载: 08-负载均衡配置 (520.92 KB)
LB(Load Balance,负载均衡)是一种集群技术,它将特定的业务(网络服务、网络流量等)分担给多台网络设备(包括服务器、防火墙等)或多条链路,从而提高了业务处理能力,保证了业务的高可靠性。
· 高性能:通过将业务较均衡地分配到多台设备或多条链路上,提高了系统的整体性能。
· 可扩展性:可以方便地增加集群中设备或链路的数量,在不降低业务质量的前提下满足不断增长的业务需求。
· 高可靠性:单个甚至多个设备或链路发生故障也不会导致业务中断,提高了系统的整体可靠性。
· 可管理性:大量的管理工作都集中在应用了负载均衡技术的设备上,集群中的设备或链路只需要进行普通的配置和维护。
· 透明性:对用户而言,集群等同于一个可靠性高、性能好的设备或链路,用户感知不到也不必关心具体的网络结构。增减集群中的设备或链路不会影响正常业务。
· 服务器负载均衡:在数据中心等组网中,通过此技术可将网络服务分担给多台服务器或防火墙进行处理,从而提高服务器或防火墙的处理能力。
· 链路负载均衡:当存在多个运营商接口时,通过此技术可实现链路的动态选择,从而提高服务的可靠性。
· 全局负载均衡:当用户构建了多个数据中心共同对外提供时,通过此技术可对这些数据中心进行协调,选择最优的数据中心来提供服务,并且可在多个数据中心之间进行远程灾备,从而提高服务的可靠性。
根据负载均衡识别信息的层级不同,服务器负载均衡又分为以下两种:
· 四层服务器负载均衡:可识别网络层和传输层信息,是基于流的负载均衡,通过对报文进行逐流分发,将同一条流的报文分发给同一台服务器。由于四层服务器负载均衡对七层业务无法按内容分发,从而限制了其适用范围。
服务器负载均衡支持IPv4与IPv6,但不支持IPv4报文与IPv6报文的互相转换。
服务器负载均衡在网络中的部署模式有NAT(Network Address Translation,网络地址转换)模式和旁路模式两种,以下分别进行介绍。
图2-1 NAT模式组网图
· Cluster(集群):对外提供特定服务的集合,包括负载均衡设备和服务器。
· LB device(负载均衡设备):负责将各种服务请求分发到多台服务器。
· Server(服务器):负责响应和处理各种服务请求。
· VSIP(Virtual Service IP,虚服务IP):集群对外提供服务的IP地址,供用户请求服务时使用。
· Server IP(服务器IP):供负载均衡设备分发服务请求时使用。
NAT模式服务器负载均衡有以下三种实现方式:
· DNAT(Destination Network Address Translation,目的网络地址转换)方式
· SNAT(Source Network Address Translation,源网络地址转换)方式
在DNAT方式下,服务器需要通过更改默认网关或配置静态路由,将发往主机的数据包发送到负载均衡设备上。DNAT方式的工作流程如图2-2所示。
图2-2 DNAT方式工作流程图
表2-1 DNAT方式工作流程简述
源IP地址 |
目的IP地址 |
||
负载均衡设备使用DNAT技术分发请求报文,把报文的目的IP地址修改为服务器的IP地址 |
|||
负载均衡设备收到响应报文后,将其源IP地址修改为VSIP后转发给主机 |
SNAT方式除了要求在服务器一侧在所有服务器上配置与VSIP相同的LoopBack接口地址外,还要求配置SNAT地址池所分配IP地址的路由。由于此方式的使用场景十分有限,因此并不推荐用户使用,本文也不对其进行详细介绍。
图2-3 DNAT+SNAT方式工作流程图
表2-2 DNAT+SNAT方式工作流程简述
源IP地址 |
目的IP地址 |
||
负载均衡设备使用DNAT+SNAT技术分发请求报文,把报文的目的IP地址修改为服务器的IP地址、源IP地址修改为SNAT地址池中的IP地址 |
|||
负载均衡设备收到响应报文后,将其源IP地址修改为VSIP、目的IP地址修改为主机的IP地址后转发给主机 |
图2-4 旁路模式组网图
· Cluster:对外提供特定服务的集合,包括负载均衡设备、普通设备和服务器。
· LB device:负责将各种服务请求分发到多台服务器。
· General device:按照正常的转发规则转发数据。
· Server:负责响应和处理各种服务请求。
· VSIP:集群对外提供服务的IP地址,供用户请求服务时使用。
· Server IP:供负载均衡设备分发服务请求时使用。
旁路模式又称单臂模式。在此模式下,需在负载均衡设备和服务器上都配置VSIP(要求服务器不能通过VSIP发送和响应ARP请求,比如可将VSIP配置在服务器的LoopBack接口上)。旁路模式服务器负载均衡的工作流程如图2-5所示。
旁路模式服务器负载均衡的工作流程简述如表2-3所示。由于此模式下服务器发出的报文不会经过负载均衡设备,因此其应用有一定局限性。
源IP地址 |
目的IP地址 |
||
主机发送服务请求报文 |
|||
普通设备收到请求报文后,转发给负载均衡设备(由于服务器不能通过VSIP发送和响应ARP请求,因此不会转发给服务器) |
|||
负载均衡设备收到请求报文后,借助调度算法算出应将此请求分发给哪台服务器 |
|||
负载均衡设备分发请求报文。与NAT模式相比,本模式下报文的源IP地址和目的IP地址均未被改变 |
|||
服务器接收并处理请求报文,返回响应报文 |
|||
· 实服务组:将具有相同或相似功能的实服务器抽象成一个实服务组。实服务组可被虚服务器或负载均衡动作引用。
· 虚服务器:负载均衡设备上面向用户业务的虚拟载体,只有匹配上虚服务器的报文才需要进行负载均衡处理。
· 负载均衡类:将报文分类,以便对不同类型的报文执行不同的负载均衡动作。
· 负载均衡策略:将负载均衡类和负载均衡动作关联起来就构成了负载均衡策略。负载均衡策略可被虚服务器引用。
· 持续性组:根据某持续性方法将具有一定相关性的会话都分配给同一个实服务器处理。持续性组可被虚服务器或负载均衡动作引用。
· 参数模板:制订对报文进行更深入处理的模板。参数模板可被虚服务器引用。
为了便于对实服务器进行统一管理,可将具有相同或相似功能的实服务器抽象成一个组,称为实服务组。比如,可按存储内容的不同划分为歌曲服务器组、视频服务器组和图片服务器组等。
配置NAT功能 |
||
负载均衡设备根据实服务组中配置的调度算法,计算出处理用户请求的实服务器。
服务器负载均衡在网络中的部署模式有NAT模式和旁路模式两种,这两种模式下的NAT功能配置有所区别,以下分别进行介绍。
缺省情况下,实服务组中的NAT功能处于开启状态 实服务组被快速HTTP或HTTP类型的虚服务器引用时,即使关闭了NAT功能也将仍按照NAT模式处理 |
NAT模式又分为DNAT、SNAT和DNAT+SNAT这三种实现方式,对于DNAT方式,只需在实服务组中开启NAT功能即可;而对于SNAT和DNAT+SNAT这两种方式,还需创建SNAT地址池并在实服务组中引用。
SNAT地址池是一个IP地址范围,它被实服务组引用之后,负载均衡设备将把收到报文的源IP地址修改为SNAT地址池中的IP地址后再转发出去。
一个SNAT地址池中最多允许有256个IPv4地址和65536个IPv6地址,且不同SNAT地址池中的IPv4或IPv6地址不允许重叠。
表2-9 配置NAT模式的NAT功能
创建SNAT地址池,并进入SNAT地址池视图 |
DNAT方式请跳过本步骤 |
|
(可选)配置SNAT地址池的描述信息 |
缺省情况下,SNAT地址池没有描述信息 DNAT方式请跳过本步骤 |
|
配置SNAT地址池的IPv4地址范围 |
缺省情况下,没有配置SNAT地址池的IP地址范围 DNAT方式请跳过本步骤 |
|
配置SNAT地址池的IPv6地址范围 |
||
在实服务组中开启NAT功能 |
缺省情况下,实服务组中的NAT功能处于开启状态 实服务组被快速HTTP或HTTP类型的虚服务器引用时,即使关闭了NAT功能也将仍按照NAT模式处理 |
|
指定实服务组引用的SNAT地址池 |
DNAT方式请跳过本步骤 |
slow-online [ standby-time standby-time ramp-up-time ramp-up-time ] |
通过健康检测可以对实服务器进行检测,保证其能够提供有效的服务。
用户既可在实服务组视图下对组内的所有实服务器进行配置,也可在实服务器视图下只对当前实服务器进行配置,后者的配置优先级较高。
· 保持已有连接:不主动断开与故障实服务器的连接,连接继续保持还是断开将由协议自身的超时机制决定。
· 重定向连接:把连接重定向到实服务组中其它可用的实服务器上。
· 断开已有连接:主动断开与故障实服务器的连接。对于TCP报文,将发送RST报文;对于其它类型的报文,将发送ICMP不可达报文。
实服务器是负载均衡设备上处理用户业务的实体。一个实服务器只能属于一个实服务组,而一个实服务组可以包含多个实服务器。
配置IP地址和端口号 |
||
通过本配置可以指定实服务器的IPv4或IPv6地址,以及实服务器的端口号。
表2-16 配置IP地址和端口号
缺省情况下,实服务器的端口号为0(表示继续使用原报文携带的端口号) |
通过本配置可以调整实服务器的加权轮转和加权最小连接这两种调度算法所使用的权值,以及实服务器在实服务组中的调用优先级。
表2-17 配置IP地址和端口号
priority priority-value |
通过本配置可以调整实服务器所允许的最大带宽、最大连接数和每秒最大连接数三个参数值。
缺省情况下,实服务器所允许的最大总带宽、最大上行带宽和最大下行带宽均为0千字节/秒,即不受限制 |
||
缺省情况下,实服务器所允许的最大连接数为0,即不受限制 |
||
缺省情况下,实服务器所允许的每秒最大连接数为0,即不受限制 |
通过健康检测可以对实服务器进行检测,保证其能够提供有效的服务。
用户既可在实服务组视图下对组内的所有实服务器进行配置,也可在实服务器视图下只对当前实服务器进行配置,后者的配置优先级较高。
通过shutdown命令可以立即中断实服务器的已有连接,而慢宕则不会立即中断实服务器的已有连接,而是让其自然老化,并且不再建立新的连接。慢宕功能需要与shutdown命令配合使用,即在开启了慢宕功能之后再关闭实服务器,该实服务器才会开始慢宕。
虚服务器是负载均衡设备上面向用户业务的虚拟载体,是为了判断是否需要对进入负载均衡设备的报文进行负载均衡而引入的概念。只有匹配上虚服务器的报文才会被进行负载均衡处理。
虚服务器包括快速HTTP、HTTP、IP、TCP和UDP五种类型。对于快速HTTP、HTTP、IP和TCP这四种类型,请避免配置VSIP和端口号都相同、但类型不同的虚服务器,否则将无法预知负载均衡设备处理报文的方法。
四层和七层服务器负载均衡的虚服务器配置有所区别,下面分别进行介绍。
配置VSIP和端口号 |
||
配置UDP强制负载均衡功能 |
||
配置VSIP和端口号 |
||
引用SSL策略 |
||
四层服务器负载均衡的虚服务器包括IP、TCP和UDP三种类型。
创建IP、TCP或UDP类型的虚服务器,并进入虚服务器视图 |
||
七层服务器负载均衡的虚服务器包括快速HTTP和HTTP两种类型。
创建快速HTTP或HTTP类型的虚服务器,并进入虚服务器视图 |
virtual-server vritual-server-name type { fast-http | http } |
|
通过本配置可以指定虚服务器的IPv4或IPv6地址(即VSIP),以及虚服务器的端口号。
表2-25 配置VSIP和端口号(四层)
进入IP、TCP或UDP类型的虚服务器视图 |
||
缺省情况下,IP/TCP/UDP类型虚服务器的端口号为0(表示任意端口号) |
表2-26 配置VSIP和端口号(七层)
进入快速HTTP或HTTP类型的虚服务器视图 |
||
缺省情况下,快速HTTP/HTTP类型虚服务器的端口号为80 如果虚服务器引用了SSL策略,则必须为其配置一个非缺省端口号(通常用443) |
虚服务器缺省服务于公网,通过本配置可使虚服务器服务于特定的VPN。
当主用实服务组可用(该实服务组存在且有可用的实服务器)时,虚服务器通过主用实服务组进行转发;当主用实服务组不可用而备用实服务组可用时,虚服务器通过备用实服务组进行转发。
default server-farm server-farm-name [ backup backup-server-farm-name ] [ sticky sticky-name ] |
虚服务器引用负载均衡策略,能够细化虚服务器负载均衡的粒度。根据策略中的匹配规则,使命中虚服务器的报文根据不同的报文内容进行不同的负载均衡处理,从而有效地丰富了负载均衡的负载功能。
虚服务器只能引用与自身类型相关的策略模板,如:快速HTTP和HTTP类型的虚服务器,可以引用通用或HTTP类型的策略模板;IP、TCP和UDP类型的虚服务器,只能引用通用类型的策略模板 |
参数模板用来对虚服务器上的流量进行比较深入的解析、处理和优化。虚服务器引用了参数模板后,就要根据该参数模板的配置对匹配流量进行相应的处理。
进入IP、TCP或UDP类型的虚服务器视图 |
||
parameter ip profile-name |
进入快速HTTP和HTTP类型的虚服务器视图 |
||
parameter { http | ip | tcp } profile-name |
通过本配置可以调整虚服务器所允许的最大带宽、最大连接数和每秒最大连接数三个参数值。
缺省情况下,虚服务器所允许的最大总带宽、最大上行带宽和最大下行带宽均为0千字节/秒,即不受限制 |
||
缺省情况下,虚服务器所允许的最大连接数为0,即不受限制 |
||
缺省情况下,虚服务器所允许的每秒最大连接数为0,即不受限制 |
当UDP强制负载均衡功能关闭时,匹配虚服务器的流量按照数据流来进行负载均衡,即一个应用的流量会被负载均衡到同一个实服务器上;而当UDP强制负载均衡功能开启后,匹配虚服务器的流量不再按照流来进行负载均衡,而是按照每报文来进行负载均衡。
表2-33 配置UDP强制负载均衡功能
进入UDP类型的虚服务器视图 |
||
开启虚服务器的UDP强制负载均衡功能 |
缺省情况下,虚服务器的UDP强制负载均衡功能处于关闭状态 |
进入HTTP类型的虚服务器视图 |
||
通过指定虚服务器引用的SSL客户端策略,可以对负载均衡设备(作为SSL客户端)与SSL服务器之间传输的流量进行加密传输。
通过指定虚服务器引用的SSL服务器端策略,可以对负载均衡设备(作为SSL服务器)与SSL客户端之间传输的流量进行加密传输。
进入HTTP类型的虚服务器视图 |
||
指定虚服务器引用的SSL客户端策略 |
缺省情况下,虚服务器没有引用任何SSL客户端策略 快速HTTP类型的虚服务器不支持本功能 |
|
指定虚服务器引用的SSL服务器端策略 |
缺省情况下,虚服务器没有引用任何SSL服务器端策略 快速HTTP类型的虚服务器不支持本功能 |
配置热备份功能时,为达到主备切换时业务不中断的目的,需要在虚服务器下开启会话扩展信息和持续性表项的备份功能。
开启虚服务器的会话扩展信息备份功能(IRF模式) |
HTTP类型的虚服务器不支持本功能 |
|
开启虚服务器的持续性表项备份功能(IRF模式) |
负载均衡类的作用是将报文分类,即通过匹配规则将报文按照一定条件进行匹配,以便将不同类型的报文在不同的负载均衡动作流程中处理。一个负载均衡类中最多允许创建65535条匹配规则。
四层和七层服务器负载均衡的负载均衡类配置有所区别,下面分别进行介绍。
创建源IP地址类型的匹配规则 |
创建源IP地址类型的匹配规则 |
|||
创建HTTP实体类型的匹配规则 |
|||
创建HTTP Cookie类型的匹配规则 |
|||
创建HTTP首部类型的匹配规则 |
|||
创建HTTP URL类型的匹配规则 |
|||
loadbalance class class-name type generic [ match-all | match-any ] |
创建负载均衡类时必须为其指定类型;而在进入已创建的负载均衡类视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
|
创建HTTP类型的负载均衡类,并进入负载均衡类视图 |
loadbalance class class-name type http [ match-all | match-any ] |
创建负载均衡类时必须为其指定类型;而在进入已创建的负载均衡类视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
表2-43 创建源IP地址类型的匹配规则
创建源IP地址类型的匹配规则 |
表2-44 创建HTTP实体类型的匹配规则
进入HTTP类型的负载均衡类视图 |
||
创建HTTP实体类型的匹配规则 |
快速HTTP类型虚服务器不支持本功能 |
表2-45 创建HTTP Cookie类型的匹配规则
进入HTTP类型的负载均衡类视图 |
||
创建HTTP Cookie类型的匹配规则 |
表2-46 创建HTTP首部类型的匹配规则
进入HTTP类型的负载均衡类视图 |
||
创建HTTP首部类型的匹配规则 |
表2-47 创建HTTP URL类型的匹配规则
进入HTTP类型的负载均衡类视图 |
||
创建HTTP URL类型的匹配规则 |
进入HTTP类型的负载均衡类视图 |
||
· 转发类动作:确定是否转发以及如何转发报文。如果没有配置转发类动作,报文将被丢弃处理。
· 修改类动作:对报文执行一些修改行为。修改类动作应配合转发类动作使用,否则修改后的报文终将被丢弃。
如果用户想对报文进行丢弃处理,则可在创建负载均衡动作后,不为其指定任何上述动作。
四层和七层服务器负载均衡的负载均衡动作配置有所区别,下面分别进行介绍。
这两条命令互斥,当配置了其中一条后,另一条的配置将被自动取消 |
|||
指定指导转发的实服务组 |
|||
配置发往服务器的IP报文中的ToS字段 |
指定指导转发的实服务组 |
|||
配置发往服务器的IP报文中的ToS字段 |
|||
操作HTTP首部 |
|||
重写服务器发送的HTTP应答报文Location首部的URL |
|||
引用SSL客户端策略 |
创建负载均衡动作时必须为其指定类型;而在进入已创建的负载均衡动作视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
||
创建HTTP类型的负载均衡动作,并进入负载均衡动作视图 |
创建负载均衡动作时必须为其指定类型;而在进入已创建的负载均衡动作视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
|
当主用实服务组可用(该实服务组存在且有可用的实服务器)时,使用主用实服务组指导转发;当主用实服务组不可用而备用实服务组可用时,使用备用实服务组指导转发。
表2-54 指定指导转发的实服务组
server-farm server-farm-name [ backup backup-server-farm-name ] [ sticky sticky-name ] |
表2-55 配置发往服务器的IP报文中的ToS字段
配置发往服务器的IP报文中的ToS字段 |
缺省情况下,不改变发往服务器的IP报文中的ToS字段 |
通过本配置可以对HTTP首部执行以下操作:
· 删除:如果指定方向的HTTP报文中携带有指定名称的首部,系统会将该首部从报文中删除。
· 插入:系统将在指定方向的HTTP报文中插入指定名称和内容的首部。
· 重写:如果指定方向的HTTP报文中携带有指定名称的首部,系统会将该首部中的指定内容重写为新的内容。
如果HTTP应答报文Location首部匹配了指定的URL和HTTP端口号,系统会将Location首部的URL由HTTP重写为HTTPS,并将原HTTP端口号重写为新的SSL端口号。
表2-57 重写服务器发送的HTTP应答报文Location首部的URL
进入HTTP类型的负载均衡动作视图 |
||
重写服务器发送的HTTP应答报文Location首部的URL |
ssl url rewrite location location [ clearport clear-port ] [ sslport ssl-port ] |
缺省情况下,不重写服务器发送的HTTP应答报文Location首部的URL |
通过引用SSL客户端策略,可以对负载均衡设备(作为SSL客户端)与SSL服务器之间传输的流量进行加密传输。
表2-58 引用SSL客户端策略
进入HTTP类型的负载均衡动作视图 |
||
指定引用的SSL客户端策略 |
缺省情况下,没有引用任何SSL客户端策略 |
四层和七层服务器负载均衡的负载均衡策略配置有所区别,下面分别进行介绍。
创建通用类型的负载均衡策略,并进入负载均衡策略视图 |
创建负载均衡策略时必须为其指定类型;而在进入已创建的负载均衡策略视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
|
(可选)配置负载均衡策略的描述信息 |
缺省情况下,负载均衡策略没有描述信息 |
创建HTTP类型的负载均衡策略,并进入负载均衡策略视图 |
创建负载均衡策略时必须为其指定类型;而在进入已创建的负载均衡策略视图时可以不指定类型,但若要指定类型,则必须与创建时的类型一致 |
|
(可选)配置负载均衡策略的描述信息 |
缺省情况下,负载均衡策略没有描述信息 |
通用类型的负载均衡策略只能引用通用类型的负载均衡类和负载均衡动作,HTTP类型的负载均衡策略则无此限制。
进入负载均衡策略视图 |
||
class class-name [ insert-before before-class-name ] action action-name |
缺省情况下,没有为任何负载均衡类指定负载均衡动作 |
通用类型的负载均衡策略只能用通用类型的负载均衡动作作为其默认的负载均衡动作,HTTP类型的负载均衡策略则无此限制。
进入负载均衡策略视图 |
||
缺省情况下,未指定默认的负载均衡动作 |
持续性组的作用是根据某持续性方法将具有一定相关性的会话都分配给同一个实服务器处理。在一个会话中,当其首包通过持续性方法选择了实服务器之后,后续包都会沿用这个选择结果。
四层和七层服务器负载均衡的持续性组配置有所区别,下面分别进行介绍。
配置IP持续性方法 |
|||
配置IP持续性方法 |
|||
配置HTTP实体持续性方法 |
|||
配置HTTP Cookie持续性方法 |
|||
配置HTTP首部持续性方法 |
|||
配置HTTP载荷持续性方法 |
|||
配置SSL持续性方法 |
|||
创建HTTP实体、HTTP Cookie、HTTP首部、HTTP载荷或SSL类型的持续性组,并进入持续性组视图 |
sticky-group group-name type { http-content | http-cookie | http-header | payload | ssl } |
|
表2-69 配置IP持续性方法
配置IPv4持续性方法 |
ip [ port ] { both | destination | source } [ mask mask-length ] |
缺省情况下,不存在任何持续性方法 |
配置IPv6持续性方法 |
ipv6 [ port ] { both | destination | source } [ prefix prefix-length ] |
表2-70 配置HTTP实体持续性方法
进入HTTP实体类型的持续性组视图 |
||
配置HTTP实体持续性方法 |
content [ offset offset ] [ start start-string ] [ end end-string | length length ] |
缺省情况下,不存在任何持续性方法 快速HTTP类型的虚服务器不支持本功能 |
表2-71 配置HTTP Cookie持续性方法
进入HTTP Cookie类型的持续性组视图 |
||
配置HTTP Cookie持续性方法 |
缺省情况下,不存在任何持续性方法 |
|
(可选)指定需在URI中查找的Secondary Cookie的名称 |
缺省情况下,未指定需在URI中查找的Secondary Cookie名称 |
|
表2-72 配置HTTP首部持续性方法
进入HTTP首部类型的持续性组视图 |
||
配置HTTP首部持续性方法 |
缺省情况下,不存在任何持续性方法 |
表2-73 配置HTTP载荷持续性方法
进入HTTP载荷类型的持续性组视图 |
||
配置HTTP载荷持续性方法 |
payload [ offset offset ] [ start start-string ] [ end end-string | length length ] |
缺省情况下,不存在任何持续性方法 快速HTTP类型的虚服务器不支持本功能 |
表2-74 配置SSL持续性方法
进入SSL类型的持续性组视图 |
||
配置SSL持续性方法为基于SSL会话ID |
缺省情况下,不存在任何持续性方法 |
缺省情况下,对于HTTP Cookie类型的持续性组,持续性表项的超时时间为86400秒;对于其它类型的持续性组,持续性表项的超时时间为60秒 |
四层和七层服务器负载均衡的参数模板配置有所区别,下面分别进行介绍。
配置发往客户端的IP报文中的ToS字段 |
|||
配置TCP连接中的本地最大窗口值 |
|||
配置对客户端发来的HTTP请求报文中超出MSS的数据段的处理方式 |
|||
配置对每个HTTP请求报文都进行负载均衡 |
|||
配置对每个HTTP请求或应答报文的首部都执行插入、删除或修改操作 |
|||
配置HTTP最大解析长度 |
|||
配置当HTTP请求或应答报文首部超出最大长度时的处理方式 |
通过配置参数模板可以制订对报文进行更深入处理的模板。这样,当参数模板被虚服务器引用之后,可以对虚服务器的业务流量进行更深入的解析、处理和优化。
创建IP类型的参数模板,并进入参数模板视图 |
parameter-profile profile-name type ip |
|
创建HTTP或TCP类型的参数模板,并进入参数模板视图 |
parameter-profile profile-name type { http | tcp } |
|
表2-80 配置发往客户端的IP报文中的ToS字段
进入IP类型的参数模板视图 |
parameter-profile profile-name |
|
配置发往客户端的IP报文中的ToS字段 |
缺省情况下,不改变发往客户端的IP报文中的ToS字段 |
表2-81 配置TCP连接中的本地最大窗口值
进入TCP类型的参数模板视图 |
parameter-profile profile-name |
|
配置TCP连接中的本地最大窗口值 |
缺省情况下,TCP连接中的本地最大窗口值为65535 |
表2-82 配置对客户端发来的HTTP请求报文中超出MSS的数据段的处理方式
进入TCP类型的参数模板视图 |
parameter-profile profile-name |
|
配置对客户端发来的HTTP请求报文中超出MSS的数据段的处理方式 |
缺省情况下,对客户端发来的HTTP请求报文中超出MSS的数据段的处理方式为允许超出MSS的数据段 |
表2-83 配置对每个HTTP请求报文都进行负载均衡
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
配置对每个HTTP请求报文都进行负载均衡 |
缺省情况下,只对一条连接的第一个HTTP请求报文进行负载均衡,其余请求的处理方式与第一个相同 |
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
快速HTTP类型的虚服务器不支持本功能 |
表2-85 配置对每个HTTP请求或应答报文的首部都执行插入、删除或修改操作
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
配置对每个HTTP请求或应答报文的首部都执行插入、删除或修改操作 |
缺省情况下,只对每个连接的第一个HTTP请求或应答报文的首部执行插入、删除或修改操作 |
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
表2-87 配置HTTP最大解析长度
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
配置HTTP实体的最大解析长度 |
缺省情况下,HTTP实体的最大解析长度为4096 快速HTTP类型的虚服务器不支持本功能 |
|
配置HTTP首部的最大解析长度 |
缺省情况下,HTTP首部的最大解析长度为4096 快速HTTP类型的虚服务器不支持本功能 |
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
配置URL中分隔Secondary Cookie的字符 |
缺省情况下,URL中分隔Secondary Cookie的字符为“/”、“&”、“#”或“+” |
|
配置URL中Secondary Cookie的起始位置标示字符 |
缺省情况下,URL中Secondary Cookie的起始位置标示字符为“?” |
表2-89 配置当HTTP请求或应答报文首部超出最大长度时的处理方式
进入HTTP类型的参数模板视图 |
parameter-profile profile-name |
|
配置当HTTP请求或应答报文首部超出最大长度时的处理方式 |
缺省情况下,当HTTP请求或应答报文首部超出最大长度时,继续进行负载均衡处理 快速HTTP类型的虚服务器不支持本功能 |
开启了负载均衡的告警功能之后,负载均衡会生成告警信息,以向网管软件报告本模块的重要事件。该信息将发送至SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
四层和七层服务器负载均衡的开启负载均衡告警功能配置完全相同。
开启负载均衡的告警功能 |
缺省情况下,负载均衡的告警功能处于开启状态 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后服务器负载均衡的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除服务器负载均衡的统计信息。
三台物理服务器Server A、Server B和Server C均可提供FTP服务,且这三台服务器的硬件配置顺次降低。通过配置负载均衡,在考虑硬件性能的前提下让这三台服务器联合提供FTP服务,并通过健康检测来监控这些服务器是否可达。
· 配置接口IP地址
[LB] interface gigabitethernet 1/0/1
[LB-GigabitEthernet1/0/1] ip address 61.159.4.100 24
[LB-GigabitEthernet1/0/1] quit
[LB] interface gigabitethernet 1/0/2
[LB-GigabitEthernet1/0/2] ip address 192.168.1.100 24
[LB-GigabitEthernet1/0/2] quit
# 创建ICMP类型的NQA模板t1。
[LB-nqatplt-icmp-t1] quit
# 创建实服务组sf,配置其调度算法为加权轮转算法,并指定其健康检测方法为t1。
[LB-sfarm-sf] predictor round-robin
[LB-sfarm-sf] probe t1
[LB-sfarm-sf] quit
# 创建实服务器rs1,配置其IPv4地址为192.168.1.1、端口号为21、权值为150,并加入实服务组sf。
[LB-rserver-rs1] ip address 192.168.1.1
[LB-rserver-rs1] port 21
[LB-rserver-rs1] weight 150
[LB-rserver-rs1] server-farm sf
[LB-rserver-rs1] quit
# 创建实服务器rs2,配置其IPv4地址为192.168.1.2、端口号为21、权值为120,并加入实服务组sf。
[LB-rserver-rs2] ip address 192.168.1.2
[LB-rserver-rs2] port 21
[LB-rserver-rs2] weight 120
[LB-rserver-rs2] server-farm sf
[LB-rserver-rs2] quit
# 创建实服务器rs3,配置其IPv4地址为192.168.1.3、端口号为21、权值为80,并加入实服务组sf。
[LB-rserver-rs3] ip address 192.168.1.3
[LB-rserver-rs3] port 21
[LB-rserver-rs3] weight 80
[LB-rserver-rs3] server-farm sf
[LB-rserver-rs3] quit
# 创建TCP类型的虚服务器vs,配置其VSIP为61.159.4.100,指定其默认的主用实服务组为sf,并开启此虚服务器。
[LB] virtual-server vs type tcp
[LB-vs-tcp-vs] virtual ip address 61.159.4.100
[LB-vs-tcp-vs] default server-farm sf
[LB-vs-tcp-vs] service enable
[LB-vs-tcp-vs] quit
在三台物理服务器Server A、Server B和Server C上,将默认网关都配置为192.168.1.100。
# 显示所有实服务器的简要信息。
[LB] display real-server brief
Real server Address Port State Server farm
rs1 192.168.1.1 21 Active sf
rs2 192.168.1.2 21 Active sf
rs3 192.168.1.3 21 Active sf
# 显示所有实服务组的详细信息。
Server farm: sf
Description:
Predictor: Round robin
NAT: Enabled
SNAT pool:
Failed action: Keep
Active threshold: Disabled
Slow-online: Disabled
Selected server: Disabled
Total real server: 3
Active real server: 3
Real server list:
Name State Address Port Weight Priority
rs1 Active 192.168.1.1 21 150 4
rs2 Active 192.168.1.2 21 120 4
rs3 Active 192.168.1.3 21 80 4
# 显示所有虚服务器的详细信息。
Virtual server: vs
Description:
Type: TCP
State: Active
VPN instance:
Virtual IPv4 address: 61.159.4.100/32
Virtual IPv6 address: --
Port: 0
Default server farm: sf (in use)
Backup server farm:
Sticky:
LB policy:
Connection limit: --
Rate limit:
Connections: --
Bandwidth: --
Inbound bandwidth: --
Outbound bandwidth: --
Connection synchronization: Disabled
Sticky synchronization: Disabled
· 三台物理服务器Server A、Server B和Server C均可提供FTP服务,且这三台服务器的硬件配置顺次降低。通过配置负载均衡,在考虑硬件性能的前提下让这三台服务器联合提供FTP服务,并通过健康检测来监控这些服务器是否可达。
· 为了提高可靠性,由两台负载均衡设备采用双机热备方式进行组网。在这两台负载均衡设备上,要实现会话扩展信息和持续性表项的实时批量备份,以确保主备倒换过程中服务不中断。
· 配置IRF
将两台负载均衡设备配置成一台IRF设备,它们在IRF中的成员编号分别为1和2,配置过程略。
· 配置以太网冗余接口
# 创建以太网冗余接口Reth1,为其配置IP地址并添加成员接口。
[LB-Reth1] ip address 61.159.4.100 24
[LB-Reth1] member interface gigabitethernet 1/0/1 priority 20
[LB-Reth1] member interface gigabitethernet 2/0/1 priority 10
[LB-Reth1] quit
# 创建以太网冗余接口Reth2,为其配置IP地址并添加成员接口。
[LB-Reth2] ip address 192.168.1.100 24
[LB-Reth2] member interface gigabitethernet 1/0/2 priority 20
[LB-Reth2] member interface gigabitethernet 2/0/2 priority 10
[LB-Reth2] quit
# 分别创建四个Track项,各自监视一个以太网接口的状态。
[LB] track 1 interface gigabitethernet 1/0/1
[LB] track 2 interface gigabitethernet 1/0/2
[LB] track 3 interface gigabitethernet 2/0/1
[LB] track 4 interface gigabitethernet 2/0/2
# 创建冗余组bkp,并为其添加成员接口Reth1和Reth2。
[LB-redundancy-group-bkp] member interface reth 1
[LB-redundancy-group-bkp] member interface reth 2
# 创建冗余组主节点1(优先级为100),将其与成员设备1绑定,并关联Track项1和2。
[LB-redundancy-group-bkp] node 1
[LB-redundancy-group-bkp-node-1] priority 100
[LB-redundancy-group-bkp-node-1] bind slot 1
[LB-redundancy-group-bkp-node-1] track 1 interface gigabitethernet 1/0/1
[LB-redundancy-group-bkp-node-1] track 2 interface gigabitethernet 1/0/2
[LB-redundancy-group-bkp-node-1] quit
# 创建冗余组备节点2(优先级为50),将其与成员设备2绑定,并关联Track项3和4。
[LB-redundancy-group-bkp] node 2
[LB-redundancy-group-bkp-node2] priority 50
[LB-redundancy-group-bkp-node2] bind slot 2
[LB-redundancy-group-bkp-node2] track 3 interface gigabitethernet 2/0/1
[LB-redundancy-group-bkp-node2] track 4 interface gigabitethernet 2/0/2
[LB-redundancy-group-bkp-node2] quit
[LB-redundancy-group-bkp] quit
# 创建ICMP类型的NQA模板t1。
[LB-nqatplt-icmp-t1] quit
# 创建实服务组sf,配置其调度算法为加权轮转算法,并指定其健康检测方法为t1。
[LB-sfarm-sf] predictor round-robin
[LB-sfarm-sf] probe t1
[LB-sfarm-sf] quit
# 创建实服务器rs1,配置其IPv4地址为192.168.1.1、端口号为21、权值为150,并加入实服务组sf。
[LB-rserver-rs1] ip address 192.168.1.1
[LB-rserver-rs1] port 21
[LB-rserver-rs1] weight 150
[LB-rserver-rs1] server-farm sf
[LB-rserver-rs1] quit
# 创建实服务器rs2,配置其IPv4地址为192.168.1.2、端口号为21、权值为120,并加入实服务组sf。
[LB-rserver-rs2] ip address 192.168.1.2
[LB-rserver-rs2] port 21
[LB-rserver-rs2] weight 120
[LB-rserver-rs2] server-farm sf
[LB-rserver-rs2] quit
# 创建实服务器rs3,配置其IPv4地址为192.168.1.3、端口号为21、权值为80,并加入实服务组sf。
[LB-rserver-rs3] ip address 192.168.1.3
[LB-rserver-rs3] port 21
[LB-rserver-rs3] weight 80
[LB-rserver-rs3] server-farm sf
[LB-rserver-rs3] quit
# 创建TCP类型的虚服务器vs,配置其VSIP为61.159.4.100,指定其默认的主用实服务组为sf,分别开启会话扩展信息和持续性表项的备份功能,并开启此虚服务器。
[LB] virtual-server vs type tcp
[LB-vs-tcp-vs] virtual ip address 61.159.4.100
[LB-vs-tcp-vs] default server-farm sf
[LB-vs-tcp-vs] connection-sync enable
[LB-vs-tcp-vs] sticky-sync enable
[LB-vs-tcp-vs] service enable
[LB-vs-tcp-vs] quit
在三台物理服务器Server A、Server B和Server C上,将默认网关都配置为192.168.1.100。
# 显示冗余组bkp的相关信息。
[LB] display redundancy group bkp
Redundancy group bkp (ID 1):
Node ID Slot Priority Status Track weight
1 Slot1 100 Primary 255
2 Slot2 50 Secondary 255
Preempt delay time remained : 0 min
Preempt delay timer setting : 1 min
Remaining hold-down time : 0 sec
Hold-down timer setting : 1 sec
Manual switchover request : No
Member interfaces:
Reth1 Reth2
Member failover groups:
Node 1:
Track info:
Track Status Reduced weight Interface
1 Positive 255 GE1/0/1
2 Positive 255 GE1/0/2
Node 2:
Track info:
Track Status Reduced weight Interface
3 Negative 255 GE2/0/1
4 Negative 255 GE2/0/2
# 显示所有实服务器的简要信息。
[LB] display real-server brief
Real server Address Port State Server farm
rs1 192.168.1.1 21 Active sf
rs2 192.168.1.2 21 Active sf
rs3 192.168.1.3 21 Active sf
# 显示所有实服务组的详细信息。
Server farm: sf
Description:
Predictor: Round robin
NAT: Enabled
SNAT pool:
Failed action: Keep
Active threshold: Disabled
Slow-online: Disabled
Selected server: Disabled
Total real server: 3
Active real server: 3
Real server list:
Name State Address Port Weight Priority
rs1 Active 192.168.1.1 21 150 4
rs2 Active 192.168.1.2 21 120 4
rs3 Active 192.168.1.3 21 80 4
# 显示所有虚服务器的详细信息。
Virtual server: vs
Description:
Type: TCP
State: Active
VPN instance:
Virtual IPv4 address: 61.159.4.100/32
Virtual IPv6 address: --
Port: 0
Default server farm: sf (in use)
Backup server farm:
Sticky:
LB policy:
Connection limit: --
Rate limit:
Connections: --
Bandwidth: --
Inbound bandwidth: --
Outbound bandwidth: --
Connection synchronization: Enabled
Sticky synchronization: Enabled
三台物理服务器Server A、Server B和Server C均可提供HTTP服务,且这三台服务器的硬件配置顺次降低。通过配置负载均衡,在考虑硬件性能的前提下让这三台服务器联合提供HTTP服务,并通过健康检测来监控这些服务器是否可达。
· 配置接口IP地址
[LB] interface gigabitethernet 1/0/1
[LB-GigabitEthernet1/0/1] ip address 61.159.4.100 24
[LB-GigabitEthernet1/0/1] quit
[LB] interface gigabitethernet 1/0/2
[LB-GigabitEthernet1/0/2] ip address 192.168.1.100 24
[LB-GigabitEthernet1/0/2] quit
# 创建HTTP类型的NQA模板t1。
[LB] nqa template http t1
[LB-nqatplt-http-t1] quit
# 创建实服务组sf,配置其调度算法为加权轮转算法,并指定其健康检测方法为t1。
[LB-sfarm-sf] predictor round-robin
[LB-sfarm-sf] probe t1
[LB-sfarm-sf] quit
# 创建实服务器rs1,配置其IPv4地址为192.168.1.1、端口号为8080、权值为150,并加入实服务组sf。
[LB-rserver-rs1] ip address 192.168.1.1
[LB-rserver-rs1] port 8080
[LB-rserver-rs1] weight 150
[LB-rserver-rs1] server-farm sf
[LB-rserver-rs1] quit
# 创建实服务器rs2,配置其IPv4地址为192.168.1.2、端口号为8080、权值为120,并加入实服务组sf。
[LB-rserver-rs2] ip address 192.168.1.2
[LB-rserver-rs2] port 8080
[LB-rserver-rs2] weight 120
[LB-rserver-rs2] server-farm sf
[LB-rserver-rs2] quit
# 创建实服务器rs3,配置其IPv4地址为192.168.1.3、端口号为8080、权值为80,并加入实服务组sf。
[LB-rserver-rs3] ip address 192.168.1.3
[LB-rserver-rs3] port 8080
[LB-rserver-rs3] weight 80
[LB-rserver-rs3] server-farm sf
[LB-rserver-rs3] quit
# 创建HTTP类型的虚服务器vs,配置其VSIP为61.159.4.100,指定其默认的主用实服务组为sf,并开启此虚服务器。
[LB] virtual-server vs type http
[LB-vs-http-vs] virtual ip address 61.159.4.100
[LB-vs-http-vs] default server-farm sf
[LB-vs-http-vs] service enable
[LB-vs-http-vs] quit
在三台物理服务器Server A、Server B和Server C上,将默认网关都配置为192.168.1.100。
# 显示所有实服务器的简要信息。
[LB] display real-server brief
Real server Address Port State Server farm
rs1 192.168.1.1 8080 Active sf
rs2 192.168.1.2 8080 Active sf
rs3 192.168.1.3 8080 Active sf
# 显示所有实服务组的详细信息。
Server farm: sf
Description:
Predictor: Round robin
NAT: Enabled
SNAT pool:
Failed action: Keep
Active threshold: Disabled
Slow-online: Disabled
Selected server: Disabled
Total real server: 3
Active real server: 3
Real server list:
Name State Address Port Weight Priority
rs1 Active 192.168.1.1 8080 150 4
rs2 Active 192.168.1.2 8080 120 4
rs3 Active 192.168.1.3 8080 80 4
# 显示所有虚服务器的详细信息。
Virtual server: vs
Description:
Type: HTTP
State: Active
VPN instance:
Virtual IPv4 address: 61.159.4.100/32
Virtual IPv6 address: --
Port: 80
Default server farm: sf (in use)
Backup server farm:
Sticky:
LB policy:
HTTP parameter profile:
Connection limit: --
Rate limit:
Connections: --
Bandwidth: --
Inbound bandwidth: --
Outbound bandwidth: --
SSL server policy:
SSL client policy:
Redirect relocation:
Redirect return-code: 302
Sticky synchronization: Disabled
· 三台物理服务器Server A、Server B和Server C均可提供HTTP服务,且这三台服务器的硬件配置顺次降低。通过配置负载均衡,在考虑硬件性能的前提下让这三台服务器联合提供HTTP服务,并通过健康检测来监控这些服务器是否可达。
· 为了在提高用户访问安全性的同时又不增加服务器的负担,在主机与负载均衡设备之间采用通过SSL加密的HTTPS连接,而在负载均衡设备与服务器之间则采用普通的HTTP连接。负载均衡设备在其中需要完成SSL终结的工作,即终结与主机的SSL会话,并与服务器建立TCP连接。
图2-10 七层服务器负载均衡SSL终结配置组网图
· 配置接口IP地址
[LB] interface gigabitethernet 1/0/1
[LB-GigabitEthernet1/0/1] ip address 61.159.4.100 24
[LB-GigabitEthernet1/0/1] quit
[LB] interface gigabitethernet 1/0/2
[LB-GigabitEthernet1/0/2] ip address 192.168.1.100 24
[LB-GigabitEthernet1/0/2] quit
# 创建HTTP类型的NQA模板t1。
[LB] nqa template http t1
[LB-nqatplt-http-t1] quit
# 创建实服务组sf,配置其调度算法为加权轮转算法,并指定其健康检测方法为t1。
[LB-sfarm-sf] predictor round-robin
[LB-sfarm-sf] probe t1
[LB-sfarm-sf] quit
# 创建实服务器rs1,配置其IPv4地址为192.168.1.1、端口号为8080、权值为150,并加入实服务组sf。
[LB-rserver-rs1] ip address 192.168.1.1
[LB-rserver-rs1] port 8080
[LB-rserver-rs1] weight 150
[LB-rserver-rs1] server-farm sf
[LB-rserver-rs1] quit
# 创建实服务器rs2,配置其IPv4地址为192.168.1.2、端口号为8080、权值为120,并加入实服务组sf。
[LB-rserver-rs2] ip address 192.168.1.2
[LB-rserver-rs2] port 8080
[LB-rserver-rs2] weight 120
[LB-rserver-rs2] server-farm sf
[LB-rserver-rs2] quit
# 创建实服务器rs3,配置其IPv4地址为192.168.1.3、端口号为8080、权值为80,并加入实服务组sf。
[LB-rserver-rs3] ip address 192.168.1.3
[LB-rserver-rs3] port 8080
[LB-rserver-rs3] weight 80
[LB-rserver-rs3] server-farm sf
[LB-rserver-rs3] quit
# 创建HTTP类型的虚服务器vs,配置其VSIP为61.159.4.100、端口号为443,指定其默认的主用实服务组为sf,引用SSL服务器端策略ssp(有关SSL服务器端策略的具体配置,请参见“安全配置指导”中的“SSL”),并开启此虚服务器。
[LB] virtual-server vs type http
[LB-vs-http-vs] virtual ip address 61.159.4.100
[LB-vs-http-vs] port 443
[LB-vs-http-vs] default server-farm sf
[LB-vs-http-vs] ssl-server-policy ssp
[LB-vs-http-vs] service enable
[LB-vs-http-vs] quit
在三台物理服务器Server A、Server B和Server C上,将默认网关都配置为192.168.1.100。
# 显示所有实服务器的简要信息。
[LB] display real-server brief
Real server Address Port State Server farm
rs1 192.168.1.1 8080 Active sf
rs2 192.168.1.2 8080 Active sf
rs3 192.168.1.3 8080 Active sf
# 显示所有实服务组的详细信息。
Server farm: sf
Description:
Predictor: Round robin
NAT: Enabled
SNAT pool:
Failed action: Keep
Active threshold: Disabled
Slow-online: Disabled
Selected server: Disabled
Total real server: 3
Active real server: 3
Real server list:
Name State Address Port Weight Priority
rs1 Active 192.168.1.1 8080 150 4
rs2 Active 192.168.1.2 8080 120 4
rs3 Active 192.168.1.3 8080 80 4
# 显示所有虚服务器的详细信息。
Virtual server: vs
Description:
Type: HTTP
State: Active
VPN instance:
Virtual IPv4 address: 61.159.4.100/32
Virtual IPv6 address: --
Port: 443
Default server farm: sf (in use)
Backup server farm:
Sticky:
LB policy:
HTTP parameter profile:
Connection limit: --
Rate limit:
Connections: --
Bandwidth: --
Inbound bandwidth: --
Outbound bandwidth: --
SSL server policy: ssp
SSL client policy:
Redirect relocation:
Redirect return-code: 302
Sticky synchronization: Disabled
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!