Cisco IOS服务器负载均衡(Server Load Balancing)
CiscoIOS SLB在多台服务器之间智能地均衡TCP/IP流量,Cisco IOS SLB是一种第4层或第7层交换功能。
CiscoIOS SLB提供单个虚拟服务器IP地址,客户向该IP地址发送IP请求,交换机在一系列服务器之间分配这些请求。
CiscoIOS SLB具有一下优点:
1. 通过在服务器群集之间分配客户请求获得较高的性能;
2. 管理服务器应用程序的工作更容易,客户只知道虚拟ip地址,实际ip地址发生变化时不会影响客户端;
3. 其地址不会被通告到外部网络,所以可以保护实际服务器;
4. 可以透明地添加和拆除实际服务器,让其他服务器处理客户请求,从而避免宕机时间;
5. 交换机发现服务器没有响应后,不再将请求转发给他,直到他对交换机的轮询做出响应为止;
SLB虚拟服务器和实际服务器
CiscoIOS SLB的运行模式
在SLB部署环境中,客户端会与虚拟服务器IP地址进行连接。当客户端向虚拟服务器发起连接时,SLB 功能会根据管理员配置的负载分担算法,为这个连接选择一个真实服务器.
CiscoIOS SLB支持如下重定向模式:
1. 调度模式(dispatched mode):在调度模式下,在每台实际服务器上,将虚拟服务器的地址指定为环回地址或辅助IP地址。
2. 直接模式(directed mode):在直接模式下,可以给虚拟服务器分配一个实际服务器不知道的ip地址,使用NAT将虚拟服务器的ip地址转换为实际服务器的地址。
Eg:
配置Cisco IOS SLB
配置实际服务器
Switch(config)#ipslb serverfarm serverfarm-name-------------------------定义实际服务器群组;
Switch(config-slb-sfarm)#realip-address-of-the-real-server--------------将实际服务器同服务器群组关联起来;
Switch(config-slb-real)#inservice-------------------------------------------------启用CiscoIOS服务器群组中的实际服务器;
Switch(config)#ipslb serverfarm A
Switch(config-slb-sfarm)#real10.1.1.1
Switch(config-slb-real)#inservice
Switch(config-slb-real)#exit
Switch(config-slb-sfarm)#real10.1.1.2
Switch(config-slb-real)#inservice
Switch(config-slb-real)#exit
Switch(config-slb-sfarm)#real10.1.1.3
Switch(config-slb-real)#inservice
Switch(config-slb-real)#exit
Switch(config-slb-sfarm)#exit
Switch(config)#ipslb serverfarm B
Switch(config-slb-sfarm)#real10.1.1.20
Switch(config-slb-real)#inservice
Switch(config-slb-real)#exit
Switch(config-slb-sfarm)#real10.1.1.21
Switch(config-slb-real)#inservice
Switch(config-slb-real)#end
显示SLB实际服务器
显示SLB服务器群组
配置虚拟服务器
Switch(config)#ipslb vserver vserver-name
Switch(config-slb-vserver)#virtualip-address network-mask tcp udp port-number-------配置虚拟服务器的ip地址;
Switch(config-slb-vserver)#serverfarmprimary-serverfarm-name-----指定与虚拟服务器相关联的主服务器和辅助服务器;
Switch(config-slb-vserver)#inservice-------------------------------------------------------------------启用虚拟服务器;
Switch(config-slb-vserver)#clientip-address network-mask------------------------------------指定可以访问该虚拟服务器的客户;
Switch(config)#ipslb vserver A-http
Switch(config-slb-vserver)#virtual10.1.1.100 tcp www
Switch(config-slb-vserver)#serverfarmA
Switch(config-slb-vserver)#inservice
Switch(config-slb-vserver)#exit
Switch(config)#ipslb vserver B-http
Switch(config-slb-vserver)#virtual10.1.1.200 tcp www
Switch(config-slb-vserver)#client10.4.4.0 255.255.255.0
Switch(config-slb-vserver)#serverfarmB
Switch(config-slb-vserver)#inservice
Switch(config-slb-vserver)#end
显示SLB 虚拟服务器
显示当前的SLB连接
显示SLB客户的详细信息
显示SLB统计信息