集群介绍,lvs原理解析及实验

LVS+Keepalived+nfs 集群部署及实验 阅读详情

目录

第一部分:集群基本概念(着重介绍负载均衡集群)
第二部分:lvs
第三部分:实验部分

第一部分:集群的基本概念

一.集群的概念
多台服务器协作出来处理用户的业务

二.集群的分类
1.负载均衡集群(LBC,Load Blancing Clusters)
原理:通过调度算法,提高整个服务器集群接收访问量的能力,提高的是带宽,分担服务的总体压力

应用:WEB服务器,B/S架构,C/S架构,浏览器等

特点:每个子节点的工作内容是一致的,向外提供同一种服务,但不是同一个服务,每个节点有其对应的服务(即当我们访问淘宝时,用户A的请求可能被转发到后端负载均衡服务器AA上,用户B的请求可能被转发到后端的服务器BB上,用户A的请求和用户B的请求本质上都是对淘宝的访问,是同一种服务,但对于他们个人而言,他们各自请求的是他们各自的服务,即不是同一个服务)

2.高可用集群(HAC,High Avaliable Clusters)
原理:心跳检测,判断是否有服务器出现了问题,如果有问题那么集群中的(热备)服务器就会进行替代

应用:一些对稳定性要求较高的服务,当某台服务器出现了问题时,备份服务器可以进行快速的顶替,以防止服务的中断

特点:尽可能的保证服务状态的可用性

3.高性能计算集群(HPC,High Performance Computing)
原理:高性能计算区别去负载均衡集群的地方是,高性能计算集群每台服务器共同完成一项任务,每个服务器完成这个任务的一部分,而负载均衡集群是多台不同的任务(大部分情况下任务的类型是相同的)

应用:需要大量计算的一些工程,如DNA工程,或航天工程

特点:将任务分摊,节点工作一般不同,一个整体任务的一部分分配给不同的节点,缩短某个任务的时间,提供单台服务器不能提供的计算能力

三.负载均衡集群
1.工作形式
如下图,
负载均衡集群的工作形式:负载均衡服务器将来自客户的服务请求,通过算法的计算将服务分配到集群下的真实服务器中
两部分组成:负载调度器和真实服务器池

在这里插入图片描述
2.实现方法
负载均衡集群的分类有软件实现和硬件实现两类方法
软件实现的方法:LVS(四层,传输层),Nginx(七层,应用层)
硬件实现的方法:F5(二层,数据链路层)

第二部分:LVS(Linux Virtual Server

)
一.LVS(四层,传输层)的实现原理
最本质特点:用户和服务器之间只有一个TCP连接
实现关键:源目的地址的转换
调度器的作用就是转发数据包
在这里插入图片描述
1.用户访问网站在公网上的IP
2.用户访问数据包到达集群的负载均衡服务器时根据LVS规则库中的轮询规则,将数据包发往对应的真实服务器(通过DNAT,目的地址转换技术,改变目的地址)
3.真实服务器队用户的请求作出响应,先发送数据包到负载均衡控制器
4.再由负载均衡控制器进行SNAT(源地址转换)后,再将数据包发回

二.LVS环境下的工作模式
LVS环境下的工作模式一共有三种:
·NAT模式
·TUN模式(不详细介绍)
·DR模式(负载量最高)
在这里插入图片描述

1.NAT模式
在这里插入图片描述
特点:
(1)集群节点位于同一个网络环境中
(2)真实服务器的网关指向负载调度器
(3)DS(Director Server,负责服务器),负责进行地址转化
(4)进出数据报文都要经过负载调度器,压力较大

2.DR模式
在这里插入图片描述
特点:
(1)服务器集群有共同的虚拟IP地址,即对客户访问的地址,还有真实地址,虚拟地址可以认为是别名地址(其用意在于,让RS真实服务器发出的报文的源地址就是客户的目的地址,而不需要再通过DS的转换过程,直接通过路由器出去,降低了DS的业务压力)
(2)真实服务器将网关指向真实路由器
(负载调度器只负责处理入站请求,压力较小)

