keepalived双机热备nginx的配置方法

nginx目前是我最常用的反向代理服务,线上环境为了能更好的应对突发情况,一般会使用keepalived双机热备nginx或者使用docker跑nginx集群,keepalived是比较传统的方式,虽然用docker跑nginx集群更方便,但传统的方式总是有他的可取之处,并且多学一些东西也很好。以后也会写如何使用docker跑nginx集群。

  环境准备:

  2台centos: 192.168.0.105 和192.168.0.118, 虚拟IP(VIP)为192.168.0.119

配置keepavlived

  分别在105和118上安装keepalived

?

  准备心跳角本

  keepalived的配置相当灵活,可以定时执行角本命令,用于心跳检查,比如,我们访问nginx发现nginx不可访问时,就关闭keepalived,从而切换到从nginx来实现不间断的服务支持。

vi /etc/keepalived/keepalived.conf

?

  这段角本的意思就是说每次的心跳检查会执行一个for循环,访问http://localhost:81,在for的2次循环中如果返回的状态都不是200就会关闭keepalived。这个角本在105和118两台机器上都要准备好。

  设置118机器上的keepalived为主节点,105机器上的keepalived为从节点,它们两个的配置文件差不太多

?

  118机器keepalived的配置文件

?

115机器上的角本对上面的角本稍做变动即可

改变 state MASTER -> state BACKUP,priority 100 -> priority 90,mcast_src_ip 192.168.0.118 -> mcast_src_ip 192.168.0.105。其他的地方保持不变,是不是很简单。

?

到这里keepalived的简单配置就完成了下面就启动keepalived

?

安装Nginx

查看nginx的依赖库是否完整 

?

keepalived双机热备nginx的配置方法

如果没有就安装 

?

下载并解压nginx

?

keepalived双机热备nginx的配置方法

?

keepalived双机热备nginx的配置方法

?

安装在/usr/local/nginx/sbin/nginx 目录下 

?

keepalived双机热备nginx的配置方法

执行成功后会显示leaving directory  

keepalived双机热备nginx的配置方法

启动

?

keepalived双机热备nginx的配置方法

检查

?

keepalived双机热备nginx的配置方法

开机启动

?

添加一行

?

keepalived双机热备nginx的配置方法

因为我的机器上80端口被别的应用占用了,所以就修改105和118的 nginx.conf 把端口80 修改为81

?

 keepalived双机热备nginx的配置方法

分别个性105 和119上的index.html 加上一个ip以便们们识别打开的是哪个ip上的index.html

?

keepalived双机热备nginx的配置方法

nginx重新加载配置

?

好了,我们访问一下

?

返回的html是 118机器上的index.html

keepalived双机热备nginx的配置方法

 现在我们把118的nginx停止

?

这时118上的keepalived的心跳检查角本发现nginx无法访问会把keepalived关闭,然后转向从节点

我们再访问一下119

?

keepalived双机热备nginx的配置方法

在118上重新启动nginx和keepalived

再访问119 返回的网址是118上的index.html

总结

以上所述是小编给大家介绍的keepalived双机热备nginx的配置方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://www.cnblogs.com/li-peng/p/8490928.html



相关文章
推荐文章
热门文章

微信公众号推荐

相关推荐