大型网站高并发解决方案LVS
2023年8月13日...大约 4 分钟
大型网站高并发解决方案LVS
负载均衡
集群功能分类:
LB: Load Balance
有一定的高可用能力,但不是高可用集群,是以提高服务的并发处理能力为根本着眼点
负载均衡产品分类
软件负载均衡设备: lvs(4层路由设备,ip、端口号)、haproxy、nginx、
对比:
软件负载均衡设备(廉价解决方案):
硬件负载均衡设备:
F5: BIG IP
Citrix,Netscaler
A10
深信服
HA: High Avaliabillity
增加服务可用性
99% 一年3天不在线
99.9% 一年0.3天不在线
KeepAlived:
HPC High performance
高性能计算集群:尽量向上扩展,如果 cpu过多,在架构上纵然会有问题的并行处理集群
1、分布式文件系统
2、将大任务分割为小任务,分别进行处理的机制(Hadoop是并行处理集群)
负载均衡
主要方式:
LB 高性能 高可用 高并发
http重定向
rewrite方式
客户端压力大,性能差
302跳转: 有概率被seo引擎判断为作弊
DNS负载均衡
DNS解析时提供负载能力
缺点:目前的DNS解析是多级解析,服务器下线,记录仍生效,导致无法访问
反向代理负载均衡
原理:squid ,nginx
IP网络层负载均衡
数据链路层负载均衡
F5硬件负载均衡
四层负载和七层负载
关于代理
lvs概述
lvs工作模式
NAT转发模式
NAT:网络地址转换
DR直接路由模式(MAC)
工作原理
TUN-IP隧道模式
FULL-NAT
模式对比
轮询算法
Fixed Scheduling Method 静态调服方法
RR 轮询
WRR 加权轮询
DH 目标地址hash
Dynamic Scheduling Method 动态调服方法
LC 最小连接数
WLC 加权最小链接数
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
LVS-NAT实战案例
拓扑:
WEB-server
LVS
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.4.2