中小企业web服务器的的负载均衡集群方案设计+脚本代码(20)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

中小企业web服务器的的负载均衡集群方案设计+脚本代码(20)


                    
                    而后重新载入nginx的配置文件:
                    #service nginx reload
4.3.5配置DR模型实现LVS

ipvs

(1)首先判断内核是否支持ipvs
#grep -i "vs" /boot/config-$(uname -r)
出现IP_VS字样并且不是注释信息表明内核支持ipvs

(2)安装ipvsadm包
配置好yum源
#yum install ipvsadm

(3)ipvsadm组件定义规则的格式:
1.定义集群服务格式:
    添加集群服务:
ipvsadm -A|E -t|u|f service-address [-s scheduler]
[-p [timeout]] [-M netmask]
-A: 表示添加一个新的集群服务
-E: 编辑一个集群服务
-t: 表示tcp协议
-u: 表示udp协议
-f: 表示firewall-Mark,防火墙标记
service-address: 集群服务的IP地址,即VIP
-s 指定调度算法
-p 持久连接时长,如#ipvsadm -Lcn ,查看持久连接状态
-M 定义掩码
ipvsadm -D -t|u|f service-address 删除一个集群服务
ipvsadm -C 清空所有的规则
ipvsadm -R 重新载入规则
ipvsadm -S [-n] 保存规则
b.向集群服务添加RealServer规则:
    .添加RealServer规则
ipvsadm -a|e -t|u|f service-address -r server-address
[-g|i|m] [-w weight]
-a 添加一个新的realserver规则
-e 编辑realserver规则
-t tcp协议
-u udp协议
-f firewall-Mark,防火墙标记
service-address realserver的IP地址
-g 表示定义为LVS-DR模型
-i 表示定义为LVS-TUN模型
-m 表示定义为LVS-NAT模型
-w 定义权重,后面跟具体的权值
ipvsadm -d -t|u|f service-address -r server-address 删除一个realserver
ipvsadm -L|l [options] 查看定义的规则
如:#ipvsadm -L -n
ipvsadm -Z [-t|u|f service-address] 清空计数器
(4)ipvsadm的使用简单使用

director:DIP:eth0         192.168.1.20/24
VIP:eth0:1         192.168.1.19/24
/ / 推荐此配置,也可以配置在lo的别名网卡上lo:0
realS_1: RIP: eth0        192.168.1.21/24
VIP: lo:0        192.168.1.19/24
realS_2: RIP: eth0        192.168.1.22/24
VIP: lo:0        192.168.1.19/24

(a)先在3台机器上安装ipvs.
#yum install ipvsadm

director
#ifconfig eth0:1 192.168.1.19 broadcast 192.168.1.19 netmask 255.255.255.255 up
#route add -host 192.168.1.19 dev eth0:1
#echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -F
# iptables -Z
# ipvsadm -C
# ipvsadm -A -t 192.168.1.19:80 -s wlc
# ipvsadm -a -t 192.168.1.19:80 -r 192.168.1.21 -g -w 1
# ipvsadm -a -t 192.168.1.19:80 -r 192.168.1.22 -g -w 2


(b)在realS_1和realS_2上进行的配置
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
#ifconfig lo down
#ifconfig lo up   重启lo,使暂时性的对lo网卡的配置失效
#ifconfig lo:0 192.168.1.19 broadcast 192.168.1.19 netmask 255.255.255.255 up
#route add -host 192.168.1.19 dev lo:0
将接收目标地址是VIP的数据包送给lo:0网卡,lo:0将数据包解封装,处理,并重新封装,重新封装后的源IP就是lo:0,并从此网卡发送出去 (责任编辑:qin)