本文介紹如何通過NginxProxy 伺服器代理阿里雲Apsara File Storage NAS。
背景資訊
Nginx是一款輕量級的高效能Web伺服器和反向 Proxy伺服器,它具有很多非常優越的特性。反向 Proxy(Reverse Proxy)是Nginx最常見的一種應用模式。 反向 Proxy是指通過Proxy 伺服器接受互連網上的串連請求,然後將請求轉寄給內部網路上的伺服器,並將伺服器上得到的結果返回給互連網上請求串連的用戶端,此時Proxy 伺服器對外就表現為一個反向 Proxy伺服器。
簡單來說就是真實的伺服器不能直接被外部網路訪問,需要一台Proxy 伺服器,而Proxy 伺服器能被外部網路訪問的同時又跟真實伺服器在同一個網路環境。或者真實伺服器與Proxy 伺服器是同一台伺服器但連接埠不同。
本案例中,使用1台Nginx做反向 Proxy伺服器,4台Nginx做Proxy 伺服器,後端使用阿里雲NAS。阿里雲NAS用於儲存Proxy 伺服器的快取檔案、鏡像回源檔案或者使用者上傳的待用資料檔案,不同Proxy 伺服器之間共用訪問NAS資料,實現資料同步,避免由於資料不同步導致的資料不一致或者重複鏡像回源而浪費頻寬。配置組網如下圖所示。
本案例中,以ECS(CentOS作業系統)環境為例,完成相關配置。
步驟一:部署Nginx反向 Proxy伺服器
安裝Nginx。
sudo yum install nginx
配置反向 Proxy,使反向 Proxy伺服器指向Proxy 伺服器。
執行如下命令,開啟/etc/nginx/nginx.conf檔案。
vim /etc/nginx/nginx.conf
在/etc/nginx/nginx.conf檔案中配置如下資訊。
http { upstream web{ server 10.10.0.10; server 10.10.0.11; server 10.10.0.12; server 10.10.0.13; } server { listen 80; location / { proxy_pass http://web; } } }
步驟二:建立檔案系統和掛載點
建立對應地區的NFS檔案系統,詳情請參見通過控制台建立通用型NAS檔案系統。
說明檔案系統要與Elastic Compute Service處於同一地區。
添加VPC類型的掛載點,詳情請參見添加掛載點。
步驟三:部署NginxProxy 伺服器
執行以下命令安裝Nginx。
sudo yum install nginx
執行以下命令安裝NFS用戶端。
sudo yum install nfs-utils
執行以下命令掛載檔案系統到Nginx網站目錄。
sudo mount -t nfs -o vers=4.0,file-system-id.region.nas.aliyuncs.com:/ /usr/share/nginx/html/
file-system-id.region.nas.aliyuncs.com:/為掛載點網域名稱,請根據實際情況替換。
編輯Nginx主目錄檔案。
echo "This is Testing for Nginx&NAS"> /usr/share/nginx/html/index.html
重複以上步驟,配置另外三台NginxProxy 伺服器,均掛載同一個NFS檔案系統。
驗證配置結果。
所有NginxProxy 伺服器都可以訪問index.html檔案,則表示配置代理成功。