nginx 高可用 方案

        根据上一篇文章https://mp.csdn.net/postedit/84187796  nginx反向代理 负载均衡,我们所有网站的入口只有一个就是nginx,如果有一天ngnix挂了 就是tomcat没挂 我们也访问不到了  怎么办????????????

所有得保证nginx高可用,就是配置备份机嘛。前一个挂了,还有后一个。不能配集群,因为入口只有一个不能同时干活5万并发。

两台服务同一时间只有一台干活 每台服务器只有一个ip地址 域名也只能绑定一个那么这个域名在那个ip上呢??域名是绑定到哪个ip请求就会发送到这个ip 备份机也只有等前一个挂了才能取到的。

一、什么是负载均衡高可用

nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务,影响严重。

       为了屏蔽负载均衡服务器的宕机,需要建立一个备份机。主服务器和备份机上都运行高可用(High Availability)监控程序,通过传送诸如“I am alive”这样的信息来监控对方的运行状况。当备份机不能在一定的时间内收到这样的信息时,它就接管主服务器的服务IP并继续提供负载均衡服务;当备份管理器又从主管理器收到“I am alive”这样的信息时,它就释放服务IP地址,这样的主服务器就开始再次提供负载均衡服务。

怎么实现高可用呢???

二、keepalived+nginx实现主备

       一、 什么是keepalived

       keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。

      Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器。

      就是一个健康检查的软件 高可用至少2台 所有请求当访问主服务器,备份服务器就等着主服务器挂掉,就是一值在检查主服务器的状态。当然主备都得装上keepalived  备份就是就一直发心跳包来检查主状态,你还活着嘛?你还活着啊,你还活着吗?。。。

     当然   keepalived是需要绑定一个vip ( Virtual IP Address ) 虚拟ip地址动态绑定的,在谁身上请求就会发送到谁身上,一开始肯定在主上面了啦。

     二、keepalived工作原理

        请自行百度.....

nginx 高可用 方案_第1张图片

备份服务器就没啥事可干就没事一直发,你啥时候挂啊,主服务器回,不知道啊。

好  终于有一天 备份机也是没事就发你啥时候挂啊噔噔噔噔,哎,突然主服务器不回答了

nginx 高可用 方案_第2张图片

顿时备份服务器搞笑极了。反手就把虚拟ip绑定在自己身上 这时候请求来了还是找vip vip就找备份服务器 然后再转到tomcat集群

那么我们网站还是可以继续运行的。

主机挂了需要运维每天检查发现的。运维来一看卧槽主服务器都挂了。就得修啊,主服务器修好之后就夺回了vip,备份又不开心了,有又一直发,你啥时候挂啊!!!

nginx 高可用 方案_第3张图片

安装好keepalive之后需要配置,如果有一天主机不会了不一定是主机挂掉了。有可能是keepalive挂了。为了防止误杀

需要配置keepalive挂了,主机也得陪葬。

 

有一个问题,就是如果有一天你网站的访问量5万都挡不住了,这个时候怎么办。

就可以花钱了,有一个叫做F5的硬负载这个东西有点贵,当然那时候也不是事了,几十万而已,这个东西比nginx处理的并发请求更快因为是硬件在一个就是从传输层开始做负载均衡的还有一个就是花钱了嘛。如果你还是没钱那么还有一个 lvs linux virtual server 虚拟服务器 国产软件 章文嵩  9几年,实现硬负载得百分之60的效果 nginx在应用层做转发,lvs和f5在传输层 第四层  入口发给lvs 在转发到nginx这样就可以处理很高的并发啊了。这时候lvs成了入口,lvs和keepalive实现高可用。

 

 

你可能感兴趣的:(nginx)