nginx搭建負載均衡tomcat集羣-輪訓-權重 upstream配置

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

 

發佈了126 篇原創文章 · 獲贊 27 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章