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
验证结果 结果不受影响


说明配置验证成功
相关文章:
keepalived + lvs (DR)
目录 一、概念 二、实验流程命令 三、实验的目的 四、实验步骤 一、概念 Keepalived和LVS(Linux Virtual Server)可以结合使用来实现双机热备和负载均衡。 Keepalived负责监控主备服务器的可用性,并在主服务器发生故障时,将…...
微服务框架 go-zero 快速实战
对于咱们快速了解和将 go-zero 使用起来,我们需要具备如下能力: 基本的环境安装和看文档的能力 Golang 的基本知识 Protobuf 的基本知识 web,rpc 的基本知识 基本的 mysql 知识 其实这些能力,很基础,不需要多么深入&a…...
mysql基础面经之三:事务
6 事务 6.1 说一下事务的ACID和隔离级别 1 讲解了AID三个特性都是为了C(一致性)服务的。一般数据库需要使用事务保证数据库的一致性。 正确情况下最好详细讲讲: ACID是用来描述数据库事务的四个关键特性的首字母缩写,具体包括&a…...
JavaScript基本数组操作
在JavaScript中,内置了很多函数让我们可以去对数组进行操作,本文我们就来学习这些函数吧 添加元素 push ● push可以让我们在数组后面再添加一个数据,例如 const friends ["张三", "李四", "王五"]; frie…...
C#---第21: partial修饰类的特性及应用
0.知识背景 局部类型适用于以下情况: 类型特别大,不宜放在一个文件中实现。一个类型中的一部分代码为自动化工具生成的代码,不宜与我们自己编写的代码混合在一起。需要多人合作编写一个类 局部类型的限制: 局部类型只适用于类、接口、结构&am…...
SQL 语句继续学习之记录三
一,数据的插入(insert 语句的使用方法) 使用insert语句可以向表中插入数据(行)。原则上,insert语句每次执行一行数据的插入。 列名和值用逗号隔开,分别扩在()内,这种形式称为清单。…...
Nexus仓库介绍以及maven deploy配置
一 、Nexus仓库介绍 首先介绍一下Nexus的四个仓库的结构: maven-central 代理仓库,代理了maven的中央仓库:https://repo1.maven.org/maven2/; maven-public 仓库组,另外三个仓库都归属于这个组,所以我们的…...
A Survey on Knowledge-Enhanced Pre-trained Language Models
摘要 自然语言处理(NLP)已经通过使用BERT等预训练语言模型(plm)发生了革命性的变化。尽管几乎在每个NLP任务中都创造了新的记录,但plm仍然面临许多挑战,包括可解释性差,推理能力弱,以及在应用于下游任务时需要大量昂贵的注释数据。通过将外部知识集成到plm中,知识增强预训…...
SQL求解用户连续登录天数
数据分析面试过程中,一般都逃不掉对SQL的考察,可能是笔试的形式,也可能是面试过程中面试官当场提问,当场在纸上写出,或者简单说一下逻辑。 今天,就来分享一道面试中常常被问到的一类SQL问题:连…...
掌握逻辑漏洞复现技术,保护您的数字环境
环境准备 这篇文章旨在用于网络安全学习,请勿进行任何非法行为,否则后果自负。 1、支付逻辑漏洞 攻击相关介绍 介绍: 支付逻辑漏洞是指攻击者利用支付系统的漏洞,突破系统的限制,完成非法的支付操作。攻击者可以采…...
windows系统服务器在不解锁屏幕不输入密码的前提下,电脑通电开机启动程序。
在控制面板中找到“管理工具”中的 “任务计划程序”,打开“任务计划程序”窗口。如图: 双击打开任务计划程序,空白出右键创建基本任务,或者点击最右侧的创建基本任务。 输入名称,点击下一步。 先选择计算机启动时&a…...
spring cloud seata集成
目录 一、seata使用场景 二、seata组成 三、seata服务端搭建 四、客户端使用seata 4.1 客户端增加undo_log表 4.2 客户端增加seata相关配置 4.3 客户端使用注解 五、测试 一、seata使用场景 微服务中,一个业务涉及到多个微服务系统,每个微服务…...
HTTP 常⻅的状态码有哪些,以及适⽤场景
⼀、HTTP状态码 HT T P 状态码( HT T P S t a t u s Co d e )是⽤来表示⽹⻚服务器超⽂本传输协议响应状态的 3 位数字代 码。它由 RFC 2 6 1 6 规范定义,并得到 RFC 2 5 1 8 、 RFC 2 8 1 7 、 RFC 2 2 9 5 、 RFC 2 7 7 4 与 RFC 4 9 1 8…...
后端给前端传参数忽略空属性
JsonInclude JsonInclude注解用于指定在对象序列化为JSON字符串时,哪些属性应该被包含进去,哪些属性应该被忽略掉。 JsonInclude注解有以下几个常用选项: JsonInclude(JsonInclude.Include.NON_NULL):表示只有属性值不为null的属…...
SPSS教程:如何绘制带误差的折线图
SPSS教程:如何绘制带误差的折线图 1、问题与数据 研究者想研究45-65岁健康男性中,静坐时长和血胆固醇水平的关系,故招募100名研究对象询问其每天静坐时长(time),并检测其血液中胆固醇水平(cho…...
积分商城小程序如何精细化运营
随着移动互联网的发展,积分商城小程序成为了企业私域营销的重要组成部分。通过积分商城,企业可以激励用户参与、增加用户粘性,实现更好的用户互动和忠诚度提升。然而,要取得成功,积分商城小程序需要经过精细化的运营。…...
企业网络日志管理:EventLog Analyzer的卓越之处
企业网络日志管理对于维护网络安全、监控系统性能和合规性非常重要。随着网络规模和复杂性的增加,管理日志变得越来越具有挑战性。幸运的是,有一些优秀的工具可以帮助企业实现高效的日志管理。其中一款值得一提的工具是EventLog Analyzer。 一、EventLo…...
Python算法——滑动窗口问题
关于滑动窗口的概念,请自行到网上搜索相关资料,了解清楚再看本博客。 一、子组数最大平均数 LeetCode 第643题:https://leetcode.cn/problems/maximum-average-subarray-i/ 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你…...
使用 MATLAB 和 Simulink 对雷达系统进行建模和仿真
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Linux 中的 sysctl 命令及示例
介绍 Linux管理员使用该命令在运行时sysctl读取或修改内核参数。无需重新启动即可实时控制和修改网络、 I/O 操作和内存管理设置的选项对于高可用性系统至关重要。 了解如何使用该sysctl命令及其选项来动态调整系统性能。...
思科故障排查命令 TOP50
在网络运维这行干久了,你会发现一个很现实的事情:90% 的故障,其实靠“几条命令”就能定位. 但问题是——很多人不是不会,而是: 想不起来用哪个命令 不知道该从哪一步查 查了但不会“看输出” 所以这篇文章,我不单是给你列命令,而是帮你建立一个: 👉 “排查思路 + 命…...
Jimeng LoRA效果对比:不同GPU型号(3090/4090/A10/A100)显存占用实测
Jimeng LoRA效果对比:不同GPU型号(3090/4090/A10/A100)显存占用实测 1. 项目简介 今天给大家带来一个特别实用的技术评测——Jimeng(即梦)LoRA模型在不同GPU上的显存占用实测。如果你正在纠结该用哪款显卡来跑AI绘画…...
Pandas索引器 loc 和 iloc 比较及代码示例
Pandas 索引器 loc 和 iloc 比较及代码示例 以下是针对 Pandas 中 loc 和 iloc 的深度对比分析及代码示例,结合核心差异、使用场景和底层机制展开说明: 一、核心差异解析 特性loc (标签索引)iloc (位置索引)索引类型行/列标签(字符串、日期等…...
Qt图形界面开发集成AI:SmallThinker-3B-Preview实现智能桌面应用
Qt图形界面开发集成AI:SmallThinker-3B-Preview实现智能桌面应用 你是不是也想过,能不能把现在这些厉害的AI能力,直接塞进我们自己写的桌面软件里?比如,在写代码的时候,旁边就有一个能解释复杂代码片段的助…...
成本优化实战:gemma-3-12b-it本地部署为OpenClaw节省40%Token
成本优化实战:gemma-3-12b-it本地部署为OpenClaw节省40%Token 1. 为什么我要做这次优化 上个月我统计OpenClaw的账单时,发现一个惊人的现象:我的自动化助手每天要消耗近3万Token。最夸张的是,其中70%的Token都花在了"鼠标移…...
OpenClaw定时任务:千问3.5-9B实现每日自动化巡检
OpenClaw定时任务:千问3.5-9B实现每日自动化巡检 1. 为什么需要自动化巡检 去年接手一个长期维护的Python项目时,我每天早晨都要手动检查服务器状态、数据库连接、日志错误和依赖库版本。这种重复劳动不仅耗时,还容易遗漏关键指标。直到发现…...
终极指南:web3.py Gas价格策略如何优化以太坊交易成本
终极指南:web3.py Gas价格策略如何优化以太坊交易成本 【免费下载链接】web3.py A python interface for interacting with the Ethereum blockchain and ecosystem. 项目地址: https://gitcode.com/gh_mirrors/we/web3.py web3.py 作为以太坊区块链的 Pytho…...
基于YOLOv8深度学习的电梯内电动车检测系统(YOLOv8+YOLO数据集+UI界面+Python项目源码+模型)
一、项目介绍 项目摘要 随着城市化进程的加速,电梯已成为现代建筑中不可或缺的垂直交通工具。然而,电动车进入电梯并违规充电引发的火灾事故频发,对人民生命财产安全构成严重威胁。为解决这一问题,本系统基于YOLOv8深度学习算法…...
Ubuntu 20.04下Mathematica 12.3安装全攻略(附Jupyter集成技巧)
Ubuntu 20.04下Mathematica 12.3安装与Jupyter集成实战指南 在科研计算与符号数学领域,Mathematica始终保持着不可替代的地位。对于Ubuntu用户而言,安装特定历史版本(如12.3)往往比最新版本更具挑战性——官方默认提供最新版下载&…...
ESC固件底层开发:寄存器级驱动与无传感器换相实现
1. ESC固件底层技术解析:电子调速器固件架构与驱动实现电子调速器(Electronic Speed Controller, ESC)是无人机、电动航模、机器人驱动系统中的核心执行单元,其本质是一个高动态响应的三相逆变器控制器。ESC固件并非简单的PWM输出…...
