LVS集群

目录

一、集群概述

二、LVS结构

三、LVS工作模式

四、LVS负载均衡算法

五、ipvsadm命令详解

六、搭建


一、集群概述

负载均衡技术类型

四层负载均衡器 也称为 4 层交换机,主要通过分析 IP 层及 TCP/UDP 层的流量实现基于 IP 加端口的负载均衡,如常见的 LVS、F5 等;

七层负载均衡器 也称为 7 层交换机,位于 OSI 的最高层,即应用层,此负载均衡器支持多种协议,如HTTP、FTP、SMTP 等。7 层负载均衡器可根据报文内容,配合一定的负载均衡算法来选择后端服务器,即"内容交换器"。如常见的 HAProxy、Nginx。

负载均衡实现方式

硬件负载均衡产品:F5 、深信服 、Radware

软件负载均衡产品: LVS(Linux Virtual Server)、 Haproxy、Nginx、Ats(apache traffic server)

二、LVS结构

三层结构

负载调度器

服务器池

共享存储

架构对象

VS:Virtual Server,也称为 Director,负载均衡服务器

RS:Real Server,真正的服务器,集群中各节点

VIP:Director 向外部提供服务的 IP

DIP:Director 向内部与 RS 通信的 IP

RIP:真实服务器的 IP

CIP:客户端的 IP

三、LVS工作模式

LVS-NAT(NAT模式)

LVS-DR(直接路由模式)(应用最广泛)

LVS-TUN(IP隧道(Tunnel)模式,不常用)

FULL-NAT模式(双向转换模式,不常用)

四、LVS负载均衡算法

静态负载均衡

rr(round robin,轮询 )

wrr(weight round robin,加权轮询)

sh(source hashing,源地址散列算法(HASH))

dh(destination hashing,目标地址 HASH)

动态负载均衡

lc(leash-connection,最少连接 )

简单算法:active * 256 + inactive (谁的小选谁)

wlc(加权最少连接)

简单算法:(active * 256 + inactive) / weight(谁的小选谁)

sed(最少期望延迟)

简单算法:(active + 1) * 256 / weight (谁的小选谁)

nq(never queue,永不排队)

LBLC(基于局部性的最少连接 )

LBLCR(基于局部性的带复制功能的最少连接)

五、ipvsadm命令详解

-A 添加虚拟服务节点

-D 删除虚拟服务节点

-L 查看虚拟服务节点列表

-a 添加真实服务节点

-d 删除真实服务节点

-l 查看真实服务节点列表

-t 指定虚拟服务器IP地址

-s 指定调度算法

-r 指定真实服务器节点IP地址

-w 指定权重值

-g 直接路由模式(默认)

-i 隧道模式(不常用)

-m NAT模式

六、搭建

(一)实现NAT模型搭建

1)负载调度器配置

配置IP地址

增加一块网卡

cd /etc/sysconfig/network-scripts/

cp ifcfg-ens33 ifcfg-ens37

vim ifcfg-ens37

配置本地yum源

安装ipvsadm yum install -y ipvsadm

开启路由转发功能

vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

sysctl -p

加载ip_vs模块

modprobe ip_vs

lsmod |grep ip_vs

启动ipvsadm服务 systemctl start ipvsadm(需要创建一个文件:/etc/sysconfig/ipvsadm)

配置负载分配策略

ipvsadm -A -t 192.168.100.3:80 -s rr

ipvsadm -a -t 192.168.100.3:80 -r 192.168.115.4:80 -m

ipvsadm -a -t 192.168.100.3:80 -r 192.168.115.5:80 -m

保存策略 ipvsadm-save > /etc/sysconfig/ipvsadm

2)web节点

安装nginx

配置网页文档

启动服务

配置网关 route add -net 0/0 gw 192.168.115.3

测试

(二)实现DR模型搭建

1)负载调度器配置

调整ARP参数

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

配置虚拟IP地址

cd /etc/sysconfig/network-scripts/

cp ifcfg-ens33 ifcfg-ens33:0

vimifcfg-ens33:0

安装ipvsadm yum install -y ipvsadm

加载ip_vs模块

modprobe ip_vs

lsmod |grep ip_vs

启动ipvsadm服务 systemctl start ipvsadm(需要创建一个文件:/etc/sysconfig/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

2)web节点配置(2台虚拟机一样)

调整ARP参数

vim /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

配置虚拟IP地址

cd /etc/sysconfig/network-scripts/

cp ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

添加回环路由 route add -host 192.168.115.200/32 dev lo:0

安装nginx

配置网页文档

启动服务

测试

相关推荐
遇见火星2 天前
2025年LVS的NAT和DR模型工作原理,并完成DR模型实战!
github·lvs·nat·dr
三五a9 天前
基于 openEuler 构建 LVS-DR 群集
lvs
糯米汤圆~9 天前
LVS+Keepalived 高可用集群搭建
服务器·网络·lvs
IT_张三10 天前
LVS+Keepalived高可用群集配置案例
运维·服务器·lvs
IC拓荒者12 天前
数字IC后端培训教程| 芯片后端实战项目中base layer drc violation解析
lvs·物理验证·ic后端培训·calibre drc·drc·calibre lvs·零基础入门后端
不要吃栗子李16 天前
高级运维:1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。2. 基于 openEuler 构建 LVS-DR 群集。
运维·负载均衡·lvs
obboda19 天前
LVS相关原理
linux·服务器·lvs
小马爱打代码19 天前
负载均衡 LVS vs Nginx 对比
nginx·负载均衡·lvs
竹竿袅袅20 天前
LVS 负载均衡集群(DR 模式)
linux·运维·网络·负载均衡·lvs
2301_旺仔22 天前
负载均衡集群——LVS-DR配置
负载均衡·lvs·linux集群