LVS-DR+Keepalived+动静分离实验

部署LVS-DR+Keepalived 阅读详情

目录

架构图​编辑

实验前准备

DR服务器部署

环境准备

配置keepalived

配置虚拟IP(VIP)

ipvsadm服务

Nginx服务器部署

环境准备

Tomcat服务器部署

环境准备

修改配置文件

动静分离配置

修改nginx主配置文件

测试


架构图

解释一下架构,大概就是用Keepalived实现两台DR服务器的LVS负载均衡,然后后端服务器是两台Nginx服务器两台Tomcat服务器并且实现动静分离
这个实验其实就是把 LVS-DR+Keepalived 和 动静分离 给拼起来,真的是拼起来,两个部分其实就像是独立的部分,互相之间的影响很小

实验前准备

主DR服务器:192.168.188.11   (ens33:0)192.168.188.188
备DR服务器:192.168.188.12   (ens33:0)192.168.188.188
Nginx服务器1:192.168.188.13    (lo:0)192.168.188.188
Nginx服务器2:192.168.188.14    (lo:0)192.168.188.188
VIP(虚拟IP):192.168.188.188
Tomcat服务器1:192.168.188.15
Tomcat服务器2:192.168.188.16
如果只想用四台机器实现,那么就把Tomcat和Nginx部署到同一台就行,比如说Tomcat1和Nginx1同一台,Tomcat2和Nginx2同一台。只需要改一下nginx.conf就行,底下会说

DR服务器部署

环境准备

关闭防火墙
systemctl stop firewalld
setenforce 0

安装ipvsadm和keepalived
yum -y install ipvsadm keepalived

加载ipvs内核模块并查看
modprobe ip_vs
cat /proc/net/ip_vs

配置keepalived

cd /etc/keepalived
备份配置文件
cp keepalived.conf keepalived.conf.bak
对配置文件进行修改
vim keepalived.conf
主备服务器都要配置,下面这张图是主的配置截图,备的配置除了router_id改成LVS_02,state改成BACKUP,priority改成90,其他都一样

配置虚拟IP(VIP)

vim /etc/sysconfig/network-scripts/ifcfg-ens33:0

DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.188.188
NETMASK=255.255.255.255


配置完重启网卡
systemctl restart network
打开虚拟网卡
ifup ens33:0
查看一下有没有生效
ip addr

启动keepalived服务
systemctl start keepalived
关于虚拟网卡,在实验过程中总会碰到一个问题,那就是虚拟网卡连接很不稳定,打开后总是过一段时间就断开,具体原因我也排查不出来,也可能是网络不好,如果在后面测试过程中发现失败,可以用ip addr看一下虚拟网卡是不是断开了,如果没了,那就用systemctl restart network重启网络

ipvsadm服务

主DR服务器(192.168.188.11):
备份
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm

配置规则
先清空
ipvsadm -C
ipvsadm -A -t 192.168.188.188:80 -s rr
ipvsadm -a -t 192.168.188.188:80 -r 192.168.188.13:80 -g
ipvsadm -a -t 192.168.188.188:80 -r 192.168.188.14:80 -g
查看分发策略

备DR服务器(192.168.188.12):
备份
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm
直接查看
ipvsadm -ln,目前并没有策略

当主服务器断开后,备服务器会接收到主服务器的策略,测试的时候可以来这看一下

调整proc响应参数,关闭Linux内核的重定向参数响应
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

Nginx服务器部署

环境准备

关闭防火墙
systemctl stop firewalld
setenforce 0

安装Nginx,不再赘述,这里只说一件事,pid改不改不影响使用,但是如果你改了nginx.conf里面的pid位置,那么就必须创建相应的目录

为了方便测试,在Nginx1和Nginx2的index.html文件里随便写点东西以示区分就行

配置虚拟网卡(lo:0)
vim /etc/sysconfig/network-scripts/ifcfg-lo:0

DEVICE=lo:0
ONBOOT=yes
​​​​​​​IPADDR=192.168.188.188
NETMASK=255.255.255.255


重启网卡
systemctl restart network
启动虚拟网卡
ifup lo:0
查看
ip addr

添加路由规则
route add -host 192.168.188.188 dev lo:0

调整proc响应参数
vim /etc/sysctl.conf

net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2



sysctl -p

Tomcat服务器部署

环境准备

关闭防火墙
systemctl stop firewalld
setenforce 0

安装JDK、Tomcat不再赘述,不知道怎么安装可以看前面的实验

创建测试的应用目录
mkdir /usr/local/tomcat/webapps/test
写一个页面,这是Tomcat1的
vim /usr/local/tomcat/webapps/test/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>   #指定为 test1 页面
</head>
<body>
<% out.println("动态页面 1,http://www.test1.com");%>
</body>
</html>