实现这一模式,存在以下几个问题
1.如何将DS收到的用户请求包,转发给RS
解决方法:采用MAC地址,也就是走的是二层,报文的IP报头不改变,DS端进行轮询的时候将MAC地址改为需要处理的真实服务器的MAC,真实服务器收到之后,需要在真实服务器上添加路由条目来根据三层报文,送往指定的接口

2.如何控制RS,设置了别名IP之后,不发送ARP,来通告MAC地址(如果发送ARP通告,会造成局域网中交换机的MAC地址表混乱)
解决方法:修改ARP的相关参数
ARP响应级别
arp-ignore
0 只要本机配置有相应IP地址就对ARP请求作出相应 默认是这样的
1 仅在请求的目标地址配置在请求到达的网络接口时,才给与响应
(举个例子,RS 真实网卡 192.168.1.1 ,真实网卡的子接口192.168.1.2.如果将响应级别改为1时,那么真实物理网卡收到192.168.1.2的ARP请求时不会作出响应,那么别人就不会知道192.168.1.2是RS的一个别名IP地址,就不会造成局域网内混乱的情况)

arp-announce
0 将本机任何网络接口上的任何地址都向外通告
1 尽可能避免
2 仅向目标网络通告于其网络相匹配的地址信息

DR模式下 就需要我们使用
ignore 级别1
announce 级别 2

具体更改在 /etc/sysctl.conf 下

第三部分:lvs实验(通过lvs实现apache的负载均衡)

一.实验简单拓扑
在这里插入图片描述
本地windos充当客户端进行访问
在Vmware中开启三台虚拟机
一台作为DS:真实地址为192.168.10.10,别名IP为192.168.10.100
两台作为RS:真实地址分别为192.168.10.20和192.168.10.30,别名IP为192.168.10.100

二.实验思路及最终要显现的结果
思路:
1.DS作为负载均衡调度器DS,负责对用户的请求按照算法转发到后端的真实服务器上

2.后端的RS,上面安装了apache作为http服务器,RS1的初始化页面内容为“this is server 1,ip address is 192.168.10.20”,RS2的初始化页面内容为“this is server 2,ip address is 192.168.10.30”

3.本地Windows作为客户端通过浏览器访问192.168.10.100,不断的进行刷新,可以看到页面的内容不断的在2中描述的两个页面之间来回转换

三.配置思路
负载调度器的配置
1.关闭负载均衡调度器的防火墙和Selinux
2.关闭网卡的守护进程
3.拷贝创建子接口,子接口的IP地址为虚拟IP,并打开子接口
4.优化项:关闭主机的广播功能,对/etc/sysctl.conf进行修改,修改之后要写入
5.重载ipvs模块
6.安装ipvsadm工具
7.使用ipvsadm创建集群,增加子节点
配置完成后保存,并设置开机启动

RS的配置思路
1.关闭防火墙和Seliunx
2.关闭网卡守护进程
3.创建子接口
4.更改ARP参数,/etc/sysctl.conf
写入内核文件
5.打开对应子接口
6.添加去往子接口的路由

四.具体配置
负载调度器上的配置

##关闭网卡的守护进程
service NetworkManager stop 
即时关闭 setenforce 0   getenforce 
永久关闭 修改/etc/sysconfig/selinux 将enforcing改为
disabled    

##拷贝eth0网卡子接口充当集群入口接口
/etc/sysconfig/network-scripts下
cp ifcfg-eth0 ifcfg-eth0:0
将子接口下的内容修改,需要修改的地方
DEVICE = eth0:0
IPADDR = 虚拟的IP地址 ,即代表集群的IP地址
NETMASK = 对应子网掩码

##开启对应虚拟接口
ifup eth0:0

