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
相关推荐
被遗忘的旋律.5 分钟前
Linux驱动开发笔记(十)——中断
linux·驱动开发·笔记
凡间客31 分钟前
Linux防火墙-Firewalld
linux·运维·服务器
nnerddboy1 小时前
Linux嵌入式自学笔记(基于野火EBF6ULL):1.配置环境
linux·笔记·单片机·嵌入式硬件
Justin_191 小时前
Linux防火墙firewalld
大数据·linux·运维
皆过客,揽星河2 小时前
Linux上安装MySQL8详细教程
android·linux·hadoop·mysql·linux安装mysql·数据库安装·详细教程
青草地溪水旁3 小时前
Unix/Linux 系统中的 `writev` 系统调用
linux·unix·writev
Justin_193 小时前
Linux-Shell编程之sed和awk
linux·运维·服务器
Akshsjsjenjd3 小时前
深入理解 Shell 循环与函数:语法、示例及综合应用
linux·运维·自动化·shell
塔中妖3 小时前
【华为OD】Linux发行版的数量
linux·算法·华为od
半桔4 小时前
【Linux手册】消息队列从原理到模式:底层逻辑、接口实战与责任链模式的设计艺术
java·linux·运维·服务器