写一个页面,这是Tomcat2的
vim /usr/local/tomcat/webapps/test/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test2 page</title>   #指定为 test2 页面
</head>
<body>
<% out.println("动态页面 2,http://www.test2.com");%>
</body>
</html>

修改配置文件

vim /usr/local/tomcat/conf/server.xml
因为新增的Host的name也是localhost和原本的重名了,所以把原本的删掉

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true">
	</Context>
</Host>

重启服务
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

动静分离配置

(只需要在Nginx服务器上修改就行)

修改nginx主配置文件

vim /usr/local/nginx/conf/nginx.conf
如果你只用了4台机器,也就是说Nginx服务器同时是Tomcat服务器,那么就把服务器地址池里的IP地址改成Nginx的IP地址就行,端口不变

保存并重启服务
systemctl restart nginx

测试

在客户端的浏览器输入VIP,也就是192.168.188.188可以访问到静态页面,多刷新几次看看负载均衡有没有问题
这里要说一下,可能是LVS本身有问题,导致Nginx1的页面和Nginx2的页面总有一个很难刷新出来,这并不代表就是错的,如果一直只能看到Nginx1,那就把Nginx1服务器上的Nginx服务直接停了,再刷新,如果能访问到Nginx2那就说明没问题
再输入192.168.188.188/index.jsp就能访问到动态页面,多刷新几次看看负载均衡有没有问题,这里用的Nginx的调度算法,就能正常显示Tomcat1和Tomcat2的动态页面

​​​​​​

LVS负载均衡——DR+Keepalived部署实战 目录 前言 一、LVS-DR 1、LVS-DR工作特点 2、LVS-DR存在ARP问题以及解决方法 二、LVS-DR部署 1、实验环境 2、实验目的 3、实验过程 3.1 调度器配置 3.2 配置两台节点IP地址绑定VIP 3.3 节点服务器配置抑制ARP响应 3.4 两台节点服务器配置测试网址 3.5 实验验证 三、keepalived实现原理 1、keepalived工具概述 2、原理解析 四、如何部署Keepalievd 1、Keepalievd部署概述 ... 阅读详情

相关推荐

【lvs】两台主机同时部署LVS(DR)+keepalived+RealServer

【lvs】两台主机同时部署LVS(DR)+keepalived+RealServer

H2K1R~ACE 1455

【集群】LVS+keepalived高可用、nginx+Tomcat动静分离、nfs共享存储

搞实验,心态要平衡

持之以恒的锻炼,才能稳步向前 539

【OpenBMC 系列】4.启动流程 使用qume模拟ast2600-evb

1.安装openbmc适配的qume 2.启动bmc 3.使用bmc web

AiFool的博客 4458

LVS负载均衡+动静分离+高可用(nginx+tomcat+keepalived)

文章目录[隐藏] 一、环境介绍二、环境安装1、安装JDK2.两台服务器安装tomcat3、nginx安装4、keepalive安装三、负载均衡四、动静分离五、keepalive高可用1、遇到的问题1及解决过程2、遇到的问题2及解决过程 一、环境介绍 基于LVS(linux virtual server)linux虚拟服务器的http集群搭建...

WGH100817的博客 445

Vercel部署个人博客

先去注册一个账号,建议注册一个Github账号后,使用Github账号来登录Vercel。vercel 部署静态资源网站极其方便简单,并且有可观的访问速度,最主要的是免费部署。此时项目已经成功搭建完毕了,点击图片即可跳转到 vercel 所提供的二级域名访问。然后可以直接拉取我的仓库,所有已经配置好了,可以直接使用,建议fork成自己的!然后修改dns就行,注意vercel提供的域名可能访问不了,需要自己绑定!如果有自己的域名,还可以在 vercel 中进行设置。进入Vercel官网。

醉里博客202271.xyz 2357

ChatBI告别“NL2SQL依赖症”!从准确率50%到90%,3大技术路线+4个企业案例拆解核心玩法

摘要: ChatBI通过自然语言交互实现数据民主化,其核心是“语义理解+数据执行+知识沉淀”的全链路能力,而非单一的NL2SQL技术。行业采用三大技术路线提升准确率:专有知识库(提升30%)、指标标签语义层(准确率85%)、JSON中间层(多轮对话提升25%)。数据执行方案包括NL2SQL、NL2API等,需结合场景选择。企业落地需解决四大痛点:跨表查询准确率低(引入拓扑图)、模糊查询(用户干预机制)、响应慢(预计算缓存)、多轮对话(上下文池)。Spring AI Alibaba提供轻量级集成方案,助力企业