##关闭网卡重定向功能   即关闭广播功能
vim /etc/sysctl.conf
文件最后最后加入以下代码
net.iPv4.conf.all.send_redirects = 0 
net.iPv4.conf.all.send_redirects = 0 

sysctl -p 更新内核文件

##重载ipvs模块
modphrobe vs  

##安装ipvsadm命令行工具
rpm -ivh ipvsadm -1.261

##ipvsadm的用法
ipvasdm -v    查看当前ipvs集群内容
ipvsadm -A -t  <虚拟IP>:80 -s rr     添加ipvsTCP集群
ipvsadm -a -t  <虚拟IP>:80 -r 网站 1:80 -g    添加ipvsadm集群子节点

##保存ipvs集群内容至文件,进行持久化存储
service ipvsadm save

##设置为开机自启动
chkconfig ipvsadm on 

真实服务器上的配置

##关闭网卡守护进程
service NetworkManager stop

##拷贝环回网卡子接口
/etc/sysconfig/network-scripts下
cp ifcfg-eth0 ifcfg-lo:1
将子接口下的内容修改,需要修改的地方
DEVICE = lo:1
IPADDR = 虚拟的IP地址 ,即代表集群的IP地址
NETMASK = 对应子网掩码


##关闭对应ARP响应及其公告功能
修改文件为
/etc/sysctl.conf 
添加下列代码
net.ipv4.conf.all.arp_ignore =1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore =1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore =1
net.ipv4.conf.lo.arp_announce = 2

##将改变写入内核文件
sysctl -p

##打开对应子接口
ifup lo:1

##添加指向子接口的路由
route add -host <虚拟IP> dev lo:1  添加路由记录,当主机收到去往虚拟IP地址的数据包时送往子接口
Sparse4Dv3 instance_feature也设置为nn.Parameter。修正分支2*(linear->relu->linear->relu->layernorm)->linear->scale,分类分枝2*(linear->relu->layernorm)->linear(256,9),质量评估分枝2*(linear->relu->layernorm)->linear(256,2)。每组两类instance,1是加上范围(-x,x)内均匀分布噪声,2是加上(-2x,-x)U(x,2x)范围内均匀分布噪声。 阅读详情

相关推荐

【CubeMX】STM32G474 HRTIM 互补PWM与死区时间配置实战

本文详细介绍了如何使用STM32CubeMX配置STM32G474的高分辨率定时器HRTIM生成互补PWM波形并精确设置死区时间。通过实战步骤讲解时钟配置、死区计算与高级功能,帮助工程师在电机驱动和电源应用中实现精准控制,避免上下桥臂直通风险。

grpc6streamer的博客 723

linux负载均衡LVS实验(DR/NAT)

1 实验架构 实验环境:RS1、RS2为真实的两台apache服务器,测试时为了测试效果在/var/www/html/index.html内写入不同内容。LVS与这两台RS1、RS2在一个大二层内。具体的修改内容信息不进行详细说明,仅说明思路。 LVS服务器上起子接口,配置虚拟ip地址。内核配置文件中配置arp相关的选项参数,ipvsadm配置到RS真实服务器的信息,以及所用的调度算法; RS1、RS2上内核配置文件设置相关的arp配置信息,起loopback0:0的子接口,并配置...

weixin_45537413的博客 1612

(超详细)Scala环境搭建(scala-2.12.15、IDEA2021.1.3)

Scala环境搭建(scala-2.12.15、IDEA2021.1.3) JunLeon——go big or go home 目录 Scala环境搭建(scala-2.12.15、IDEA2021.1.3) 一、Scala概述 1、什么是Scala? 2、Scala发展史 3、Scala与Java的关系 二、Scala环境搭建 1、环境准备 2、Scala安装与配置环境变量 3、验证Scala 三、编写第一个Scala程序 1、使用IDEA创建maven工程 2、.

JunLeon的博客 3万+

LVS负载均衡(三种工作模式、原理、实验)

