您的位置:首页 > 运维架构 > Nginx

nginx之负载均衡(轮询方式)

2017-08-10 20:22 253 查看
首先进行环境的搭建,这里我就不多说了,

大家可以使用虚拟机进行测试学习

一台作为负载均衡服务器,其他服务器作为web服务器,并在负载均衡服务器上搭建你的项目

然后配置负载均衡服务器

在vhost/域名配置文件里头部加入以下几行

upstream 192.168.1.146 {  //这个ip是自己定义的 随意即可 下面需要用 (服务器集群名)
#ip_hash;
server 127.0.0.1:81;   //web服务器ip地址
server 127.0.0.1:82;   //web服务器ip地址
server ........;
}
server {
.......
}


并加入server{...}里加入代码,例如:

Server{
..........//其他配置
  location /{
proxy_pass        http://192.168.1.146 ;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}
...........//其他配置
}


Proxy_pass 这个必须写,意思是重定义
后面写的地址 格式应该是 http://服务器集群名称

以下是一些参数

 时请求会被分发到对应的upstream设置的服务器列表上。
test2的每一次请求分发的服务器都是随机的,就是第一种情况列举的
。而test1刚是根据来访问ip的hashid来分发到指定的服务器,也就是说该IP的请求都是转到这个指定的服务器上。

根据服务器的本身的性能差别及职能,可以设置不同的参数控制。

down 表示负载过重或者不参与负载

weight 权重过大代表承担的负载就越大

backup 其它服务器时或down时才会请求backup服务器

max_fails 失败超过指定次数会暂停或请求转往其它服务器

fail_timeout 失败超过指定次数后暂停时间

Nginx -t 可以检测配置文件是否有错误 ,无错误后重启 访问负载均衡服务器的域名即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息