码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx+keepalived配置实现nginx服务器高可用

时间:2019-11-22 13:41:07      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:监控   inter   https   vrrp   图片   stop   rtu   设置   auth   

前一篇帖子里,把nginx在linux里的安装部署搞完了,现在接着安装配置keepalived。

1、keepalived主要用来防止服务器单点故障。简单来说,需要在两台nginx服务器上都安装上keepalived,设置为一主一备(或者多台备份服务器),主服务器工作,备份服务器不工作;当主服务器故障时,备份服务器根据预设规则选举出一台新的主服务器顶上,直到原来的主服务器活过来。对于客户端来说,直接访问的ip地址并不是主服务器或者备份服务器的ip,而是一个虚拟ip,这样不管哪台服务器出现故障,只要还有一台服务器可用,客户端是感知不到的。keepalived是通过实现VRRP协议来达到这个效果的,具体可自行百度。

 

2、nginx服务器两台:172.16.170.41(备份)、172.16.170.41(主),通过keepalived虚拟对外的服务地址172.16.170.43

 

3、安装keepalived:网上帖子一大把,参考这个照做即可:https://www.cnblogs.com/yaboya/p/9107442.html。不过我的配置更简单,暂时没有涉及到检测nginx服务的死活、以及发生故障时邮件发送设置等内容。

 

4、安装完了修改配置文件:vi /etc/keepalived/keepalived.conf 

  技术图片技术图片

  参数说明:

  router_id:服务器的路由标识,每台机器不同不要重复;

  state:路由状态,主服务器为MASTER,备份服务器为BACKUP;

  interface:服务器绑定的网卡;

  mcast_src_ip:广播源ip,就是服务器的实际ip地址;

  virtual_router_id:虚拟路由标识,两台服务器必须一样,而且得是0~255之间的数字;

  priority:优先级,数字越大优先级越高,应该就是根据这个在N个备份服务器里选举谁来临时当主服务器;

  advert_int:集群监控时间,单位为秒,默认是1秒,我们测试没必要这么高要求。意思是超过这个时间如果收不到MASTER还活着的消息,那么就要选举一个新的MSATER;

  auth_type、auth_pass:集群间通信用来验证身份的,配置成一样即可;

  virtual_ipaddress:统一对外提供的虚拟地址。

 

 

 5、配置完毕后两台机器分别重启服务,访问一下虚拟地址试试:

  技术图片

 

  OK了。再试一试关闭主服务器的keepalived服务(或者是直接关闭或重启centos服务器),看看备份服务器能不能顶上。

  关闭MASTER服务器服务: service keepalived stop 再看看:

  技术图片

  43还是OK的,说明配置起效了。再把备份服务器服务也关了再看看:

  技术图片

 

  说明刚才BACKUP确实起效了。OK,重启主备,服务恢复:

  技术图片

 

 

 

 

Nginx+keepalived配置实现nginx服务器高可用

标签:监控   inter   https   vrrp   图片   stop   rtu   设置   auth   

原文地址:https://www.cnblogs.com/coldlight/p/11910958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!