前言:前面我们说了LVS的DR,TUN工作模式,可以实现后端服务器的论循调度,但如果我们的后端服务器如果出现问题,用户的访问势必会受到影响.
-
模拟问题:
/etc/init.d/httpd stop ##关闭一台服务器的http服务
用户在访问的时候会出现问题
-
ldirectord实现健康检查,当我们的服务器出现问题的时候,会做健康检查,用户的访问不会受到影响
-
后端健康检查的部署
这里用到的软件ldirectord-3.9.5-3.1.x86_64.rpm ,大家可以到官网下载 -
server1 仍然作为调度器,添加调度规则
ip a #查看网卡信息 ip addr del 172.25.61.100/24 dev tunl0 #删除tunl0网卡,这里我们使用DR模式 ipvsadm -C ipvsadm -l ipvsadm -A -t 172.25.61.100:80 -s rr ipvsadm -a -t 172.25.61.100:80 -r 172.25.61.2:80 -g ipvsadm -a -t 172.25.61.100:80 -r 172.25.61.3:80 -g modprobe -r ipip /etc/init.d/ipvsadm save
-
添加网卡信息
ip addr add 172.25.61.100/24 dev eth0
-
配置yum源
vim /etc/yum.repos.d/rhel-source.repo yum clean all
-
安装 ldirectord,修改配置文件
yum install -y ldirectord-3.9.5-3.1.x86_64.rpm
rpm -qpl ldirectord-3.9.5-3.1.x86_64.rpm #查看软件的配置文件
/usr/share/doc/ldirectord-3.9.5/ldirectord.cf
cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/
cd /etc/ha.d/
ls
vim ldirectord.cf
/etc/init.d/ldirectord start #重启服务
-
修改http端口
cd /var/www/html/ ls rm -rf * vim index.html vim /etc/httpd/conf/httpd.conf /etc/init.d/httpd restart
server2和server3作为rs
-
添加网卡和开启apache服务
ip addr add 172.25.61.100/32 dev eth0 modprobe -r ipip /etc/init.d/httpd stop
测试
第一种情况,两台后端服务器没有出现问题
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server3</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server3</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1
第二种情况,两台后端服务器其中一台出现问题
[root@server2 ~]# /etc/init.d/httpd stop
Stopping httpd: [ OK ]
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
[root@foundation61 yasuo]# curl 172.25.61.100
<h1>LVS server2</h1>
可以看到,访问不受影响
第三种情况,两台后端服务器都出现问题
[root@server2 ~]# /etc/init.d/httpd stop
Stopping httpd: [ OK ]
[root@server3 ~]# /etc/init.d/httpd stop
Stopping httpd: [ OK ]