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

Liunx-Lvs配置项目练习

1.实验环境配置

Lvs调度器有两块网卡 一块仅主机和一块nat网卡,客户端nat模式,两台服务器为仅主机模式

2.集群和分布式简介

集群与分布式系统简介

集群 (Cluster)

集群是指将多台计算机(通常为同构的)通过高速网络连接起来,作为一个整体对外提供服务。

主要特点:

  • 高可用性:当某个节点故障时,服务可以快速转移到其他节点
  • 负载均衡:工作负载可以分配到多个节点上
  • 可扩展性:可以通过增加节点来提升整体性能
  • 共享存储:通常使用共享存储系统

常见集群类型:

  1. 高可用集群:确保服务持续可用(如数据库集群)
  2. 负载均衡集群:分散请求到多个节点(如Web服务器集群)
  3. 高性能计算集群:用于科学计算等需要大量计算资源的场景

分布式系统 (Distributed System)

分布式系统是由多台计算机通过网络连接,协同完成任务的系统,这些计算机可以位于不同地理位置。

主要特点:

  • 资源共享:可以共享硬件、软件和数据
  • 并发性:多个节点可以同时处理不同请求
  • 透明性:用户无需知道具体由哪个节点提供服务
  • 容错性:部分节点故障不影响整体系统运行
  • 可扩展性:可以方便地增加节点

关键技术:

  • 分布式计算:如MapReduce
  • 分布式存储:如HDFS、分布式数据库
  • 分布式通信:如RPC、消息队列
  • 一致性协议:如Paxos、Raft

集群与分布式的区别

特性集群分布式系统
节点位置通常在同一数据中心可以跨地域分布
节点类型通常同构可以异构
通信延迟低(局域网)可能较高(广域网)
管理复杂度相对简单更复杂
典型应用场景Web服务器、数据库集群云计算平台、大型互联网服务

两者在实际应用中常常结合使用,例如分布式系统可能由多个集群组成。

3.lvs-nat模式数据逻辑

1.客户端发送访问请求,请求数据包中含有请求来源(cip),访问目标地址(VIP)访问目标端口(9000port)
2.VS服务器接收到访问请求做DNAT把请求数据包中的目的地由VIP换成RS的RIP和相应端
3.RS1相应请求,发送响应数据包,包中的相应保温为数据来源(RIP1)响应目标(CIP)相应端口(9000port)
4.VS服务器接收到响应数据包,改变包中的数据来源(RIP1-->VIP),响应目标端口(9000-->80)5.VS服务器把修改过报文的响应数据包回传给客户端
6.Ivs的NAT模式接收和返回客户端数据包时都要经过lvs的调度机,所以vs的调度机容易阻塞

4.lvs-nat实验配置

首先利用事先编写的peizhi.sh 的shell脚本给四台主机配好ip

确保两台的http服务为开启状态

给两台http服务器的index编写内容,实际情况下两台服务器发布配置内容应该为一模一样,为方便后续实验验证,将两台服务区分开

将两台服务器的网关设置为调度服务器的vip 192.168.182.123

在lvs调度服务器上安装ipvsadm

首先将lvs调度服务器上开启ip转发功能

编写lvs调度策略

最后在客户机上访问http服务

修改策略再次验证一下

可以看见访问一次122 访问两次121

5.lvs的dr模式和nat模式的区别

LVS(Linux Virtual Server)的 NAT 模式DR 模式 是两种最常用的负载均衡实现方式,它们在架构、性能、配置复杂度等方面有显著区别。以下是两者的核心对比:

1. 数据包转发原理

特性NAT 模式DR 模式(Direct Routing)
修改内容修改请求和响应的 IP 地址/端口仅修改请求的 MAC 地址
请求路径客户端 → LVS → 真实服务器 → LVS → 客户端客户端 → LVS → 真实服务器 → 客户端(直接返回)
响应路径必须经过 LVS 调度器(SNAT)真实服务器直接返回客户端(不经过 LVS)

2. 性能对比

特性NAT 模式DR 模式
吞吐量较低(LVS 是瓶颈)极高(仅处理入站请求)
延迟较高(两次经过 LVS)低(响应不经过 LVS)
适用场景小规模集群、需要端口转换高性能场景(如大型网站)

3. 网络配置要求

