離線安裝 OpenResty Edge
1. 架構說明
OpenResty Edge 主要包含三個角色(OpenResty Edge Admin,OpenResty Edge Log Server, OpenResty Edge Node),三者的關係如下圖:
OpenResty Edge Admin:簡稱 Edge Admin,用於控制管理 OpenResty Edge Node。
OpenResty Edge Log Server:簡稱 Log Server,用於指標,日誌的儲存和檢視。
OpenResty Edge Node:簡稱 Edge Node,是具體的閘道器伺服器,承載使用者流量。
此外還包含兩個資料儲存角色:
OpenResty Edge Admin Database:簡稱 Edge Admin Database,是 Edge Admin 所使用的資料庫,用於持久化 Edge Node 的配置。
OpenResty Edge Log Server Database:簡稱 Log Server Database,是 Log Server 所使用的資料庫,用於持久化 Edge Node 的指標和日誌資料。
2. 配置推薦
正式環境安裝 OpenResty Edge 至少需要三臺機器,分別安裝 Edge Admin,Log Server 和 Edge Node 元件。
如果是測試環境,Edge Admin 和 Log Server 也可以安裝在同一臺機器上,以節省機器資源。
對於規模在 10 個節點以內的 OpenResty Edge 叢集,我們推薦:
Edge Admin:至少使用 4 核處理器,16G 記憶體以及 200G SSD 硬碟的機器。
Log Server:至少使用 4 核處理器,16G 記憶體以及 200G SSD 硬碟的機器。
Edge Node:相對靈活,取決於業務量,大致是 1 個處理器核心搭配 2G 記憶體,越大越好。比如 8 核 16 GB 記憶體,200G 硬碟。
如果是超過 10 個節點的叢集,需要根據實際場景升級配置,如果是更大規模的叢集,還可以將 Edge Admin Database 和 Log Server Database 部署到單獨的機器,如下圖所示:
3. 安裝流程
我們會訪問如下公網地址,如果貴司有網路出口防火牆的話,需要開啟如下白名單:
openresty.com 443
openresty.org 443
pkg.openresty.com 443
api.openresty.com 443
3.1 獲取離線包
請使用郵箱在 OpenResty 下載中心 登入並下載:
- OpenResty-Edge-Offline-VERSION.tar.gz:統一提供的 OpenResty Edge 軟體包。
- openresty-edge-VERSION.tar.gz:使用者獨立的配置包。
tar xf OpenResty-Edge-Offline-VERSION.tar.gz
tar xf openresty-edge-VERSION.tar.gz
OpenResty-Edge-Offline-VERSION.tar.gz 會包含以下內容:
openresty-postgresql12.tar.gz
openresty-postgresql.tar.gz
,僅升級時使用openresty-edge-admin.tar.gz
openresty-edge-node.tar.gz
openresty-edge-log-server.tar.gz
update-admin-db.sh
,僅升級時使用update-log-server-db.sh
,僅升級時使用init-admin-db.sh
,僅安裝時使用init-log-server-db.sh
,僅安裝時使用
openresty-edge-VERSION.tar.gz 會包含以下內容:
openresty-edge-config-VERSION.deb
:ubuntu/debian 等系統使用的配置包。openresty-edge-config-VERSION.rpm
:rhel/fedora 等系統使用的配置包。
3.2 資料庫安裝與初始化
內網埠需要開放 5432
。
安裝並初始化 Edge Admin DB:
# 把 openresty-postgresql12.tar.gz 傳輸到目標機器 tar xf openresty-postgresql12.tar.gz cd openresty-postgresql12 # 複製 openresty-edge-config 到當前目錄 # cp /PATH/openresty-edge-config-* ./ # 安裝 sudo bash install.sh # 初始化 # 把 init-log-server-db.sh 傳輸到目標機器 /bin/bash init-admin-db.sh
安裝並初始化 Log Server DB: 如果你正在構建的是生產環境,我們建議在不同的機器上安裝 Edge Admin DB 和 Log Server DB。
# 把 openresty-postgresql12.tar.gz 傳輸到目標機器 tar xf openresty-postgresql12.tar.gz cd openresty-postgresql12 # 複製 openresty-edge-config 到當前目錄 # cp /PATH/openresty-edge-config-* ./ # 安裝 sudo bash install.sh # 初始化 # 把 init-log-server-db.sh 傳輸到目標機器 /bin/bash init-log-server-db.sh
3.3 Edge Admin Web 安裝
需要開放 443
和 12345
兩個埠(443
提供管理後臺,12345
用於與 Edge Node 端通訊)
安裝:
# 把 openresty-edge-admin.tar.gz 傳輸到目標機器 tar xf openresty-edge-admin.tar.gz cd openresty-edge-admin # 複製 openresty-edge-config 到當前目錄 # cp /PATH/openresty-edge-config-* ./ # 安裝 sudo bash install.sh
配置證書和私鑰(沒有也可以先跳過):
/usr/local/oredge-admin/conf/ssl/ssl.crt /usr/local/oredge-admin/conf/ssl/ssl.key
修改配置:(如果 PostgreSQL, Edge Admin, Log-Server 複用同一個機器,可以直接使用預設配置)
# 這個檔案後續的升級也不會自動覆蓋,請注意行首不要留空格 sudo vim /usr/local/oredge-admin/conf/config.ini
需要修改的配置:
1.對應的 PostgreSQL 地址
2.Log-Server 地址
重啟服務
sudo systemctl reload oredge-admin
此時 Edge Admin 應該可以正常使用了(我們只開了 HTTPS) https://your-admin.com/
登入賬號:
admin
獲取登入密碼:(請在登入成功後,修改密碼)
grep -rs "password :" init-admin-db.sh
3.4 配置兩份 admin-web 服務(可選)
如果希望提高 admin-web 的可用性,可以考慮部署兩份 admin-web 服務,配置為雙主。 步驟是:
按照上面的步驟
3.3 Edge Admin Web 安裝
再安裝一套 admin-web 軟體修改配置
# 這個檔案後續的升級也不會自動覆蓋,請注意行首不要留空格 sudo vim /usr/local/oredge-admin/conf/config.ini
需要修改 clone_admin 下的 host 欄位,每個 admin-web 配置另外一個 admin-web 服務的地址。
修改後重啟 admin-web 服務,此時兩個 admin-web 服務是雙主模式,訪問任意一個 admin-web 都是一樣的效果。
3.5 Log-Server 安裝
需要開放 12346
和 8089
兩個埠(12346
用於與 Edge Node 端通訊,8089
用於與 Edge Admin 通訊)
安裝:
# 把 openresty-edge-log-server.tar.gz 傳輸到目標機器 tar xf openresty-edge-log-server.tar.gz cd openresty-edge-log-server # 複製 openresty-edge-config 到當前目錄 # cp /PATH/openresty-edge-config-* ./ # 安裝 sudo bash install.sh
修改配置:(如果 PostgreSQL, Edge Admin, Log-Server 複用同一個機器,可以直接使用預設配置)
# 這個檔案後續的升級也不會自動覆蓋,請注意行首不要留空格 sudo vim /usr/local/oredge-log-server/conf/config.ini
需要修改的配置:
1.對應的 PostgreSQL 地址
2.Edge Admin 地址
重啟服務
sudo systemctl reload oredge-log-server
此時在 Edge Admin 的【控制面板】-【-日誌】下應該能獲取到日誌。
3.6 Edge Node 安裝
安裝:
# 把 openresty-edge-node.tar.gz 傳輸到目標機器 tar xf openresty-edge-node.tar.gz cd openresty-edge-node # 複製 openresty-edge-config 到當前目錄 # cp /PATH/openresty-edge-config-* ./ # 安裝 sudo bash install.sh
修改配置:
# 這個檔案後續的升級也不會自動覆蓋,請注意行首不要留空格 sudo vim /usr/local/oredge-node/conf/config.ini
需要修改的配置:
1.Edge Admin 地址
2.Log-Server 地址
如果配置了雙主 admin-web 服務,可以配置
admin
段下的host2
欄位。 node 會隨機使用host
和host2
(與配置順序無關),並且當某一個 admin-web 宕機的時候,會自動切換到另外一個 admin-web 服務。重啟服務
sudo systemctl reload oredge-node
至此全套的 OpenResty Edge 已經搭建完畢。
4. 資料庫備份以及高可用
我們提供了兩種方式(資料庫備份,資料庫高可用)來保證資料安全,在資料庫損壞之後可以利用備份檔案或者從庫恢復資料。我們強烈建議兩種方式都採用,最大限度保障資料安全。
5. 開始使用
有問題請與我們隨時溝通!