作为代理服务器,一般都需要向上游服务器转发请求。这里的负载均衡是指通过一种策略尽量把请求平均的分发都上游服务器
1、upstream
语法 upstream name {}
配置快: http
栗子(实验通过,每次请求均匀的分布在两台机器上)
upstream backend {
server 192.168.1.100:8080;
server 192.168.1.101:8080;
}
server {
location / {
proxy_pass http://backend;
}
}
2.server
语法 server name [params]
配置块 upstream
说明:server配置项指定了一台上游服务器的名字,这个名字可以是域名、ip端口、Unix句柄等
参数说明:
weight=number:设置上游服务器的转发权重,默认1
max_fails=number:该选项与fail_timeout配合使用,指在fail_timeout时间段内,如果向上游服务器转发失败次数超过numer,则认为上游服务器不可用,fail_timeout时间内不会再向这台上游服务器进行转发,默认 1,如果设置成0,则表示不检测失败次数。
fail_timeout:它与向上游服务器简历连接的超时时间等完全无关,默认 10s
down:表示上游服务器永久下线,只有ip_hash配置项才有用
backup: 所在的上游服务器只是备份服务器,只有所有的非备份服务器都失效后才向其发送请求,ip_hash设置时不起作用
栗子:
upstream backend {
server www.example.com weight=5;
server 127.0.0.1: 8080 max_fails=3 fail_timeout=30s;
server unix:/tmp/backend;
}