Nginx负载均衡配置

以两台服务器为例,通过Nginx配置负载均衡。

1、先在两台服务器上搭建好需要负载的服务(站点、api等)

2、Nginx配置如下:

upstream apiServer {
  server 192.168.1.2:5000 weight=8;
  server localhost:5000 weight=2;
}
server {
        server_name api.XXX.com;
        location / {
                proxy_pass http://apiServer;
                proxy_set_header X-Forwarded-For $remote_addr;
        }
}

先配置upstream XXX,名字任意取,只要与location中的proxy_pass转发配置的http后面的名称一致即可,upstream server后的weight表示权重,nginx将按weight比例对请求进行分发。

3、配置访问日志格式,查看nginx转发详情:

配置log_format(与upstream、server节点同级),并配置日志文件格式应用该format:

log_format main
        ' $remote_user [$time_local]  $http_x_Forwarded_for $remote_addr  $request '
        '$http_x_forwarded_for '
        '$upstream_addr '
        'ups_resp_time: $upstream_response_time '
        'request_time: $request_time';
upstream apiServer {
        server 192.168.1.2:5000 weight=8;
        server localhost:5000 weight=2;
}
server {
        server_name api.XXX.com;
        access_log  /var/log/nginx/api.XXX.access.log main;
        location / {
                proxy_pass http://apiServer;
                proxy_set_header X-Forwarded-For $remote_addr;
        }
}

其中,$upstream_addr表示分发到的地址。

发表评论

邮箱地址不会被公开。