lvs之DR模式下的健康检测(Idirectord)

1.为什么要进行健康检测?

之前lvs的DR模式和TUN模式我们都是假设后端服务器是可以正常工作的
对于一台后端服务器来说,它不可能永远是可以使用的,有自己的寿命或者会出现其它问题
当lvs集群中的一台后备服务器挂了之后,为了不影响客户的正常访问,应该将它从集群当中踢出去,让客户不再轮询访问
调度器只把客户端的请求转发给状态好的那台web服务器,否则客户端是一会可以访问,一会不能访问
其实实际的企业当中,一个集群的web服务器上面的资源一模一样,访问哪个客户根本感觉不到
我给大家演示的时候写的共享内容不一样是为了实验效果看的更明显而已
如果lvs集群当中所有的后备服务器都挂了,为了不影响客户的正常访问,在调度器上面也安装一个
httpd服务,当客户端访问调度器的时候,调度器直接通过自己的httpd服务告诉服务器坏了
以上这两种情况我们都要考虑到,因此要给客户端一个正常的回应

2.在lvs的DR模式下实现健康检测

下面的实验我们都要基于DR模式来做
实验步骤如下
(1)在调度器上面查看轮询的规则
ipvsadm -ln
在这里插入图片描述
(2)在web1上面模拟httpd服务出现问题
systemctl stop httpd
在这里插入图片描述
(3)在客户端测试
curl 172.25.12.100
curl 172.25.12.100
发现一个web挂了,影响客户的访问
在这里插入图片描述
(4)在web1上面恢复好httpd服务
可以在调度器上看到两个web服务器备访问的次数
在这里插入图片描述
systemctl start httpd
在这里插入图片描述
(5)在客户端测试

curl 172.25.12.100
curl 172.25.12.100
可以正常访问了

(6)现在使用ldirectord这个插件解决上面的问题,使得客户可以稳定的访问web资源
在lvs调度器上面:

ipvsadm -C清除之前的隧道策略
modprobe -r ipip删除隧道模块

在这里插入图片描述
在web1上面:

modprobe -r ipip
ip addr add 172.25.12.100/24 dev eth0
ip a

在web2上面:

moprobe -r ipip
ip addr add 172.25.12.100/24 dev eth0
ip a

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在lvs调度器上面:

ipvsadm -ln
ipvsadm -A -t 172.25.12.100:80 -s rr
ipvsadm -a -t 172.25.12.100:80 -r 172.25.12.2:80 -g
ipvsadm -a -t 172.25.12.100:80 -r 172.25.12.3:80 -g
systemctl restart ipvsadm.service
cat /etc/sysconfig/ipvsadm
ipvsadm -ln
ip addr add 172.25.12.100/24 dev eth0
ip a

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在客户端测试一下:看之前的东西能不能用
curl 172.25.12.100
curl 172.25.12.100
可以看到回到DR模式的正常访问了
在这里插入图片描述
然后在客户端把插件安装包的发给lvs服务器
在这里插入图片描述
在lvs服务器上面:
给lvs配置一个高可用的yum源
在这里插入图片描述
在真机(客户端)搭建共享yum源
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到lvs调度器可以使用yum源了

安装ld插件
rpm -qc ld
rpm -qpl ld
cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d/ ( /usr/share/doc/ldirectord-3.9.5/ldirectord.cf为配置文件)
vim /etc/ha.d/ldirectord.cf编辑设置信息
/etc/init.d/ldirectord start脚本方式启动服务(企业6
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

yum install -y httpd
cd /var/www/html
rm -rf *
vim index.html
哎呀,走丢了
systemctl restart httpd
chkconfig --list列出脚本方式启动的服务的开机子启动的服务
改8080为80

在这里插入图片描述
在这里插入图片描述
systemctl restart httpd
在这里插入图片描述
(7)在客户端测试
web1和web2都好着
web1坏掉,自动踢出集群
web1和web2都坏掉
发现lvs的http服务
在这里插入图片描述
现在是两个后端服务器均可以正常访问
在这里插入图片描述
在这里插入图片描述
可以看到web1不能访问了
重启健康检测服务
在这里插入图片描述
依然不正常
在这里插入图片描述
配置健康检测服务并且重启

fallback 表示调度器自己的回环接口,两台RS都挂了就访问这个
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到已经实现了健康访问
两个web服务器都关闭
在这里插入图片描述
可以看到当两个web后端服务器出现问题的时候,lvs服务器会给客户端一个响应
这就实现了lvsDR模式的健康检测

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值