server4 LB调度
server5 realserver
server6 realserver
改完yum源
[rhel-source]
name=Red Hat
baseurl=http://172.25.11.250/rhel6.5/LoadBalancer/
enabled=1
gpgcheck=0
yum install ipvsadm -y
/etc/init.d/ipvsadm start
在server1中
ip addr add 172.25.10.100/24 dev eth0
ipvsadm -A -t 172.25.10.100:80 -s rr 虚拟ip ---------rr是轮询
ipvsadm -a -t 172.25.10.100:80 -r 172.25.10.5:80 -g
ipvsadm -a -t 172.25.10.100:80 -r 172.25.10.6:80 -g
保存 rule
service ipvsadm save
-g代表gateway,意思为直接路由,还可以有-i(internet)隧道模型,-m(masq)伪装,NAT模式
ipvsadm -ln 查看ip
ipvsadm -l 查看主机名
ipvsadm --help 自己查看帮助
server1本身的子网掩码 要和自身一致
server2 3也要加IP
server2
ip addr add 172.25.10.100/32 dev eth0
server3
ip addr add 172.25.10.100/32 dev eth0
测试:
在真机中
curl 172.25.10.100
server1 curl 172.25.10.100是不通的
lient -> vs ->rs -> client
虚拟系统 真实系统
ipvsadm -C 清空
arp -an|grep 100
查看100的IP 自己设置的
清缓存 arp -d 172.25.10.100
arp 将地址转换为MAC
隐藏server2 3的MAC 地址 访问之后只显示server1调度服务器的MAC 地址
在server2 3添加arptables
yum install arptables_jf -y
arptables -A IN -d 172.25.10.100 -j DROP
arptables -A OUT -s 172.25.10.100 -j mangle --mangle-ip-s 172.25.10.4
arptables -L
/etc/init.d/arptables_jf save
清除真机缓存arp -d 172.25.10.100
再次curl 172.25.10.100就可以实现
arp -an |grep 100
只显示server1的MAC地址了