Nginx如何实现反向代理、负载均衡及故障转移的自动切换?
- 内容介绍
- 文章标签
- 相关推荐
本文共计447个文字,预计阅读时间需要2分钟。
Nginx下载官网:http://nginx.org/en/download.
Nginx帮助文档:http://nginx.org/en/docs/
一、负载均衡
Nginx的配置文件默认路径为+/etc/nginx/nginx.conf
1. 轮询(默认)
在http节点下添加以下配置:
confupstream myupstream { server server1.example.com; server server2.example.com; server server3.example.com;}
server { location / { proxy_pass http://myupstream; }}
nginx下载官网:nginx.org/en/download.html
nginx帮助文档:nginx.org/en/docs/
nginx的配置文件默认路径在/etc/nginx/nginx.conf
1、轮询(默认)在xiaohemiao; } } upstream xiaohemiao { server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 2、ip_hash一致性算法
保证每个访客固定访问一个后端服务器
在upstream节点添加如下配置即可
upstream xiaohemiao { ip_hash; server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 3、least_conn最小活跃数算法
把请求转发给连接数较少的后端服务器,配置如下
upstream xiaohemiao { least_conn; server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 4、weight权重
upstream xiaohemiao { server 192.168.140.130:7777 weight=5; # 应用端口7777 server 192.168.140.130:8888 weight=20; # 应用端口8888 } 二、故障转移
- fail_timeout:与max_fails结合使用
- max_fails:设置在fail_timeout参数设置的时间内最大失败次数,如果在这个时间内,所有针对该服务器的请求都失败了,那么认为该服务器会被认为是停机了
- fail_time:服务器被认为停机的时间长度,默认为10s
- backup:标记该服务器为备用服务器,当主服务停止时,请求会被发送到这台服务器
upstream xiaohemiao { server 192.168.140.130:7777 max_fails=2 fail_timeout=10s; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 server 192.168.140.130:9999 backup; #备机,当7777、8888应用都宕机之后会自动转移请求到9999端口上 }
本文共计447个文字,预计阅读时间需要2分钟。
Nginx下载官网:http://nginx.org/en/download.
Nginx帮助文档:http://nginx.org/en/docs/
一、负载均衡
Nginx的配置文件默认路径为+/etc/nginx/nginx.conf
1. 轮询(默认)
在http节点下添加以下配置:
confupstream myupstream { server server1.example.com; server server2.example.com; server server3.example.com;}
server { location / { proxy_pass http://myupstream; }}
nginx下载官网:nginx.org/en/download.html
nginx帮助文档:nginx.org/en/docs/
nginx的配置文件默认路径在/etc/nginx/nginx.conf
1、轮询(默认)在xiaohemiao; } } upstream xiaohemiao { server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 2、ip_hash一致性算法
保证每个访客固定访问一个后端服务器
在upstream节点添加如下配置即可
upstream xiaohemiao { ip_hash; server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 3、least_conn最小活跃数算法
把请求转发给连接数较少的后端服务器,配置如下
upstream xiaohemiao { least_conn; server 192.168.140.130:7777; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 } 4、weight权重
upstream xiaohemiao { server 192.168.140.130:7777 weight=5; # 应用端口7777 server 192.168.140.130:8888 weight=20; # 应用端口8888 } 二、故障转移
- fail_timeout:与max_fails结合使用
- max_fails:设置在fail_timeout参数设置的时间内最大失败次数,如果在这个时间内,所有针对该服务器的请求都失败了,那么认为该服务器会被认为是停机了
- fail_time:服务器被认为停机的时间长度,默认为10s
- backup:标记该服务器为备用服务器,当主服务停止时,请求会被发送到这台服务器
upstream xiaohemiao { server 192.168.140.130:7777 max_fails=2 fail_timeout=10s; # 应用端口7777 server 192.168.140.130:8888; # 应用端口8888 server 192.168.140.130:9999 backup; #备机,当7777、8888应用都宕机之后会自动转移请求到9999端口上 }

