nginx 配置轮询分流 实现负载均衡的方法

发布时间:2020-09-24编辑:脚本学堂
本文介绍下,在nginx中配置轮询分流,以实现简单的负载均衡的方法,有需要的朋友,可以参考下。

系统环境:
3台服务器,或者开虚拟机吧!我就是开虚拟机实现的。
ip分别为:192.168.1.10  192.168.1.11  192.168.1.12
环境:安装了ngixn 没有做任何配置
3台服务器环境最好一样。

192.168.1.10  作为  负载均衡服务器  (一会负载均衡就在这里台服务器做配置,另外2台不用做配置)

nginx 的 upstream目前支持 4 种方式的分配
1)、轮询(默认)
      每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
      指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
2)、ip_hash
      每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 
3)、fair(第三方)
      按后端服务器的响应时间来分配请求,响应时间短的优先分配。 
4)、url_hash(第三方)

打开192.168.1.10 的nginx.conf  只需要在配置文件增加如下代码
 

复制代码 代码示例:
upstream  www.129.com  { 
          server   192.168.1.11:80; 
          server   192.168.1.12:80; 

 
server { 
  listen 80; 
  server_name www.jb200.com; 
  location / { 
     proxy_pass        http://www.jb200.com; 
     proxy_set_header   Host             $host; 
     proxy_set_header   X-Real-IP        $remote_addr; 
     proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for; 
  } 
  access_log logs/access_log; 
  error_log logs/error_log; 

实践结果: 
http://www.jb200.com  通过修改host 指向了  192.168.1.10

修改ngixn默认页面的html
vi /usr/local/nginx/html/index.html
再index.html 加入显示本机ip
192.168.1.11 和  192.168.1.12 。

通过本机浏览器,输入 http://www.jb200.com,进行测试。
每次刷新,都会跳转到不同的服务器上页面。