负载均衡LVS集群下DR模式的搭建(DR+ldirectord+Keepalived)

本文详细介绍LVS集群系统,包括其组成、工作模式及配置过程。针对DR模式的限制提出了解决方案,并通过实例演示如何配置高可用性及健康检查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.什么是lvs

LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

二.LVS的组成

ipvs 代码
ipvsadm 负责编写规则,定义谁是集群服务,而谁是真正的后端服务器。

三.LVS相关的IP

VIP:客户需要访问的 IP,对外公布
DIP:LVS服务器发送数据到RS服务器的IP
RIP:真正服务器的IP
CIP:客户端的IP

四.LVS/DR模式工作

它的限制在于所有的VIP和RIP要在同一广播域,不支持异地容灾

1.首先得配置虚拟服务器(LVS)

配置高可用yum源
安装编写调度策略工具
添加策略  采用轮询机制rr  将VIP添加进去
再添加RIP策略  -g表示直连模式(DR模式)
查看调度策略
保存策略
如果策略添加错误 ipvsadm -C删掉,再重新加
再给LVS服务器上添加 VIP

2.配置真实后端服务器

安装Apache服务
编写默认发布文件
为了将VS和RS进行通信,必须在RS服务器上添加VIP

3.这样就可以实现轮询

问题1

:DR+arptables
因为RS服务器和LVS服务器上都有VIP,所以在当客户访问VIP的是时候,会随机访问,这样显然是不合理的,我们要让客户只访问调度器。
解决方案:在后台真实服务器上

安装arp火墙管理工具    arptables_jf
添加火墙策略
当有客户端数据流入时,直接拒绝VIP,DROP丢弃
当有数据流出时,以本机IP返回
保存策略
这样问题就解决啦

问题2:

DR+lidrectord 健康检查 在LVS服务器
如果后端服务器(DS)出现故障,就实现不了轮询

解决

安装工具 
拷贝文件 cp /usr/share/doc/lidrectord-3.9.5/librector.cf  /etc/ha.d
设定健康检查
vim /etc/ha.d/librector.cf

测试:
当坏掉一台RS服务器,查看策略,发现调度器自动会将这个坏的RS服务器移除

问题3:

要是两台RS服务都坏掉的话,怎么给客户端返回信息
解决:

这是就要调度器帮忙了
在LVS服务器上,安装Apache服务
编写默认发布文件
比如:网站正在维护。。。。。
将Apache的端口该为80
vim  /etc/httpd/conf/http.conf
重启apache服务
就可以了

问题4:

要是调度器出问题怎么办

解决:

配置主备调度器
安装Keepalived   gcc
给脚本一个可执行权限
做软链接
关闭健康检查服务,因为高可以自带健康检查
移除VIP ,因为高可用会自动添加
编写配置文件
开启Keepalived服务



将编译好的配置文件传给辅调度器 在server4(辅调度器 )上
给脚本一个可执行权限
做软链接
在配置文件里改为备用调度和优先级
开启Keepalived服务

测试:
模拟调度器损坏,看看VIP在哪台LVS上,这就叫做IP漂移。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值