1. 概述
1.1 版本
報表伺服器版本 | Nginx 版本 |
---|---|
11.0 | 1.21及以上版本,優先使用最新版本 |
1.2 應用場景
Nginx是一款高效能、高可靠性、開源的Web伺服器和反向代理伺服器,廣泛應用於負載均衡、Web快取、安全控制等領域。
支援多種反向代理和負載均衡算法,高效能和高併發處理能力,配置簡單,易於擴展
在 Linux 系統上具備很好的併發效能,並且佔用極小的記憶體,穩定性和效能經過充分驗證
1.3 功能簡介
在帆軟叢集架構中,負載均衡器是連結使用者和叢集節點之間的組件,以確定使用者請求能夠合理分配到不同的叢集節點上。
負載均衡器可以透過各種算法來分配使用者請求到不同的節點上,以獲得更好的效能和負載均衡效果。
本文簡單介紹如何在Linux系統安裝Nginx,並配置Nginx中基礎叢集節點資訊。
2. 環境準備
2.1 GCC編譯器
Nginx 在 Linux 系統上的部署均依賴 GCC 編譯器,因此需要保證系統具備 GCC 編譯環境。
2.1.1 確認gcc和gcc-c++是否已安裝
1)確認語句:
gcc --version
g++ --version
2)效果說明:如果已經安裝,將顯示gcc和gcc-c++的版本資訊。否則,將提示未找到該命令。
2.1.2 安裝gcc和gcc-c++
如果GCC和GCC-C++未安裝,可以在終端中運作以下命令來安裝GCC和GCC-C++:
安裝完成後,再次運作上一步命令來驗證GCC和GCC-C++是否成功安裝。
作業系統 | 安裝語句 |
---|---|
Ubuntu | 1)運作以下命令以更新套裝軟體列表: sudo apt update 2)安裝gcc和gcc-c++套裝軟體: sudo apt install gcc g++ |
CentOS | 1)運作以下命令以更新套裝軟體列表: sudo yum update 2)安裝gcc和gcc-c++套裝軟體: sudo yum install gcc gcc-c++ |
2.2 patch命令
2.2.1 確認patch命令是否安裝
1)確認語句:patch --version
2)效果說明:如果已經安裝,將顯示patch的版本資訊。否則,將提示未找到該命令。
2.2.2 安裝patch命令
如果patch命令未安裝,可以在終端中運作以下命令來安裝:
安裝完成後,再次運作上一步命令來驗證patch命令是否成功安裝。
作業系統 | 安裝語句 |
---|---|
Ubuntu | 1)運作以下命令以更新套裝軟體列表: sudo apt update 2)安裝patch命令: sudo apt install patch |
CentOS | 1)運作以下命令以更新套裝軟體列表: sudo yum update 2)安裝patch命令: sudo yum install patch |
3. 安裝Nginx
3.1 下載Nginx安裝包
下載地址:Nginx安裝包下載地址
版本要求:支援1.21及以上版本。Nginx部分老版本存在一些安全問題,建議優先使用最新Stable穩定版本。
範例:選擇Stable穩定版本,下載的安裝包是以tar.gz格式壓縮的檔案。
3.2 下載依賴資源
依賴包 | 請下載 3 個依賴包: |
---|---|
修補包 | 請下載主動健康檢查修補包: |
3.3 解壓安裝包
注:請根據你本地情況,自行調整範例語句中的目錄和安裝包檔案名稱等內容,不要完全照抄。
1)建立安裝目錄:mkdir /data/nginx
2)上傳3.1節和3.2節的安裝包和依賴資源到該目錄中。
3)進入目錄:cd /data/nginx
4)解壓安裝包:
tar zxvf nginx-1.24.0.tar.gz
tar zxvf pcre-8.42.tar.gz
tar zxvf zlib-1.2.11.tar.gz
tar zxvf openssl-1.1.1a.tar.gz
unzip ngx_healthcheck_module-master.zip
3.4 安裝 Nginx
注:請根據你本地情況,自行調整範例語句中的目錄和安裝包檔案名稱等內容,不要完全照抄。
1)進入Nginx解壓目錄:
cd /data/nginx/nginx-1.24.0
2)應用健康檢查修補:
patch -p1 < /data/nginx/ngx_healthcheck_module-master/nginx_healthcheck_for_nginx_1.14+.patch
3)指定Nginx安裝路徑:
./configure --prefix=/data/nginx --with-pcre=/data/nginx/pcre-8.42 --with-zlib=/data/nginx/zlib-1.2.11 --with-http_ssl_module --with-openssl=/data/nginx/openssl-1.1.1a --with-stream --add-module=/data/nginx/ngx_healthcheck_module-master
4)編譯安裝:
make && make install
3.5 啟動Nginx
1)進入Nginx的sbin目錄:cd /data/nginx/sbin
2)啟動Nginx:./nginx
3)輸入http://ip:負載均衡埠號查看,預設埠號為80,可以看到nginx歡迎畫面,說明安裝成功:
4. 修改Nginx配置
對於帆軟叢集應用,要想使用 Nginx 搭配 Web 容器發揮負載均衡的作用,還要對 Nginx 進行配置。
4.1 修改檔案
1)請下載並解壓通用配置檔案,重新命名檔案為nginx.conf:nginx-通用版.zip
2)修改下圖紅色框框起來的節點 IP 和埠。
注1:工程存取路徑預設為:http://ip:埠/工程名/decision,本節提供的 nginx.conf 檔案中,「check_http_send "GET /webroot/decision/system/health HTTP/1.0\r\n\r\n"; 」程式碼中的「webroot」對應存取路徑的「工程名」,使用者需根據實際情況修改;若工程名為空,則去掉程式碼中的「/webroot」。
注2:本文僅修改最基礎的配置,更多配置(修改 Nginx 埠、配置外網映射、配置 https 等)修改請參考:Nginx.conf配置手冊
4.2 上傳檔案
1)進入Nginx的sbin目錄:cd /data/nginx/sbin
2)停止Nginx:./nginx -s stop
3)上傳上一節修改好的檔案到/data/nginx/conf目錄下並改寫原配置檔案。
4.3 啟動Nginx
修改配置後,需要重啟 Nginx 方可生效。
1)進入Nginx的sbin目錄:cd /data/nginx/sbin
2)啟動Nginx:./nginx
更多維運操作,詳情參見:叢集維運手冊-Linux 版
4.4 測試是否配置成功
在瀏覽器輸入http://ip:負載均衡埠號/status查看健康頁面,可以看到叢集各個節點的健康狀態,如下圖所示: