LVS-DR模式下(RS检测)ldirectord工具实现部分节点掉点后将请求发往正常设备进行处理

基于前文的LVS-DR集群构建环境

一.下载ldirectord软件

二.将模板文件中的LVS-DR模式相关文件拷贝到/etc/ha.d主配置目录并按实际设备修改

三.配置两台RS匹配规则

四.停止RS1的http服务进行测试

RS1失去工作能力,RS2接替RS1


基于前文的LVS-DR集群构建环境

一.下载ldirectord软件

[root@localhost ~]# yum install -y ldirectord-4.1.1-3.40.el7.noarch.rpm
[root@localhost ~]# rpm -ql ldirectord
/etc/ha.d   #主配置目录
/etc/ha.d/conf
/etc/ha.d/resource.d
/etc/ha.d/resource.d/ldirectord
/etc/logrotate.d/ldirectord
/etc/rc.d/init.d/ldirectord
/run/ldirectord
/usr/lib/systemd/system/ldirectord.service   #服务管理
/usr/lib/tmpfiles.d/ldirectord.conf
/usr/sbin/ldirectord  #主程序
/usr/share/doc/ldirectord-4.1.1
/usr/share/doc/ldirectord-4.1.1/ldirectord.cf  #配置模板文件
/usr/share/man/man8/ldirectord.8.gz

二.将模板文件中的LVS-DR模式相关文件拷贝到/etc/ha.d主配置目录并按实际设备修改

[root@localhost ha.d]# pwd
/etc/ha.d
[root@localhost ha.d]# vim ldirectord.cf 
checktimeout=3
checkinterval=1
autoreload=yes  #自动重载
logfile="/var/log/ldirectord.log"   #日志存放路径
quiescent=no

virtual=192.168.2.188:80   #VIP地址1
        servicename=Web Site
        comment=Test load balanced web site
        real=192.168.2.191:80 gate 2   #RS地址,gate表示权重1
        real=192.168.2.192:80 gate 3
        service=http  
        scheduler=wrr  #调度算法
        protocol=tcp  
        checktype=negotiate
        checkport=80
        request="index.html"
        receive="Test Page"
        virtualhost=www.x.y.z

三.配置两台RS匹配规则

[root@localhost ha.d]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.2.188:80 wrr
[root@localhost ha.d]# ipvsadm -a -t 192.168.2.188:80 -r 192.168.2.191 -g -w 2
[root@localhost ha.d]# ipvsadm -a -t 192.168.2.188:80 -r 192.168.2.192 -g -w 3
[root@localhost ha.d]# ipvsadm
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  localhost.localdomain:http wrr
  -> 192.168.2.191:http           Route   2      0          0         
  -> 192.168.2.192:http           Route   3      0          0         

四.停止RS1的http服务进行测试

RS1失去工作能力,RS2接替RS1

[root@localhost ~]# systemctl stop httpd.service
[root@localhost ~]# for ((i=1;i<=10;i++)); do curl 192.168.2.188:80; done
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
[root@localhost ~]# for ((i=1;i<=10;i++)); do curl 192.168.2.188:80; done
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
share192
share192
curl: (7) Failed connect to 192.168.2.188:80; Connection refused
相关推荐
2202_754421549 分钟前
生成MPSOC以及ZYNQ的启动文件BOOT.BIN的小软件
java·linux·开发语言
运维&陈同学1 小时前
【zookeeper03】消息队列与微服务之zookeeper集群部署
linux·微服务·zookeeper·云原生·消息队列·云计算·java-zookeeper
旦沐已成舟1 小时前
DevOps-Jenkins-新手入门级
服务器
周末不下雨2 小时前
win11+ubuntu22.04双系统 | 联想 24 y7000p | ubuntu 22.04 | 把ubuntu系统装到1T的移动固态硬盘上!!!
linux·运维·ubuntu
软件技术员2 小时前
Let‘s Encrypt SSL证书:acmessl.cn申请免费3个月证书
服务器·网络协议·ssl
哎呦喂-ll2 小时前
Linux进阶:环境变量
linux
Rverdoser2 小时前
Linux环境开启MongoDB的安全认证
linux·安全·mongodb
PigeonGuan3 小时前
【jupyter】linux服务器怎么使用jupyter
linux·ide·jupyter
一条晒干的咸魚3 小时前
【Web前端】创建我的第一个 Web 表单
服务器·前端·javascript·json·对象·表单