如下面圖中所示,下面的架構就是我們今天的演示結構,后端有兩臺服務器,分別是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響應的。就這樣實現了負載均衡的效果。由兩個服務器分別響應,是因為默認的負載均衡算法是輪詢算法,即兩個節點輪流來。