特性NAT 模式DR 模式
真实服务器(RS)网关必须指向 LVS 调度器可指向其他路由器
IP 转发需启用 net.ipv4.ip_forward=1不需要
IP 地址RS 使用私有 IP,LVS 需要公网 IPRS 和 LVS 需在同一局域网,且 RS 可隐藏

4. 配置复杂度

特性NAT 模式DR 模式
LVS 配置简单(只需 DNAT/SNAT)需配置 ARP 抑制和 MAC 重写
真实服务器配置简单(改网关即可)需绑定 VIP 到 lo 接口,并配置 ARP 规则
典型命令ipvsadm -A -t VIP:80 -s rripvsadm -a -t VIP:80 -r RIP:80 -mipvsadm -A -t VIP:80 -s rripvsadm -a -t VIP:80 -r RIP:80 -g

5. 优缺点对比

NAT 模式
  • 优点
    • 支持端口映射(VIP 和 RIP 端口可不同)。
    • 真实服务器可隐藏在内网。
  • 缺点
    • LVS 容易成为性能瓶颈。
    • 需要维护连接状态(消耗内存)。
DR 模式
  • 优点
    • 性能接近物理极限(响应直接由 RS 返回)。
    • LVS 仅处理入站请求,吞吐量高。
  • 缺点
    • 要求 RS 和 LVS 在同一局域网。
    • 需配置 ARP 抑制,防止 IP 冲突。

6.lvs的dr实验配置

1.客户端发送数据帧给vs调度主机帧中内容为客户端IP+客户端的MAC+VIP+VIP的MAC
2.VS调度主机接收到数据帧后把帧中的VIP的MAC该为RS1的MAC,此时帧中的数据为客户端IP+客户端的MAC+VIP+RS1的MAC
3.RS1得到2中的数据包做出响应回传数据包,数据包中的内容为VIP+RS1的MAC+客户端IP+客户端IP的MAC

我们将server服务器的vip配置在回环接口上,lvs的vip添加在仅主机网卡上。在添加一台主机模拟路由器装置。

两台服务器以及lvs调度器的网关都为路由器相应的网段;两台服务器上配置回环接口vip将lvs调度器的vip添加到网卡上;

编写回环接口配置vip为192.168.182.200

利用scp命令将配置文件直接传输给server2

然后将两台服务器和lvs的arp回应关闭

其他主机依次操作,在路由器上开启火墙的ip伪装服务,实现五台主机互相连通

在lvs调度服务器上配置调度策略

在客户端验证策略是否生效。

客户端成功访问服务器的http服务,且根据策略调度。

7.利用wireshark抓包软件验证dr模式的特性

可以观察到数据包里的ip只在CIP和VIP之间转换

数据包的mac地址一直在变化

http://www.dtcms.com/a/282229.html

相关文章:

  • APIs案例及知识点串讲(上)
  • LVS-DR的ARP污染问题
  • Promise与Axios:异步编程
  • LiFePO4电池的安全详解
  • 关于redis各种类型在不同场景下的使用
  • 意义作为涌现现象的本质是什么
  • pthread线程的控制
  • ZYNQ Petalinux系统FLASH固化终极指南:创新多分区与双系统切换实战
  • Java数据结构第二十五期:红黑树传奇,当二叉树穿上 “红黑铠甲” 应对失衡挑战
  • 【Mysql协议解析处理流程】
  • React+Next.js+Tailwind CSS 电商 SEO 优化
  • 个人笔记(linux/tr命令)
  • JAVA AI+elasticsearch向量存储版本匹配
  • es 启动中的一些记录
  • ELK日志分析,涉及logstash、elasticsearch、kibana等多方面应用,必看!
  • 深入解析交互设计流程:流程图+线框图+原型制作
  • Node.js基础用法
  • AJAX 技术
  • ubuntu+windows双系统恢复
  • 【官方回复】七牛云开启referer防掉链后小程序访问七牛云图片显示403
  • Golang学习之常见开发陷阱完全手册
  • CocosCreator3.8.x——多语言功能(简单版)
  • STM32CubeIDE生成 .hex 文件
  • Android 15 源码修改:为第三方应用提供截屏接口
  • 设计模式三:观察者模式 (Observer Pattern)
  • ble连接参数分析
  • 【基于PaddlePaddle训练的车牌识别系统】
  • 代码随想录算法训练营完结篇
  • 【BUG】ValueError: Unable to find out axis 2.0 in start_ornt
  • TCP重传