weixin_52610848的博客 1653

LVS-DR及keepalived实验

1、LVM概述 2、LVM的管理命令 3、LVM应用示例 4、磁盘配额概述 5、磁盘配额管理

ruocheng6的博客 736

Unity中的坐标系及其转换方法

Unity中的坐标系及其转换方法 Unity中有四种坐标系: 1.全局坐标系 World Coordinate System 全局坐标系是用于描述场景内所有物体位置的方向的基准,也称为世界坐标系,Unity中创建的物体都是以全局坐标系中的坐标原点(0,0,0),来确定各自的位置的,可以使用transform.position来获取游戏对象的世界坐标。 2.局部坐标系 Local Coordinate System 局部坐标系也称为模型坐标系或物体坐标系,每个物体都有自身独立的物体坐标系。当物体移动或改变方向

Z_hongli的博客 8178

LVS 负载均衡 ------ DR模式 + Keepalived(综合实验)

文章目录一、keepalived :(1)keepalived是什么(2)keepalived工作原理二、配置步骤:第一步:配置两台 DR第二步:配置第一台节点服务器 web1第三步:配置第二台节点服务器 web2第四步:客户端测试第五步:部署 keepalived第六步:实验结果验证 一、keepalived : (1)keepalived是什么 keepalived是集群管理中保证集群高可用的...

weixin_45409371的博客 702

【已解决】WorkBuddy 国内版与国际版共存 + 关闭自动更新 教程

本文介绍在Windows系统中同时安装并共存WorkBuddy国内版与国际版的完整方案,通过修改product.json文件关闭启动自动更新,修复缓存配置污染问题,确保两版本互不干扰、数据独立。重点解决因共享身份标识导致的更新源错乱、进程锁冲突及自动覆盖风险,提供命令行备份与修改步骤,并强调手动升级时需避免使用应用内更新功能,以规避平台参数错位缺陷。

人生是一场修行 1489

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs. Replicate the

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs.

zhengzaifeidelushang的博客 726

lvs的优缺点

LVS的优点是: 1、抗负载能力强、是工作在网络4层之上仅作分发之用,没有流量的产生,这个特点也决定了它在负载均衡软件里的性能最强的,对内存和cpu资源消耗比较低。 2、配置性比较低,这是一个缺点也是一个优点,因为没有可太多配置的东西,所以并不需要太多接触,大大减少了人为出错的几率。 3、工作稳定,因为其本身抗负载能力很强,自身有完整的双机热备方案,如LVS+Keepalived,不过我们在

孙闯的博客 3480

linux系统下XDMA驱动的安装与测试问题总结

先看两个常见的问题。一个是驱动安装问题,一个是驱动测试错误;error 512 能识别PCIE的设备,但是The kernel modle installed correctly, but no devices were recognized.

whm128的博客 3800

LVS-DR模式+keepalived+nginx+tomcat实现动静分离、负载均衡、高可用实验

nginx5——20.0.0.51——后端真实服务器1(tomcat的代理服务器)——nginx服务。nginx6——20.0.0.61——后端真实服务器2(tomcat的代理服务器)——nginx服务。test2——20.0.0.20——主服务器——ipvsadm、keepalived服务。tomcat——20.0.0.12——后端真实服务器3——tomcat服务。tomcat——20.0.0.22——后端真实服务器4——tomcat服务。(3)远程复制并修改主服务器keepalived服务的配置文件。

2303_79207100的博客 1694

第14.1章 高翔博士2025年11月最新开源框架Lightning-LM源码学习解读(一):激光-IMU定位+建图算法各模块简介

Lightning-LM:高效激光SLAM定位系统 该框架基于模块化设计,通过激光-IMU融合实现快速建图与定位,核心特点包括: 极速性能:纯CPU运行(建图1.2核/定位0.8核) 模块化架构:包含激光里程计(LIO)、地图管理、回环检测等独立模块 动态场景支持:地图分块加载、动静态图层分离 多模式适配:支持ROS2环境下的在线/离线运行 关键模块包括前端里程计(core/lio)、2D/3D地图转换(core/g2p5)、轻量优化库(core/miao)等,通过系统控制器(core/system)协调流

行知SLAM 2437

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

lvs,haproxy,keepalived,nginx,tomcat介绍和实验

lvs,haproxy,keepalived,nginx,tomcat介绍和实验

2301_81717288的博客 1057

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

LVS-DR+keepalived

LVS-DR+keepalived

Drw_Dcm的博客 1878

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

LVS+Keepalived之DR模式配置

