64㎡年輕小夫妻的家,三居改一居,安放屋主的所有喜好!
2023-01-30
更新時間:2022-03-14 21:50:59作者:未知
1、下面的架構就是我們今天的演示結構,后端有兩臺服務器,分別是node1和node2,前端是一臺web服務器,然后在web服務器上做負載均衡,將前端的訪問流量導到后端的兩個節(jié)點服務器上。三個服務器的IP地址分別是:web:192.168.1.210node1:192.168.1.211node2:192.168.1.212
2、按照這樣的架構,在后端的node1和node2節(jié)點上分配配置好需要訪問的網(wǎng)站,然后為了方便測試,我們將兩個網(wǎng)站的主頁分別改成下面的內容。便于區(qū)分訪問的節(jié)點。
3、后端兩個節(jié)點配置好以后,我們再來配置web服務器里的負載均衡配置,首先使用默認配置,先打開/etc/nginx/nginx.conf配置文件,在http區(qū)塊里添加upstream塊內容,及配置了兩個后端服務器,后端負載均衡集群的名稱是backend,記下這個名稱。
4、然后再打開/etc/nginx/conf.d/default.conf這個配置文件,在server區(qū)塊里,把location里面的內容改成圖中所示內容。即將所有訪問192.168.1.210的流量代理到后端的backend集群里。
5、配置文件配置好以后,使用nginx -t命令測試一下配置文件,保證配置文件是ok狀態(tài),然后執(zhí)行nginx命令啟動nginx服務器。
6、啟動后在瀏覽器上輸入前端web服務器的ip地址192.168.1.210,然后可以看到第一次是node1響應的,然后刷新一下以后,又變成了node2響應的。就這樣實現(xiàn)了負載均衡的效果。由兩個服務器分別響應,是因為默認的負載均衡算法是輪詢算法,即兩個節(jié)點輪流來。
7、然后我們還可以嘗試一下加權輪詢算法, 即給不同的節(jié)點配置不同的權重,權重高一點的服務器,響應的多一些,權重第一點的響應少一些。加權輪詢算法配置,在后端服務器后面加上權重值weight即可。配置好以后,執(zhí)行nginx -t命令檢測配置文件,確認無誤后,執(zhí)行nginx -s reload命令重新加載配置文件。
8、通過加權輪詢的方式,我們無法通過手動一次次點擊,最后來統(tǒng)計次數(shù)。但是我們可以使用自動化工具來統(tǒng)計。使用的工具是一款叫做httpd-tools的軟件,安裝好以后,提供了一個ab命令
9、然后我們來執(zhí)行ab命令進行測試,常用的格式是:ab -n 1000 -c 50 http://localhost這個命令是在210服務器上執(zhí)行的。表示一共執(zhí)行1000次訪問,每次發(fā)送50個請求。
10、然后我們登錄到后端的node1服務器上,打開nginx的訪問日志,從中可以看到ab命令測試的訪問信息里,訪問來源都是ApacheBench,因此可以通過可以來源來統(tǒng)計nginx響應的次數(shù)。命令是:grep ApacheBench access.log | wcnode1和node2節(jié)點上的統(tǒng)計結果分別是714和286,如下面圖中所示,雖然沒有達到5:2的權重比例,但是也非常接近了。說明這個配置生效了。