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 "";
}
}