LVS+Keepalived之DR模式配置 理论基础 LVS直接配置DR模式,会存在一个问题,LVS负载均衡器是单点,容易发生单点故障,这样就会造成所有的服务都无法访问,这是不能容忍的。 解决单点故障的方法当然是一变多!但是入口的IP地址只能有一个,怎么变多?怎么实现多点?有2种形式: 主备模型:备用机要以最快的速度接管原来的VIP(virtual IP),只有主机对外提供服务,只有主机挂了的时候,备机才顶上去。 主主模型:所有的LVS都是主,现在要借用其他形式搞定只有一个的入口IP地址,比如动态DNS。

morris 2万+

零基础搭建LVS-DR+keepalived

支持 10 万级 QPS 的高可用负载均衡集群实现 99.99% 的业务连续性(故障转移时间 < 2 秒)Linux 内核参数调优(sysctl、ipvs)高可用协议(VRRP)与负载均衡算法(WLC、RR)ARP 抑制、VIP 绑定异常处理拟网络配置)VLAN 划分防止 ARP 广播风暴容灾方案跨机房部署(VMware vSphere 分布式交换机模拟)结合 Keepalived+MySQL 双主实现状态同步支持 10 万级 QPS 的高可用负载均衡集群。

SinBarSall的博客 1179

基于LVS-DR+Keepalived的高可用Web负载均衡实验

这个实验是一个典型的 LVS (Linux Virtual Server) + Keepalived 高可用负载均衡集群的实现,具有重要的实际应用价值。

hnlucky的博客 1064

部署 反向代理高可用(keepalived+LVS-DR)、web集群动静分离(nginx+tomcat)、MySQL集群(MHA高可用+一主两从+读写分离)、NFS共享文件 项目

部署反向代理高可用(keepalived+LVS-DR)、web集群动静分离(nginx+tomcat)、MySQL集群(MHA高可用+一主两从)、NFS 项目

搬着砖,敲着代码的博客 1401

Keepalived+Lvs DR模式搭建

讲解了如何搭建负载均衡集群,lvs的DR模式搭建,keepalived+lvs DR模式的运用。使用这些例子来展示lvs负载均衡的效果。

秋的博客 1376

Keepalived + LVS-DR 负载均衡实验

lb_algo rr # 负载均衡算法(rr=轮询)lb_kind DR # 转发模式(DR=直接路由)virtual_router_id: 虚拟路由器 ID(主备节点必须相同,范围 0-255)。delay_before_retry 3 # 重试间隔(秒)lb_kind: 转发模式(DR=直接路由,NAT=网络地址转换,TUN=隧道)。lb_algo: 负载均衡算法(rr=轮询,wrr=加权轮询,lc=最少连接)。

m0_73910811的博客 792

LVS负载均衡NAT/DR模式搭建、keepalived+LVS配置

文章目录LVS 介绍LVS NAT模式LVS IP Tunnel模式LVS DR模式LVS 常用调度算法 LVS 介绍 LVS(Linux Virtual Server)Linux虚拟服务器,主要用于搭建负载均衡集群,LVS属于4层(OSI模型)的负载均衡,而nginx属于7层,相比较来说,LVS这种4层的负载均衡更稳定,能承受更多的请求,而nginx这种7层的负载均衡更加灵活,能实现更多的个性化...

FUYY'S BLOG 3050

LVS-DR概述及搭建,keepalived配置

目录LVS-DR概述及搭建一、LVS-DR1、数据包流向分析2、LVS-DR中的ARP问题3、DR模式的特点二、LVS-DR集群构建1、案例环境2、配置负载调度器:192.168.142.43、署NFS服务器:192.168.142.104、Web节点服务器1:192.168.142.55、Web节点服务器2:192.168.142.66、客户机访问测试LVS +Keepalived群集一、Keepalived1、应用环境2、Keepalived工具介绍3、keepalived工作原理剖析4、Keepali

肥猫警长的博客 3657

keepalived + lvs (DR)

在LVS的DR模式中,前端负载均衡器(即LVS)与后端服务器之间采用直接路由的方式进行通信,即前端负载均衡器将请求的数据包直接转发给后端服务器,而不经过负载均衡器本身。基于DR模式 一台lvs服务 两台节点web服务搭建完成的基础上进行操作,多搭建一台lvs服务,目的是如果第一台lvs损坏,则第二台可以代替第一台进行工作,使结果不受影响。请注意,配置和使用Keepalived和LVS需要一定的网络和系统管理经验,建议在实施前仔细阅读相关文档和参考资料,并进行测试和验证。

Mapinyi666的博客 1205
上一篇: HAProxy部署Web集群(Nginx)实验
下一篇: MySQL主从复制与读写分离实验
唐十洪
博客等级 码龄6年 440粉丝 66原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值