LVS(负载均衡调度器/工作模式)
2021-03-08 23:26:04 0 举报
AI智能生成
LVS(负载均衡调度器/工作模式)
作者其他创作
大纲/内容
Linux Virtual Server:负载均衡调度器
LVS是linux自带的,已经集成到linux内核
安装ipvsadm工具:yum install ipvsadm
LVS是linux自带的,已经集成到linux内核
安装ipvsadm工具:yum install ipvsadm
为什么要使用 LVS+Nginx?
LVS 基于四层,工作效率高
单个 Nginx 承受不了压力,需要集群,LVS 充当 Nginx 集群的调度者
Nginx 接受请求来回,LVS 可以只接受不响应
工作模式
NAT:用户请求通过 LVS 转发给多个真实服务器,服务器将数据通过 LVS 返回给用户,类似 Nginx,不适合超大并发量
TUN:IP 隧道模式,用户请求通过 LVS 转发给多个真实服务器,返回数据不需要经过 LVS
前提:每个真实服务器节点必须配置一个网卡
缺点:真实服务器的 IP 地址暴露在公网
缺点:真实服务器的 IP 地址暴露在公网
上行数据量小,下行数据量大且不经过 LVS
所以该模式能大大提高吞吐量
所以该模式能大大提高吞吐量
DR
直接路由模式,用户请求通过 LVS 的虚拟 IP 转发给多个真实服务器,
响应数据经Router的虚拟 IP 中转再返回给用户,隐藏真实服务器地址
响应数据经Router的虚拟 IP 中转再返回给用户,隐藏真实服务器地址
基于DR模式
准备
systemctl stop NetworkManager
systemctl disable NetworkManager
配置 LVS 服务器
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:1
该文件有可能是eth0
配置虚拟 IP:vim ifcfg-ens33:1
service network restart
ip addr 查看虚拟 IP 是否配置成功
配置集群规则
ipvsadm -h:查看帮助文档
ipvsadm -A -t 192.168.1.150:80 -s rr
-A:添加一个集群
-t:处理 tcp 请求
-s:负载均衡算法(rr:轮询)
-t:处理 tcp 请求
-s:负载均衡算法(rr:轮询)
ipvsadm -Ln:查看集群列表
--stats:查看上下行数据
ipvsadm -a -t 192.168.1.150:80 -r 192.168.1.171:80 -g
ipvsadm -a -t 192.168.1.150:80 -r 192.168.1.172:80 -g
ipvsadm -a -t 192.168.1.150:80 -r 192.168.1.172:80 -g
为集群添加真实服务器的节点
-a:给集群添加节点
-r:指定真实服务器
-g:代表 DR 模式
-r:指定真实服务器
-g:代表 DR 模式
默认300秒内一直访问同一台服务器,可通过 -p 参数修改
例如:ipvsadm -E -t 192.168.1.150:80 -s rr -p 5
例如:ipvsadm -E -t 192.168.1.150:80 -s rr -p 5
-E:编辑集群
-p:设置切换间隔为5秒
-p:设置切换间隔为5秒
配置两台 Nginx 服务器
cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:1
配置虚拟 IP:vim ifcfg-lo:1
service network restart 或 ifup lo 刷新
ip addr 查看虚拟 IP 是否配置成功
vim /etc/sysctl.conf
sysctl -p 刷新使配置生效
route add -host 192.168.1.150 dev lo:1
作用:添加一个路由接收数据报文
接收到以后在本机交给lo进行处理
接收到以后在本机交给lo进行处理
通过 route -n 查看是否配置成功
避免服务器重启导致配置失效
将该命令追加到开机自启动中
将该命令追加到开机自启动中
Keepalived+LVS+Nginx
Nginx可以集群部署,而且在 keepalived 中添加了健康检查机制
keepalived.conf 主机配置文件
keepalived.conf 备机配置文件
扩展
阿里云服务器不支持虚拟 IP,需要购买阿里云官方提供的负载均衡服务
腾讯云支持虚拟 IP 但是需要另付费(每台服务器节点最大支持10个虚拟 IP)
0 条评论
下一页