nginx集群(nginx集群部署详解)

概述如果有高并发的需求,web服务还是考虑使用lvs+keepalived+nginx实现高性能高可用的负载均衡集群。下面描述了构建的过程。由于涉及到很多概念,

概述如果有高并发的需求,web服务还是考虑使用lvs+keepalived+nginx实现高性能高可用的负载均衡集群。下面描述了构建的过程。由于涉及到很多概念,本文主要介绍LVS和ipvsadm,然后写出具体的构建过程。

LVS简介

1.LVS简介

为什么要使用负载均衡技术?

1.系统的高可用性

2.系统可扩展性

3.负载平衡能力

LVS+keepalived可以很好的满足以上需求,LVS提供负载均衡,keepalived提供健康检查,故障转移,提高系统可用性!有了这种架构,很容易对现有系统进行扩展,只需在后端增加或减少realserver,只需更改lvs的配置文件,实现无缝配置更改!

2.LVS+Keepalived简介

2.1、LVS

LVS是一款开源软件,可以在LINUX平台下实现简单的负载均衡。LVS是Linux虚拟服务器的缩写,意思是Linux虚拟服务器。

属于第4层负载均衡。

2.2、保持活跃

Keepalived运行在lvs上,主要功能是实现真机的故障隔离和负载均衡器之间的故障切换,提高系统的可用性。

2.3、注意

keepalived中有两种模式,分别是主->:备份模式和备份->:备份模式,这两种模式有什么区别?

在主-& gt;在备份模式下,一旦主库死亡,虚拟IP将自动漂移到从库。修复主库并启动keepalived后,虚拟IP将被收回,即使您将nopreempt模式设置为获取IP。备份时-->:在备份模式下,当主库宕机时,虚拟IP会自动漂移到从库。当原主人恢复后,重启keepalived服务不会抢占新主人的虚拟IP,即使优先级高于从库,也不会抢占IP。为了减少IP漂移的次数,我们通常使用修复后的主库作为代内新主库的备份。

Keepalived还处于裂脑状态。当主从网络出现问题时,主库将保持虚拟IP不变。从库与主库失去联系后,从库会抢夺IP(即使你使用备份-->:备份非抢占模式),这样的后果就是主、从数据库都持有虚拟IP。这样一来就会造成IP冲突,业务也会受到影响。所以在网络不是很好的情况下,强烈不建议使用keepalived服务。

3.工作原理

LVS是Linux虚拟服务器的缩写,意思是Linux虚拟服务器。这是一个开源的负载平衡流量调度程序。LVS集群采用IP负载均衡技术和基于内容的请求分发技术,按照一定的策略将用户请求分发到后端服务器,从而将一组服务器组成一个高性能、高可用的虚拟服务器。在特定场景下,整个服务器集群的结构对客户是透明的,不需要修改客户端和服务器程序。

nginx集群(nginx集群部署详解)插图

如图所示,前端调度程序虚拟化VS(虚拟服务器)来监听和接收请求,真正的服务提供者是后端成员(也称为RealServer或RS)。几个成员组成一个池,VS的请求分布到池中,轮询按照一定的策略分布在池中的成员之间。LVS与F5 Big-IP LTM的不同之处在于,LVS没有节点或配置文件的概念,仅提供四层负载平衡。

4.LVS转发模式

三种IP负载平衡技术(VS/NAT、VS/TUN和VS/DR):

VS/NAT:网络地址转换

VS/TUN:结束

VS/DR:直接轮询模式

5.LVS调度算法

有八种调度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh),主要有:

轮询(rr):按照请求顺序轮流分发到后端RS加权轮询(wrr):权值高的获得的任务更多最小连接数(lc):动态的将请求建立到连接数较少的RS上加权最小连接数(wlc):调度器自动询问RS的真实负载情况,并动态的调整权

6.LVS术语

nginx集群(nginx集群部署详解)插图(1)

ipvsadm介绍

从2.4版开始,linux内核默认支持LVS。要使用LVS的功能,您只需要安装一个LVS管理工具:ipvsadm。

LVS的结构主要分为两部分:

工作在内核空间的IPVS模块。LVS的能力实际上都是由IVPS模块实现。工作在用户空间的ipvsadm管理工具。其作用是向用户提供一个命令接口,用于将配置的虚拟服务、真实服务等传给IPVS模块。

1.添加虚拟服务器

语法:ipvsadm-A[-t | u | f][VIP _ addr:port][-s:指定算法] -A: add -t:TCP协议-u:UDP协议-f:防火墙标记-D:删除虚拟服务器记录-E:修改虚拟服务器记录-C: clear/[/]

语法:ipvsadm-a[-t | u | f][VIP _ addr:port][-r IP _ addr][-g | I | m][-w指定权重] -a: Add -t:TCP协议-u:UDP协议-f:防火墙标记-r:指定IP -g:DR模式-i:TUN模式-m:NAT模式-w:指定权重-d:删除realserver记录-e:修改realserver记录-l:查看3。常见命令

3.1.安装ipvsadm

yum install -y ipvsadm

nginx集群(nginx集群部署详解)插图(2)yum install -y ipvsadm

2.检查规则

ipvsadm -ln

nginx集群(nginx集群部署详解)插图(3)查看规则

3.保存规则

service ipvsadm save

nginx集群(nginx集群部署详解)插图(4)服务ipvsadm保存

这就是LVS+keepalived+nginx实现高性能高可用负载均衡集群的理念。可以做一个简单的了解,后面再写下一些具体的配置。感兴趣的朋友可以关注一下!

nginx集群(nginx集群部署详解)插图(5)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/85047.html

发表回复

登录后才能评论