一、LVS DR 模式 DR(Direct Routing)模式的网络结构: 工作原理: DR和REAL SERVER都是用同一个IP对外服务。但只有DR对ARP请求进行响应,所有REAL SERVER对本身这个IP的ARP请求保持静默。也就是说,网关会把对这个服务IP的请求全部定向给DR,而DR收到数据包后根据调度算法,找出对应的REAL SERVER,把目的MAC地址改为REAL SERVE...

全网粉丝10W+、全栈领域优质创作者、掘金、阿里云等社区博客专家、专注于全栈领域和毕业项目实战 578

Abaqus 导出单元刚度矩阵和全局刚度矩阵

Abaqus 导出单元刚度矩阵和全局刚度矩阵

科技芯风 1万+

Photoshop实战技巧(9)——高效去除复杂水印的五种进阶方法

本文详细介绍了Photoshop中高效去除复杂水印的五种进阶方法,包括色阶通道爆破法、频率分离高阶应用、智能填充+手动修复组合拳等专业技巧。针对半透明水印、密集文字水印等复杂场景,提供分步操作指南和实战案例,帮助用户精准去除水印同时保留原始图像细节,大幅提升工作效率。

cake8的博客 958

LVS集群实验

以http和https为例,当我们在RS中同时开放80和443端口,那么默认控制是分开轮询的,这样我们就出现了一个轮询错乱的问题。当我第一次访问80被轮询到webserver1后下次访问443仍然可能会被轮询到webserver1上。一台LVS(两张网卡一个仅主机,一个NAT)webserver2 (仅主机网卡。webserver1 (仅主机网卡。一台测试机(可以用自己电脑的cmd)我直接用的本地主机的cmd进行的测试。webserver1(仅主机网卡)webserver2(仅主机网卡)

Floating_wind的博客 1191

STC89C52RC单片机原理图详解

左侧A0和右侧B0为一 一对应的关系,左上角DIR为控制数据方向端口,如果DIR接高电平是将左侧数据A0~A8送到右侧B0~B8,如果DIR接低电平,是将右侧数据B0~B8送到左侧A0~A8,由于在电路板上LE始终与VCC连接,因此这里。74HC595是串行输入,并行输出的移位寄存器,可用3根线输入串行数据,8根线输出并行数据,多片级联后,可输出16位、24位、32位等,常用于I/O口扩展。由于数码管为共阴极,给数码管下面接口输入阳码时,LED才亮,但是直接将P0~P7的高电平输入到数码管时,

m0_50562428的博客 6万+

LVS实验(实现服务器集群的负载均衡)

LVS(Linux Virtual Server)是Linux虚拟服务器的简称。LVS通过将一个真实服务器集群虚拟成一台服务器来对外提供服务,同时在集群内部实现负载均衡。这种技术能够显著提高服务的处理能力和可靠性,降低单台服务器的负载压力。

maoqiwei的博客 1381

【unity小技巧】常用的方法属性和技巧汇总(长期更新,2025/07/02更新)

Unity开发技巧摘要 本文汇总了Unity开发中的实用技巧,包括移动控制、力应用、物体翻转、单例模式实现等。移动方面介绍了MoveTowards、MovePosition、Translate等方法的区别与应用场景;力应用部分详解了AddForce系列方法的参数和使用方式;物体翻转对比了三种实现方案;单例模式提供了标准实现和泛型优化版本;还收录了绝对值计算、鼠标检测、旋转控制、数值取整等实用代码片段。这些经过验证的技巧能有效提升开发效率,文章将持续更新补充新的实用内容。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 3344

LLC 谐振变换器开发设计1

本文档详细介绍了基于DSP28335的LLC谐振变换器开发设计。系统采用频率调制(FM)控制方式,实现高效率、高功率密度的隔离型DC/DC变换。文档阐述了LLC拓扑结构和工作原理,给出了谐振频率、品质因数等关键参数的计算公式。硬件设计包括功率器件选型和采样电路实现,软件部分提供了DSP28335的核心控制算法和代码示例,涵盖频率转换、PI控制和PWM生成。系统还设计了启动策略和保护机制,确保可靠运行。该设计实现了主开关零电压开通和低纹波输出特性。

328

LVS原理与实验

Cluster: 集群是为了解决某个特定问题将堕胎计算机组合起来形成的单个系统:LoadBalancing(负载均衡)由多个主机组成,每个主机只承担一部分访问:High Availiablity(高可用)SPOF(single Point Of failure)MTBF:平均无故障时间(正常时间)MTTR:平均恢复前时间(故障时间)A=MTBF/(MTBF+MTTR),故障时间越短越趋近100%:High-performance computing(高性能计算)

m0_68493470的博客 2285

C#身份验证黑科技:用量子级加密与多维防御矩阵构建坚不可摧的用户管理系统!

某金融系统因身份验证漏洞导致200万用户数据泄露,量子级防御可将攻击面缩小99.99%。

墨夶的博客 352

LVS负载均衡集群NAT模式

LVS负载均衡集群NAT模式 一、群集的含义 集群、群集 由多台主机构成,但对外,只表现为一个整体,只提供一个访问入口(域名或IP),相当于一台大型计算机。 1、群集存在的必要 互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器无法满足负载均衡及高可用的需求。 2、解决 使用价格昂贵的小型机、大型机。 使用多台相对廉价的普通服务器构建服务群集。 通过整合多台服务器,使用LVS来达到服务器高可用和负载均衡,并于同一个IP地址对外提供相同服务。 这就是企业中常用的一种

qq_42941888的博客 174

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

LVS(Linux Virtual Server)详细部署

LVS在rhel9的nat和dr的笔记和模拟实验以及环境设定

2303_80156525的博客 1222

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

LVS详解

全称:Virtual Server via Direct Routing(VS-DR),也叫直接路由模式,用直接路由技术实现虚拟服务器。当参与集群的计算机和作为控制管理的计算机在同一个网段时可以用此方法,控制管理的计算机接收到请求包时直接送到参与集群的节点。直接路由模式比较特别,很难说和什么方面相似,前种模式基本上都是工作在网络层上(三层),而直接路由模式则应该是工作在数据链路层上(二层)。

2301_77306766的博客 1460

高可用负载均衡集群 - lvs的介绍和DR模式

目录1. lvs的定义2. LVS的优缺点3. 搭建实验环境4. lvs的安装与启用4.1 安装策略编写工具4.2 DR模式编写策略 1. lvs的定义 LVS(Linux Virtual Server)即Linux虚拟服务器。它是一个虚拟的服务器集群系统,可以实现负载均衡集群功能【UNIX/LINUX平台】 lvs基本工作原理: lvs ——> kernel space ——> I...

rrrr_ffff的博客 594

LVS+Keepalived群集

LVS+Keepalived群集一、Keelalived工具介绍二、Keepalived实现原理2-1、Keepalived案例分析2-2、LVS+Keepalived高可用群集2-3、Keepalived实现原理剖析2-4、Keepalived案例讲解三、LVS+Keelalived高可用群集部署实验3-1、实验配置3-2、实验步骤 一、Keelalived工具介绍 ■专门为LVS和HA设计的一款健康检查工具 支持故障自动切换(Failover) 支持节点健康检查状态(Health Checking)

欢迎来到吉吉国王广场全体起立! 276

LVS-DR群集的部署

LVS-DR群集的部署LVS-DR■LVS-DR数据包流向分析★为方便进行原理分析,将Client与群集机器放在同一网络中,数据包流经的路线为1-2-3-4★1.Client向目标VIP发出请求,Director(负载均衡器)☆IP包头及数据帧头信息★2.Director根据负载均衡算法选择RealServer_1,不修改也不封装IP报文,而是将数据帧的MAC地址改为RealServer 1的MAC地址,然后在局域网上发送☆IP包头及数据帧头信息★3. RealServer_1收到这个帧,解封装后发现目标I

weixin_55609814的博客 961

LVS工作模式及配置

实现集群 从硬件上实现: 1、F5 2、BIG-IP 从软件实现: 1、LVS(工作在tcp/ip的第四层) 2、haproxy 3、ngnix(工作在第七层) 4、varnish LVS 简介 LVS ,即 Linux Virtual Server ,Linux 虚拟服务器;是一个虚拟的服务器集群,是LB集群的一个实现。 LVS的四种模式 1、DR 2、nat 3、ip-tun 4、full-n...

Dead_LS的博客 329

云原生——LVS

策略的配置#策略的保存#恢复。

2301_80916871的博客 326

LVS_TUN模式

一、LVS-TUN模式的工作原理 采用NAT模式时,由于请求和响应的报文必须通过调度器地址重写,当客户请求越来越多时,调度器处理能力将成为瓶颈。为了解决这 个问题,调度器把请求的报文通过IP隧道转发到真实的服务器。真实的服务器将响应处理后的数据直接返回给客户端。这样调度器就只处理请求入站报文,由于一 般网络服务应答数据比请求报文大很多,采用VS/TUN模式后,集群系统的最大吞吐量可以提高10倍。...

weixin_42709236的博客 340

企业级负载均衡集群---LVS(六)---NAT模式

文章目录企业级负载均衡集群---LVS(六)---NAT模式1.NAT模式的原理2.实现步骤server1调度器server2和server3真实后端客户端测试 企业级负载均衡集群—LVS(六)—NAT模式 1.NAT模式的原理 1)客户端请求数据,然后将数据发送给LB;客户端请求数据,然后将数据发送给LB; 2)LB 接受客户端的请求,根据调度算法将客户端的请求包的目的IP和端口,修改为服务器,...

