跳至主要內容

大型网站高并发解决方案LVS

PaperDragon...大约 4 分钟

大型网站高并发解决方案LVS

负载均衡

集群功能分类:

LB: Load Balance

有一定的高可用能力,但不是高可用集群,是以提高服务的并发处理能力为根本着眼点

负载均衡产品分类

image-20211113162334546
image-20211113162334546

软件负载均衡设备: lvs(4层路由设备,ip、端口号)、haproxy、nginx、

对比:

软件负载均衡设备(廉价解决方案):

image-20211113163036742
image-20211113163036742

硬件负载均衡设备:

F5: BIG IP

Citrix,Netscaler

A10

深信服

HA: High Avaliabillity

增加服务可用性

99% 一年3天不在线

99.9% 一年0.3天不在线

KeepAlived:

image-20211113171035950
image-20211113171035950

HPC High performance

高性能计算集群:尽量向上扩展,如果 cpu过多,在架构上纵然会有问题的并行处理集群

1、分布式文件系统

2、将大任务分割为小任务,分别进行处理的机制(Hadoop是并行处理集群)

负载均衡

主要方式:

LB 高性能 高可用 高并发

http重定向

rewrite方式

客户端压力大,性能差

302跳转: 有概率被seo引擎判断为作弊

image-20211113175339554
image-20211113175339554

DNS负载均衡

DNS解析时提供负载能力

缺点:目前的DNS解析是多级解析,服务器下线,记录仍生效,导致无法访问

image-20211113180301959
image-20211113180301959

反向代理负载均衡

原理:squid ,nginx

image-20211114085827104
image-20211114085827104

IP网络层负载均衡

image-20211114090028397
image-20211114090028397
image-20211114090041036
image-20211114090041036
image-20211114090057988
image-20211114090057988

数据链路层负载均衡

image-20211114090845169
image-20211114090845169

F5硬件负载均衡

image-20211114091053116
image-20211114091053116

四层负载和七层负载

image-20211114091217432
image-20211114091217432

关于代理

image-20211114091451393
image-20211114091451393

lvs概述

image-20211114092538677
image-20211114092538677
image-20211114093043979
image-20211114093043979

lvs工作模式

NAT转发模式

NAT:网络地址转换

image-20211114093750021
image-20211114093750021
image-20211114094615718
image-20211114094615718

DR直接路由模式(MAC)

image-20211114145843200
image-20211114145843200

工作原理

image-20211114145617062
image-20211114145617062

TUN-IP隧道模式

image-20211114155619941
image-20211114155619941
image
image

FULL-NAT

image
image
image
image

模式对比

image
image

轮询算法

Fixed Scheduling Method 静态调服方法

RR 轮询

image-20211114160525159
image-20211114160525159

WRR 加权轮询

image-20211114160530580
image-20211114160530580

DH 目标地址hash

image-20211114160933272
image-20211114160933272

Dynamic Scheduling Method 动态调服方法

LC 最小连接数

image-20211114160654786
image-20211114160654786

WLC 加权最小链接数

image-20211114160828264
image-20211114160828264

LBLC 基于本地的最少链接

LBLCR 带复制的基于本地的最少链接

LVS-DR实战案例

DR:direct route直连路由

环境:

web1
172.16.100.12
web2 
172.16.100.11
lvs-dr
172.16.100.21

vip 
172.16.100.22

配置:

1、lvs-dr准备vip和路由

添加vip

ifconfig ens32:0 172.16.100.22 broadcast 172.16.100.255 netmask 255.255.255.0 up
route add -host 172.16.100.22 dev ens32:0

VIP和RIP要配置到同一个网卡上

设置路由转发

vi /etc/sysctl.conf
net.ipv4.ip_forward=1 # 开启网络路由转发
net.ipv4.conf.all.send_redirects=0 # 禁止转发重定向报文
net.ipv4.conf.ens32.send_redirects=0 # 禁止ens32转发重定向报文
net.ipv4.conf.default.send_redirects=0 # 禁止默认转发重定向报文

2、lvs-dr设置负载均衡条目、规则

设置ipvsadm

yum -y install ipvsadm

ipvsamd -C
ipvsadm -A -t 172.16.100.22:80 -s rr
ipvsadm -a -t 172.16.100.22:80 -r 172.16.100.12:80 -g
ipvsadm -a -t 172.16.100.22:80 -r 172.16.100.11:80 -g



-a 对内的地址
-r route
-m nat模式Masq
-A   对外提供的地址
-t   TCP协议
-s   scr...策略  rr:roundrouding轮询 
-g 直连模式 gateway

3、lvs-dr让设置永久生效

ipvsadm-save > /etc/sysconfig/ipvsadm-config
systemctl enable ipvsadm

web集群

安装web访问

[root@web1 ~]# echo $HOSTNAME > /var/www/html/index.html
ifconfig lo:0 172.16.100.22/32


[root@web2 ~]# echo $HOSTNAME > /var/www/html/index.html
ifconfig lo:0 172.16.100.22/32

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore 不理睬arp包
echo 1 > /proc/sys/net/ipv4/conf/all/arp_announce  如果给你包则回复

在lvs上查询链接

[root@lvs ~]# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination
TCP 01:52  FIN_WAIT    172.16.100.1:54763 172.16.100.22:80   172.16.100.11:80

image
image
image
image
image
image

LVS-NAT实战案例

拓扑:

image-20211114095244968
image-20211114095244968

WEB-server

image-20211114110114691
image-20211114110114691

LVS

image-20211114113808272
image-20211114113808272
ipvsadm -A -t 192.168.154.128:80 -s rr
-A   对外提供的地址
-t   TCP协议
-s   scr...策略  rr:roundrouding轮询 
ipvsadm -a -t 192.168.154.128:80 -r  172.16.100.29:80 -m 
-a 对内的地址
-r route
-m nat模式Masq
ipvsadm -a -t 192.168.154.128:80 -r  172.16.100.31:80 -m 


客户端测试即可
你认为这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3