如下面圖所示,下面的架構就是我們今天的示範結構,後端有兩台伺服器,分別是node1和node2,前端是一台web伺服器,然後在web伺服器上做負載平衡,將前端的存取流量導到後端的兩個節點伺服器上。
三伺服器的IP位址分別是: (建議學習:nginx教學)
web:192.168.1.210 node1:192.168.1.211 node2:192.168.1.212
依照這樣的架構,在後端的node1和node2節點上指派配置好需要存取的網站,然後為了方便測試,我們將兩個網站的首頁分別改成下面的內容。如下面圖中所示,便於區分存取的節點。
在後端兩個節點配置好以後,我們再來配置web伺服器裡的負載平衡配置,首先使用默認配置,先開啟/etc/nginx/nginx.conf設定文件,在http區塊中加入upstream區塊內容如下面圖中所示,及配置了兩個後端伺服器,後端負載平衡群集的名稱是backend,記下這個名稱。
後再開啟/etc/nginx/conf.d/default.conf這個設定文件,在server區塊裡,把location裡面的內容改成下面第二張圖所示內容。即將所有存取192.168.1.210的流量代理到後端的backend叢集裡。
設定檔配置好以後,使用nginx -t指令測試一下設定文件,保證設定檔是ok狀態,然後執行nginx指令啟動nginx伺服器。
啟動後在瀏覽器上輸入前端web伺服器的ip位址192.168.1.210,然後可以看到第一次是node1回應的,然後刷新一下以後,又變成了node2回應的。就這樣實現了負載平衡的效果。由兩個伺服器分別回應,是因為預設的負載平衡演算法是輪詢演算法,即兩個節點輪流來。
以上是nginx在做負載平衡時如何設定文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!