鉴于lvs的NAT模型生成环境使用的较少,所以本文档使用的是lvs的DR模型!
一.实验前的准备
1.实验的节点:可以把它写进hosts文件中,加快解析!如下
192.168.145.147 job3.node.com job3
192.168.145.146 job2.node.com job2
192.168.145.137 job1.node.com job1
2.时间要同步:
ntpd 192.168.145.199
注意: 要关闭本机的ntpd服务器,不然会报错
3.配置主机名。如上面的hosts文件
hostname job1.node.com :暂时生效
修改/etc/sysconfig/network : 永久生效
4.关闭selinux
setenforce 0 :立即生效
修改/etc/sysconfig/selinux : SELINUX=permissive :永久生效
5.由于iptables和lvs不能共存,所以要提前关闭;
service iptables save
service iptables stop
6.虚拟ip地址的规划
本文档使用的vip地址是: 172.16.199.199; 它绑定在Director主机上的eth0:0上面
二.Director 上的软件安装(Director为前端分发器),本文档的分发器是
192.168.145.137 job1.node.com job1
1. 配置好yum源 ,注意要把Cluster的仓库加入配置文件,如下
cat /etc/yum.repos.d/server.repo
[base]
name=redhat
baseurl=file:///mnt/Server
gpgcheck=0
enable=1
[Cluster]
name=Cluster
baseurl=file:///mnt/Cluster
gpgcheck=0
enable=1
mount /dev/cdrom /mnt :挂载镜像
2.查看系统的内核是否支持ipvs的功能,若有如下显示则表示内核支持
grep -i 'ipvs' /boot/config-2.6.18-308.el5
# IPVS transport protocol load balancing support
# IPVS scheduler
# IPVS application helper
3.安装ipvsadm,用户空间工具
yum -y install ipvsadm
4.查看安装的软件
rpm -ql ipvsadm
5.绑定vip地址并给Director添加一条主机路由
ifconfig eth0:0 172.16.199.199 broadcast 172.16.199.199 netmask 255.255.255.255 up
route add -host 172.16.199.199 dev eth0:0
三: Realserver上面的操作,本文档提供两个Realserver ,如下:
192.168.145.147 job3.node.com job3
192.168.145.146 job2.node.com job2
1.设置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
2.配置虚拟地址,用来响应客户端,并添加路由,注意:测出虽然也配置了vip地址,但是它的arp响应和回复级别,使得客户端对他的直接请求,它是不会应答的!
ifconfig lo:0 172.16.199.199 broadcast 172.16.199.199 netmask 255.255.255.255.
up
route add -host 172.16.199.199 dev lo:0
3.安装web服务,并提供不同的页面;生成环境不是一样的主页,本文只是测试使用!
yum -y install httpd
echo '`hostname`' > /var/www/html/index.html
4.启动web服务
service httpd start
chkconfig httpd on
四: 在Director上添加规则
1.在Director上添加规则
ipvsadm -A -t 172.16.199.199:80 -s rr : 本文使用的是rr转发模式
ipvsadm -a -t 172.16.199.199:80 -r 192.168.145.147 -m
ipvsadm -a -t 172.16.199.199:80 -r 192.168.145.146 -m
后端有两台realserver服务器
2.客户端用浏览器测试