(基于Red Hat rhel6.5)
一.负载均衡
1.配置Varnish主机 server1:
/etc/init.d/varnish stop
/etc/init.d/httpd stop
配置server1 yum源
在6.5镜像里找到下列四个模块并添加:
[LoadBalancer] #负载均衡需要的软件包
name=LoadBalancer
baseurl=http://172.25.50.250/rhel6.5/LoadBalancer
gpgcheck=0
[HighAvailability] #高可用集群软件包
name=HighAvailability
baseurl=http://172.25.50.250/rhel6.5/HighAvailability
gpgcheck=0
[ResilientStorage] #存储恢复所需要的软件包
name=ResilientStorage
baseurl=http://172.25.50.250/rhel6.5/ResilientStorage
gpgcheck=0
[ScalableFileSystem] #大规模文件所需要的软件包
name=ScalableFileSystem
baseurl=http://172.25.50.250/rhel6.5/ScalableFileSystem
gpgcheck=0
安裝 ipvsadm 套件
yum install ipvsadm -y
yum repolist
2.配置虚拟主机: 进入vim /etc/htttpd/conf/httpd.conf
NameVirtualHost *:80 #打开虚拟主机接口
<VirtualHost *:80>
DocumentRoot /var/www/html #文件根目录
ServerName server2
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/bbs
ServerName bbs.wrh.org
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/wwrh
ServerName www.wrh.org
</VirtualHost>
必须创建自己要求的发布目录:
vim /www/bbs/index.html
vim /www/wrh/index.html
3.加载策略
VIP 地址为调度器和服务器组共享,调度器配置的 VIP 地址是对外可见的,用于接收虚拟服务的请求报文;
所有的服务器把 VIP 地址配置在各自的 NonARP 网络设备上,它对外面是不可见的,只是用于处理目标地址为 VIP 的网络请求
server1策略
ipvsadm -A -t 172.25.50.100:80 -s rr
ipvsadm -a -t 172.25.50.100:80 -r 172.25.50.2:80 -g
ipvsadm -a -t 172.25.50.100:80 -r 172.25.50.3:80 -g
/etc/init.d/ipvsadm save ##保存策略
/etc/init.d/ipvsadm start ##开启ipvsadm
ip addr add 172.25.50.100/24 dev eth0 ##添加一个vip
真实主机server2策略
ip addr add 172.25.50.100/24 dev eth0 ##添加vip
yum install arptables_jf -y
##arptables_jf 为arptables网络的用户控制过滤的守护进程
arptables -A IN -d 172.25.50.100 -j DROP ##server2上的100失效
arptables -A OUT -s 172.25.50.100 -j mangle --mangle-ip-s 172.25.50.2
##数据包出去时server2广播ip为172.25.50.2而不是100
/etc/init.d/arptables_jf save ##保存策略
arptables -L
真实主机server3策略
ip addr add 172.25.50.250.100/24 dev eth0 #添加vip
arptables -A IN -d 172.25.13.100 -j DROP #server3上的100失效
arptables -A OUT -s 172.25.13.100 -j mangle --mangle-ip-s 172.25.13.3
#同server2
/etc/init.d/arptables_jf save
/etc/init.d/httpd start
测试:浏览器输入172.25.50.100
二.健康检查
ldirectord软件: 健康检查-->自动调用ipvsadm策略--->更新
server1
yum install ldirectord-3.9.5-3.1.x86_64.rpm -y
rpm -ql ldirectord
cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/
cd /etc/ha.d/
ls
vim ldirectord.cf
/etc/init.d/ipvsadm stop # 让之前的策略失效
/etc/init.d/ldirectord start
/etc/init.d/httpd start
cd /var/www/html/
vim /etc/httpd/conf/httpd.conf #--->端口改为80
/etc/init.d/httpd restart
vim index.html
/etc/init.d/httpd restart
三.测试
测试:关闭server2 server3的httpd 模拟服务器挂掉
server1上apach默认发布目录写新的网页
浏览器上输入172.25.13.100/index.html