[较为通用]nginx简单双机热备:backup参数的使用,实现简单负载均衡的故障转移。

jackxiang 2015-10-22 13:16 | |
背景:有时在做一些Nginx的Proxy时,如从80端口请求后代码到其它web服务器如tomcat的8080端口,需要一些主备的思想,也就是万一主服务器挂了怎么办?用备机了,这块Nginx支持这样一个功能的。
一)nginx从前端域名支向代理并负载均衡代理到其他ip并配置了域名的机器,这儿得有proxy_set_header Host $host;相当于以域名访问IP:



经测试,这个Nginx的七层代理感觉还是比Lvs差一点,压力测试时这块儿还是有点卡:


二)如nginx暴露出域名反向代理到一台tomcat的以IP指向的8080端口:

——————————————————————————————————————————


只要在希望成为后备的服务器ip后面多添加一个backup参数,这台服务器就会成为备份服务器。
在平时不使用,nginx不会给它转发任何请求。只有当其他节点全部无法连接的时候,nginx才会启用这个节点。
一旦有可用的节点恢复服务,该节点则不再使用,又进入后备状态。

可以两台机子互为热备,平时各自负责各自的服务。在做上线更新的时候,关闭一台服务器的tomcat后,nginx自动把流量切换到另外一台服务的后备机子上,从而实现无痛更新,保持服务的持续性,提高服务的可靠性。

关于这个参数的官档说明:
http://wiki.nginx.org/NginxHttpUpstreamModule
backup - (0.6.7 or later) only uses this server if the non-backup servers are all down or busy (cannot be used with the directive ip_hash)

摘自:http://hillside.iteye.com/blog/703281

http://chattool.sinaapp.com/?p=1063

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/8301/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2017-8-29 09:57
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]