大概步骤如下:
所有系统上:
1.改hostname、配置IP、 改hosts文件
2.关闭:iptables、selinux
3.配置yum 源 (可省)
4.ntp同步
两台RealServer上 :
1.安装 httpd,php,启动服务 ,建测试页
yum -y install httpd php
service httpd start; chkconfig httpd on
for i in {1..1000000};do echo $i >> /var/www/html/index.html;done
2.加网关 (指向Director)
echo "any net 0.0.0.0/0 gw 192.168.1.1" >> /etc/sysconfig/static-routes
service network restart
Diretor上:
1.设置内核转发 echo 1 > /proc/sys/net/ipv4/ip_forward
2.安装ipvsadm
yum -y install ipvsadm
3.添加集群 ,保存配置
ipvsadm -A -t 192.168.0.1:80 -m
ipvsadm -a -t 192.168.0.1:80 -r 192.168.1.2
ipvsadm -a -t 192.168.0.1:80 -r 192.168.1.3
ipvsadm -S >>/etc/ipvsadm.conf
client上:
1.安装httpd (其实只是为了使用httpd自带的ab工具)
yum -y install httpd
2. 进行测试 ab -c 100 -n 10000 http://192.168.0.1/
测试结果见本文最后。
DR模式拓扑:
将NAT的网络拓扑中Client连到右测的交换机上,并将IP改成192.168.1.100
注意:在DR模式下,VIP 将设置成:192.168.1.4/32
Director上:
1.清除之前设置的规则
ipvsadm -C
2.增加 eth1:0 的VIP(掩码为32位)
vim /etc/sysconfig/network-script/ifcfg-eth1:0 #添加以下内容并保存:
DEVICE=eth1:0
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.1.4
NETMASK=255.255.255.255
重启服务:Service network restart
3.添加规则:
ipvsadm -A -t 192.168.1.4:80
ipvsadm -a -t 192.168.1.4:80 -r 192.168.1.2
ipvsadm -a -t 192.168.1.4:80 -r 192.168.1.3
两台RealServer上:
1.去掉网关(实际应用中Client是通过三层设备连接过来,所以网关一般就改为指向三层设备.本实验中不去掉其实也不影响。)
2.修改arp宣告和回应:
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
3.配置lo:0的VIP (掩码为32位)
vim /etc/sysconfig/network-script/ifcfg-lo:0 #添加以下内容并保存:
DEVICE=lo:0
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.1.4
NETMASK=255.255.255.255
重启服务:Service network restart
4.配置VIP的主机路由接口为lo :0
route add -host 192.168.1.4 dev lo:0
Client上:
进行测试 ab -c 100 -n 10000 http://192.168.0.1/
下面是闲时及进行ab测试时Director和Realserver上的top性能数据:
1.Director闲时、NAT模式的ab测试、DR模式下的ab测试
2.RealServer闲时、NAT模式的ab测试、DR模式下的ab测试
由上可见,DR模式下,Director性能消耗明显低于NAT模式。
转载于:https://blog.51cto.com/orzorz/1701270