LVS集群技术

LVS(Linux Virtual Server)是一种基于Linux内核的高性能、高可用性服务器集群技术,它通过负载均衡将客户端请求分发到多台后端真实服务器,实现 scalability 和 fault tolerance。LVS工作在传输层(OSI Layer 4),支持TCP/UDP协议。

LVS核心组件

  • 负载均衡器(Director):接收客户端请求并根据调度算法分发到后端服务器。
  • 真实服务器群(Real Server Pool):实际处理请求的服务器集群。
  • 共享存储(可选):为真实服务器提供数据一致性支持。

LVS工作模式

NAT模式(Network Address Translation) 负载均衡器修改请求和响应的IP地址,进出流量均经过Director。适合小型集群,但Director可能成为性能瓶颈。

TUN模式(IP Tunneling) 真实服务器直接响应客户端,通过IP隧道传输请求数据。Director仅处理入站流量,适合跨网络环境。

DR模式(Direct Routing) 真实服务器通过修改MAC地址直接响应客户端, Director仅处理入站流量。高性能首选模式,要求真实服务器与Director在同一局域网。

LVS调度算法

  • 轮询(Round Robin):均等分发请求。
  • 加权轮询(Weighted RR):根据服务器权重分配流量。
  • 最少连接(Least Connections):优先选择当前连接数最少的服务器。
  • 加权最少连接(Weighted LC):结合权重和连接数。
  • 源地址哈希(Source Hashing):保持同一客户端的请求定向到同一服务器。

LVS特别适合需要高性能负载均衡的场景,如Web服务、数据库读写分离等。实际部署时应根据网络环境和业务需求选择合适的工作模式。

二.LVS(linux virual server)

四台虚拟机

LVS集群技术

1.client eth0= IP:172.25.254.100
2.lvs image-20250714200324604 eth0=ip :172.25.254.200; eth1=ip:192.168.0.200
rs1 eth0=ip:192.168.0.10
re2 eth0=ip:192.168.0.20
网络配好在rs1和rs2安装httpd功能所用命令dnf/yum install httpd -y

事例

然后在rs1操作:
复制代码
 [root@RS1 ~]# systemctl disable --now firewalld   #禁用并停止 firewalld 服务
 ​
 [root@RS1 ~]# echo RS1 - 192.168.0.10 > /var/www/html/index.html #创建并写入内容到 index.html 文件:
 ​
 [root@RS1 ~]# systemctl enable --now http d     #启用并启动 Apache HTTP 服务
 #rs2相同操作

事例

lvs虚拟机操作
复制代码
 [root@lvs ~]# sysctl  -a | grep ip_forward
 net.ipv4.ip_forward = 0 #net.ipv4.ip_forward = 0:这意味着当前 IPv4 数据包转发功能被禁用了(值为0表示禁用,1表示启用)
 net.ipv4.ip_forward_update_priority = 1
 net.ipv4.ip_forward_use_pmtu = 0
 [root@lvs ~]# echo net.ipv4.ip_forward=1 > /etc/sysctl.conf #这条命令将 net.ipv4.ip_forward=1 写入到了 /etc/sysctl.conf 配置文件中,使得系统在启动时启用 IPv4 转发。
 [root@lvs ~]# sysctl -p #使用 sysctl -p 使配置立即生效。
 net.ipv4.ip_forward = 1

用命令安装[root@lvs ~]# dnf/yum install ipvsadm -y

用命令watch -n1 ipvsadm -Ln 查看策略调度机制
输入命令[root@lvs ~]# ipvsadm -A -t

172.25.254.200:80 -s rr #这条命令使用 ipvsadm 工具配置一个虚拟服务 172.25.254.200:80,并使用 轮询(Round Robin) 调度算法(-S rr)来分发流量到后端服务器

root@lvs \~\]# ipvsadm -E -t 172.25.254.200:80 -s wrr #-E表示更改为wrr机制 TCP 172.25.254.200:80 wrr \[root@lvs \~\]# ipvsadm -E -t 172.25.254.200:80 -s wrr -p 360 #-p设置持久连接超时规定时间内同一来源请求调度到同一realserver-----这里时间设为360 TCP 172.25.254.200:80 wrr persistent 360 ```  [root@lvs ~]# ipvsadm -A -f 66 -s rr #设置火墙  ​  TCP  172.25.254.200:80 wrr persistent 360  FWM  66 rr ``` ##### 删除机制 ```  [root@lvs ~]# ipvsadm -D -f 66 #删除火墙-D  ​  [root@lvs ~]# ipvsadm -C         #全部删除 ``` #模式不能混用 ```  [root@lvs ~]# ipvsadm -A -t 172.25.254.200:80 -s rr  [root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.10:80 -g  [root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.20:80 -g  #-g为直连路由 ``` ![](https://i-blog.csdnimg.cn/direct/09ca8aad31fc4a62ab29e045d93b2073.png) ```  [root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.20:80 -m  [root@lvs ~]# ipvsadm -a -t 172.25.254.200:80 -r 192.168.0.10:80 -m  #-m为nat模式 ``` ![](https://i-blog.csdnimg.cn/direct/02f8b3784e9f42ef96c8db39d7a054cb.png) ```  [root@lvs ~]# ipvsadm -e -t 172.25.254.200:80 -r 192.168.0.20:80 -i  [root@lvs ~]# ipvsadm -e -t 172.25.254.200:80 -r 192.168.0.10:80 -i  #-e为切换模式 -i为ipip隧道模式 ``` ![](https://i-blog.csdnimg.cn/direct/5e90bb65e9cb477d83698995093c4a79.png) ##### 设置权重 ```  [root@lvs ~]# ipvsadm -e -t 172.25.254.200:80 -r 192.168.0.10:80 -i -w 2  #-w 后面跟数字代表权重这里设置2--权重不是所有模式一定生效 ``` ![](https://i-blog.csdnimg.cn/direct/57cd3838ef9d4b398959d13905f8856b.png) 计数器\[root@lvs \~\]# watch -n1 ipvsadm -Ln --rate #后面加--tate -Z清楚计数器 ![](https://i-blog.csdnimg.cn/direct/c0d47b57898e4e08ba3c673292aeb985.png) ##### 保存策略 ```  [root@lvs ~]# ipvsadm-save -n > /mnt/ipvsadm.rule  ​  如果用ipvsadm -C删除后  ​  用命令  ipvsadm-restore < /mnt/ipvsadm.rule  恢复策略  永久保存 #开机时加载策略  ipvsadm-save -n > /etc/sysconfig/ipvsadm ```

相关推荐
甘露寺2 小时前
云原生核心技术解析:Docker vs Kubernetes vs Docker Compose
docker·云原生·kubernetes
528307 小时前
Kubernetes 高级调度 01
云原生·容器·kubernetes
Ruimin05197 小时前
LSV负载均衡
linux·运维·服务器·负载均衡·lvs
ocean'9 小时前
网络安全初级第一次作业
云原生·eureka
AKAMAI10 小时前
为何说分布式 AI 推理已成为下一代计算方式
人工智能·云原生·云计算
ikun·11 小时前
Kubernetes 高级调度01
云原生·容器·kubernetes
wenzhangli721 小时前
低代码引擎核心技术:OneCode常用动作事件速查手册及注解驱动开发详解
人工智能·低代码·云原生
容器魔方1 天前
持续领跑,华为云连续5年蝉联中国容器软件市场份额第一
云原生·容器·云计算