Nginx配置负载均衡(一)

首先搭建3台服务器,这里我的服务器ip分别是

外网ip                                    内网ip

111.230.197.188                    172.16.16.14            

134.175.190.199                    172.16.16.13

129.204.153.252                    172.16.16.9

其中111.230.197.188作为代理服务器  ,134.175.190.199作为节点1,129.204.153.252 作为节点2,目的是当我访问代理服务器时,会被自动分配到节点1,节点2上

1.安装nginx 

因为centos7中没有nginx的源,Nginx官网提供了Centos的源地址。因此可以如下执行命令添加源

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

安装nginx

yum install -y nginx

启动nginx

systemctl start nginx.service

设置nginx开机自启

systemctl enable nginx.service

nginx检查配置文件

nginx -t

nginx 重启

nginx -s reload

或service nginx restart

或systemctl restart nginx.service

nginx 停止

service nginx stop

nginx开启

service nginx start

查看nginx 运行状态

service nginx status

2.负载均衡的配置

nginx 配置文件    /etc/nginx/conf.d/default.conf


server节点上面,加入upstream节点(如图所示)

将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称,即“http://111.230.197.188”.(upstream名称可以自定义设置,但是前后一定要对应好)

到这里nginx的负载均衡初步配置完成,此时upstream依照轮询(默认)方式进行负载,每一个请求按时间顺序逐一分配到不同的后端服务器。假设后端服务器down掉。能自己主动剔除。尽管这样的方式简便、成本低廉。但缺点是:可靠性低和负载分配不均衡。

 除此之外,upstream还有其他的分配策略:

    weight(权重)

            指定轮询几率,weight和訪问比率成正比,用于后端服务器性能不均的情况。例如以下所看到的。172.16.16.13的訪问比率要比172.16.16.9的訪问比率高5倍。


    ip_hash(訪问ip)

            每一个请求按訪问ip的hash结果分配。这样每一个訪客固定訪问一个后端服务器,能够解决session的问题。


    fair(第三方)

            按后端服务器的响应时间来分配请求。响应时间短的优先分配。与weight分配策略相似。


url_hash(第三方)

        按訪问url的hash结果来分配请求,使每一个url定向到同一个后端服务器。后端服务器为缓存时比較有效。这个目前还没有研究。

你可能感兴趣的:(Nginx配置负载均衡(一))