linux————LVS集群

目录

一、集群概述

一、负载均衡技术类型

二、负载均衡实现方式

二、LVS结构

一、三层结构

二、架构对象

三、LVS工作模式

四、负载均衡算法

一、静态负载均衡

二、动态负载

五、ipvsadm命令详解

六、LVS配置

一、基础配置

二、实现NAT模型搭建

配置IP地址

安装ipvsadm

开启路由转发功能

加载ip_vs模块

启动ipvsadm

配置负载分配策略

配置web服务

访问测试​编辑

​编辑

三、实现的模型搭建

调整ARP参数

配置虚拟ip

安装ipvsadm​编辑

启动ipvsadm服务​编辑​编辑

配置负载分配策略

配置web节点

访问测试


一、集群概述

一、负载均衡技术类型

四层负载均衡器 也称为 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模式(双向转换模式,不常用)

四、负载均衡算法

一、静态负载均衡

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模式 |

六、LVS配置

一、基础配置

修改主机名

关闭防火墙

关闭Selinux

关闭Networkmanager

配置IP地址

二、实现NAT模型搭建

配置IP地址

增加一块网卡(NET模式 ip192.168.100.3, vmnet1 ip 192.168.131.100)

安装ipvsadm

开启路由转发功能

vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

sysctl -p

或 cd /etc/sysctl.d &&touch route.conf

添加 net.ipv4.ip_forward = 1

加载 sysctl -p

加载ip_vs模块

modprobe ip_vs

lsmod |grep ip_vs

启动ipvsadm

创建对应的文件或目录

配置负载分配策略

ipvsadm -A -t 192.168.131.100:80 -s rr

ipvsadm -a -t 192.168.113.100:80 -r 192.168.100.4:80 -m

ipvsadm -a -t 192.168.131.100:80 -r 192.168.100.5:80 -m

ipvsadm-save > /etc/sysconfig/ipvsadm

配置web服务

安装nginx

修改网页页面

route add -net 0/0 gw 192.168.100.3

访问测试

深度刷新 ctrl+f5

三、实现的模型搭建

调整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

安装ipvsadm

加载iop_vs模块

modprobe ip_vs

lsmod |grep ip_vs

启动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

配置web节点

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

cd /etc/sysconfig/network-scripts/

cp ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

DEVICE=lo:0

IPADDR=192.168.115.200

NETMASK=255.255.255.255

ONBOOT=yes

NAME=loopback:0

route add -host 192.168.115.200/32 dev lo:0

访问测试

深度刷新 ctrl+f5

相关推荐
学嵌入式的小杨同学2 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
EverydayJoy^v^2 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
syseptember2 小时前
Linux网络基础
linux·网络·arm开发
b***25113 小时前
电池组PACK自动化生产线的关键流程与核心优势
运维·自动化
zl_dfq3 小时前
Linux 之 【多线程】(线程的概念、Linux中的线程、页表)
linux
郝亚军4 小时前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu
曦云沐4 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
哲伦贼稳妥4 小时前
职场发展-遇到以下情况请直接准备后手吧
运维·经验分享·其他·职场和发展
带土15 小时前
10. .out文件
linux
Exquisite.5 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql