/ 中存储网

使用Nginx部署负载均衡集群的实现方法

2013-09-27 08:07:01 来源:kejihao

假设我们有3台服务器,IP地址分别为:

192.168.0.1 / 192.168.0.2 / 192.168.0.3

我们将192.168.0.1作为前端主服务器,192.168.0.2和192.168.0.3作为负载均衡的后端服务器。

下面是192.168.0.1主服务器上Nginx的配置方法:

worker_processes 1;

events {

worker_connections 1024;

}

http {

upstream serverlist {

server 192.168.0.2:8000 weight=3 max_fails=3 fail_timeout=20s;

server 192.168.0.3:8000 weight=7 max_fails=3 fail_timeout=20s;

}

server {

listen 80;

server_name www.server110.com;

location / {

proxy_pass         http://serverlist;

proxy_set_header   HOST             $host;

proxy_set_header   X-Real-IP        $remote_addr;

proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

}

}

}

配置说明:

upstream serverlist{}可以理解为一个服务器池,通过proxy_pass http://serverlist命令,可将访问www.server110.com的请求分配给位于池内的服务器192.168.0.2和192.168.0.3。

weight=3和weight=7为服务器的权重,权重越高,被分配到的请求就越多。

max_fails=3和fail_timeout=20s的含义是,当请求失败次数达到3次时,这个服务器将被暂时下线20秒。

技巧:主服务器可负责静态内容,将所有php的请求分配到后端服务器处理。