首先进行环境的搭建,这里我就不多说了,
大家可以使用虚拟机进行测试学习
一台作为负载均衡服务器,其他服务器作为web服务器,并在负载均衡服务器上搭建你的项目
然后配置负载均衡服务器
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设置的服务器列表上。
时请求会被分发到对应的upstream设置的服务器列表上。
test2的每一次请求分发的服务器都是随机的,就是第一种情况列举的
。而test1刚是根据来访问ip的hashid来分发到指定的服务器,也就是说该IP的请求都是转到这个指定的服务器上。
根据服务器的本身的性能差别及职能,可以设置不同的参数控制。
根据服务器的本身的性能差别及职能,可以设置不同的参数控制。
down 表示负载过重或者不参与负载
weight 权重过大代表承担的负载就越大
backup 其它服务器时或down时才会请求backup服务器
max_fails 失败超过指定次数会暂停或请求转往其它服务器
fail_timeout 失败超过指定次数后暂停时间
Nginx -t 可以检测配置文件是否有错误 ,无错误后重启 访问负载均衡服务器的域名即可
weight 权重过大代表承担的负载就越大
backup 其它服务器时或down时才会请求backup服务器
max_fails 失败超过指定次数会暂停或请求转往其它服务器
fail_timeout 失败超过指定次数后暂停时间
Nginx -t 可以检测配置文件是否有错误 ,无错误后重启 访问负载均衡服务器的域名即可