nginx集群配置
nginx默认是轮训
proxy_pss 代理的upstream上的服务器ip
#配置上游服务器
upstream tomcats {
server 192.168.31.172:8080;
server 192.168.31.76:8080;
server 192.168.31.50:8080;
}
server {
listen 80;
server_name www.tomcats.com;
location / {
proxy_pass http://tomcats;
}
}
server 192.168.31.172:8080;
server 192.168.31.76:8080;
server 192.168.31.50:8080;
这是三台tomcat服务器 自己可以用虚拟机搭建
这是集群监听域名 他会随机访问 upstream中的服务器
这里的tomcat.com修改host本地域名
这里的hello tomcat3 对应每台服务器的tomcat
找到tomcat的路径 修改就行
修改index.jsp
以上是轮训 默认 如果是需要优先级,
权重配置
更改upstream就行
upstream tomcats {
server 192.168.31.172:8080 weight=1;
#server 203.195.208.14:8080;
server 192.168.31.76:8080 weight=2;
server 192.168.31.50:8080 weight=5:;
}
其他配置
upstream配置官方文档
http://nginx.org/en/docs/stream/ngx_stream_upstream_module.htm
max_conns | 允许最大连接数 |
slow_start | 当节点恢复,不立即加入 |
max_fails | 失败多少次 认为主机已挂掉则,踢出 |
fail_timeout | 踢出后重新探测时间 |
backup | 备用服务 |
weight | 权重 |
1、upstream指令参数max_conns
限制每台server的连接数,用于保护避免过载,可起到限流作用
upstream tomcats {
server 192.168.31.172:8080 max_conns=2;
server 192.168.31.76:8080 max_conns=2;
server 192.168.31.50:8080 max_conns=5;
}
2、 slow_start 这个是商业版 开源版没有 需要付费
节点恢复,不立即加入
●该参数不能使用在hash和random load bal ancing中。
●如果在upstream只有一台server ,则该参数失效。
upstream tomcats {
server 192.168.31.172:8080 max_conns=2 slow_start=60s;
server 192.168.31.76:8080 max_conns=2;
server 192.168.31.50:8080 max_conns=5;
}
3、upstream指令参数 max_ fails,、fail_ timeout
max_ fails : 表示失败几次,则标记server已宕机,剔出.上游服务。
fail_ timeout : 表示失败的重试时间。
upstream tomcats {
server 192.168.31.172:8080 max_fails=2 fail_timeout=1;
#server 203.195.208.14:8080;
server 192.168.31.76:8080 weight=2;
server 192.168.31.50:8080 weight=5;
keepalive 32;
}
其他参数 就是后面添加
Keepalived 提高吞吐量
keepalived: 设置长连接处理的数量
proxy_http_version:设置长连接http版本为1.1
proxy_set_header: 清除connection header信息
upstream tomcats {
server 192.168.31.172:8080 max_fails=2 fail_timeout=1;
#server 203.195.208.14:8080;
server 192.168.31.76:8080 weight=2;
server 192.168.31.50:8080 weight=5;
keepalive 32;
}
server {
listen 80;
server_name www.tomcats.com;
location / {
proxy_pass http://tomcats;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}