当前位置: 首页 > news >正文

keepalived + lvs (DR)

目录

一、概念

二、实验流程命令

三、实验的目的

四、实验步骤


一、概念

Keepalived和LVS(Linux Virtual Server)可以结合使用来实现双机热备和负载均衡。

Keepalived负责监控主备服务器的可用性,并在主服务器发生故障时,将虚拟IP(VIP)迁移到备服务器上,实现故障转移。同时,Keepalived还可以通过VRRP协议让主备服务器之间进行通信和切换。

LVS是一个用于构建高可用性负载均衡集群的软件,可以分发来自客户端的请求到多台后端服务器进行处理,实现负载均衡。在LVS的工作模式中,DR(Direct Routing)模式是其中一种常用模式。

在LVS的DR模式中,前端负载均衡器(即LVS)与后端服务器之间采用直接路由的方式进行通信,即前端负载均衡器将请求的数据包直接转发给后端服务器,而不经过负载均衡器本身。后端服务器将响应数据包直接返回给客户端。

结合Keepalived和LVS(DR模式),可以实现双机热备和负载均衡的集群架构。主备服务器之间通过Keepalived进行状态同步和故障转移,保证了高可用性。同时,LVS负载均衡器将来自客户端的请求分发到后端服务器,实现了负载均衡,提高了系统的性能和可扩展性。

要设置Keepalived和LVS(DR模式),你需要:

1. 在主备服务器上安装Keepalived软件,并配置keepalived.conf文件,设置虚拟路由器ID、虚拟IP地址、优先级等参数。

2. 在前端负载均衡器上安装LVS软件,并配置LVS的工作模式为DR模式。配置前端负载均衡器的网络接口、VIP地址和后端真实服务器的IP地址。

3. 配置后端真实服务器上的路由表和网络设置,确保能够通过直接路由的方式与前端负载均衡器进行通信。

4. 启动Keepalived和LVS服务,确保它们正常工作。

请注意,配置和使用Keepalived和LVS需要一定的网络和系统管理经验,建议在实施前仔细阅读相关文档和参考资料,并进行测试和验证。

二、实验流程命令

三、实验的目的

基于DR模式 一台lvs服务 两台节点web服务搭建完成的基础上进行操作,多搭建一台lvs服务,目的是如果第一台lvs损坏,则第二台可以代替第一台进行工作,使结果不受影响。

四、实验步骤

 192.168.115.3 (lvs主)

192.168.115.4 (web服务)

192.168.115.5 (web服务)

192.168.115.6 (lvs备)

在lvs主上面

调度器配置

安装keepalived 和ipvsadm

 

yum install -y epel-release

yum install -y ipvsadm

cd /etc/sysconfig/network-scripts

vim ifcfg-ens33:0

ip a 查看 多虚ip

vim /etc/sysctl.conf中插入

net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects=0
net.ipv4.conf.ens33.send_redirects = 0

sysctl -p 验证

加载模块,启动服务,配置策略

modprobe ip_vs

systemctl start ipvsadm

ipvsadm -A -t 192.168.115.200:80 -s rr

ipvsadm -a -t 192.168.115.200:80 -r 192.168.115.4:80 -g

ipvsadm -a -t 192.168.115.200:80 -r 192.168.115.5:80 -g

 保存策略

 ipvsadm-save > /etc/sysconfig/ipvsadm

 更改配置文件

 yum install -y keepalived

vim /etc/keepalived/keepalived.conf

 

 systemctl start keepalived

 192.168.115.6 (lvs备)

与主配置一样

web节点配置

 

启动服务并添加回环路由

 

第二个web服务和第第一个web服务配置一样

来到网页测试 

 刷新

 第一个主停掉 模拟故障,查看 从ip 

ip a 

 成功继承虚拟ip

验证结果  结果不受影响

 

 

说明配置验证成功

http://www.lryc.cn/news/149050.html

相关文章:

  • 微服务框架 go-zero 快速实战
  • mysql基础面经之三:事务
  • JavaScript基本数组操作
  • C#---第21: partial修饰类的特性及应用
  • SQL 语句继续学习之记录三
  • Nexus仓库介绍以及maven deploy配置
  • A Survey on Knowledge-Enhanced Pre-trained Language Models
  • SQL求解用户连续登录天数
  • 掌握逻辑漏洞复现技术,保护您的数字环境
  • windows系统服务器在不解锁屏幕不输入密码的前提下,电脑通电开机启动程序。
  • spring cloud seata集成
  • HTTP 常⻅的状态码有哪些,以及适⽤场景
  • 后端给前端传参数忽略空属性
  • SPSS教程:如何绘制带误差的折线图
  • 积分商城小程序如何精细化运营
  • 企业网络日志管理:EventLog Analyzer的卓越之处
  • Python算法——滑动窗口问题
  • 使用 MATLAB 和 Simulink 对雷达系统进行建模和仿真
  • Linux 中的 sysctl 命令及示例
  • Mybatis批量更新数据及其优化
  • 包含文心一言在内的首批国产大模型 全面开放
  • Linux运维工程师面试题集锦
  • 深度学习——感受野以及与图像修复的问题
  • 微服务容错 Resilience4j 接口服务-容错原理
  • OceanBase 4.x改装:另一种全链路追踪的尝试
  • springCloudAlibaba详解
  • python通过docker打包执行
  • 实现公网远程访问:Windows本地快速搭建SFTP文件服务器并配置端口映射
  • 获取文件路径
  • 如何自己实现一个丝滑的流程图绘制工具(八) 创建节点的文本标签