qq_36275923的博客 318

LVS(Linux Virtual Server)集群

应用场景:想象一个热门网站或应用,每秒涌入成千上万的用户请求。单台服务器再强大,也很快会不堪重负,导致响应变慢甚至崩溃,如何保证服务不中断?如何让所有用户都能快速访问?答案是:1.向上扩展,提高硬件的配置。2.向外扩展,增加设备,均衡分配等。但这引出了新问题:如何把海量的请求高效、公平、可靠地分配给这群“工人”(服务器)?则诞生了以下解决问题的技术。 在现代互联网应用中,用户访问量激增或业务流量突发是常态,单台服务器往往难以独自承受这种压力,极易导致响应缓慢甚至服务崩溃,严重影响用户体验和业务连

2302_81091378的博客 738

LVS(Linux Virtual Server)

LVS(Linux Virtual Server)是Linux内核集成的四层负载均衡器,由中国开发者章文嵩博士于1998年发起。它工作于OSI模型的传输层,仅做数据包的转发,不建立连接,成本低、效率高。阿里的四层SLB(Server Load Balance)就是基于LVS+Keepalived实现的。LVS相关术语VS(Virtual Server):虚拟服务器,即调度器,负责接收和转发请求RS(Real Server):真实服务器,真正提供业务服务CIP(Client IP):客户端IP地址。

2401_84028277的博客 419

图解LVS的工作原理

目录 LVS介绍 LVS简介 LVS特点: LVS内核工作模型 LVS常见术语 LVS模式介绍 NAT模式 DR模式 其他模式 LVS调度算法介绍 LVS的部署 NAT模式的实现 DR模式的实现 调度器配置 WEB后端服务器配置 实验测试 LVS介绍 LVS简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个...

粥同学的学习笔记 2万+

集群与LVS介绍及原理解析

介绍集群与LVS的介绍,ipvsadm的使用,负载均衡调度算法的介绍,NAT和DR模式的介绍及测试环境搭建

qq_41619571的博客 679
上一篇: 网络安全之TCP/IP协议栈常见安全风险及防范办法
下一篇: 虚拟化介绍及KVM,XEM虚拟化的区别
flat0809
博客等级 码龄9年 45粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值