反饋已提交

網絡繁忙

工程部署方案選擇

概述

本文將介紹單機和叢集工程部署的基本流程,方便大家直覺感受部署具體包含哪些操作。

本文面向正式工程,因此提供了配置外接資料庫、安全加固等後續操作。此類後續操作均為正式工程的建議操作,不強制要求。

本文僅介紹Linux系統&Tomcat中間軟體下的部署方案,其他不贅述。

注:推薦使用者使用Linux系統伺服器部署正式工程,原因請參見:Linux和Windows對比分析

第一步:確定部署工程節點數

帆軟應用支援單機和叢集部署,叢集則為多個工程節點。

請按照工程預計併發數,確定部署單機還是叢集,確定部署多少個工程節點,具體如下表所示:

注:使用者維度說明:

  • 註冊使用者數:系統註冊了的使用者。

  • 線上使用者數:使用者同時在一定時間段的線上數量(一般註冊人數的 5% - 20% 之間)。

  • 併發使用者數:同時向伺服器傳送請求的使用者數(一般是線上人數的 10% - 25% 左右)。

註冊使用者數線上使用者數併發使用者數

推薦配置

70% 場景的平均回应時間低於 3s

最低配置

70% 場景的平均回应時間低於 5s

 2000-5000 400-10000-200單機,節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:16GB

物理記憶體:32G

單機,節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:8GB

物理記憶體:16G

 4000-10000800-1500200-300

單機,節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:16GB

物理記憶體:32G

單機,節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:8GB

物理記憶體:16G

 6000-120001200-2500300-500單機

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:24GB

物理記憶體:48G

單機,節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:16GB

物理記憶體:32G

8000-200001600-4000500-800

2節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:24GB

物理記憶體:48G

2節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:16GB

物理記憶體:32G

10000-250002000-5000800-1000

3節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:32GB

物理記憶體:64G

2節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:24GB

物理記憶體:48G

12000-300002400-60001000-1200

3節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:32GB

物理記憶體:64G

3節點叢集,每個節點滿足:

CPU:8 核 16 執行緒 2.4GHZ

JVM 記憶體:24GB

物理記憶體:48G

第二步“選擇工程部署方式

請根據各種部署方式的優缺點,選擇適合自己的部署方式。

  • 單機部署提供三種部署方式:容器化部署、部署包部署、獨立部署

  • 叢集部署提供三種部署方式:容器化部署標準叢集、手動部署標準叢集、手動部署高可用叢集

工程類型部署方式
說明
單機容器化部署

優點:

部署成本低:一鍵部署,自帶JDK、Tomcat、FineReport工程和外接資料庫

啟動成本低:部署成功後預設新增好啟動參數,無需手動配置

異常影響小:工程環境容器化,每個工程的環境相互隔離,出現異常時影響範圍小

維運成本低:維運平台自動接入工程,對工程進行自動監視預警,維運成本低

部署包部署

優點:

部署成本低:一鍵部署,自帶JDK、Tomcat、FineReport工程


限制項:

只支援Tomcat部署,只支援x86和arm架構

部署完需要手動配置參數,以保證系統穩定運作

無法即時對系統運作情況進行監視警報

獨立部署

優點:

不限制中間軟體,不限制伺服器架構


限制項:

需提前部署準備JDK環境和Tomcat中間軟體

需提前準備好FineReport工程包

部署完需要手動配置參數,以保證系統穩定運作

無法即時對系統運作情況進行監視警報

叢集容器化部署叢集(標準/高可用)

優點:

部署成本低:一鍵部署,包括FineReport工程節點+負載均衡+狀態伺服器+檔案伺服器+外接資料庫(使用者如需容器化部署高可用叢集,可自行準備高可用組件


啟動成本低:部署成功後預設新增好啟動參數,無需手動配置

異常影響小:工程環境容器化,每個工程的環境相互隔離,出現異常時影響範圍小

維運成本低:維運平台自動接入工程,支援對伺服器、FineReport應用、組件服務等進行監視警報

手動部署標準叢集

優點:

相比於單機工程,叢集中多個工程相互通訊共享資料和任務,可以提供更好的可延伸性和更高的效能,可以提高系統的負載能力和可用性,並確定系統的穩定性和一致

限制項:

工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫都需手動部署、修改配置和串並起來

部署完需要手動配置參數,以保證系統穩定運作

無法即時對系統運作情況、伺服器、組件伺服器進行監視警報

手動部署高可用叢集優點:

相比於標準叢集,叢集更加高可用,確定工程維運穩定

限制項:

需要進行復雜的配置,需要一定的技術水平和經驗,需要更多的硬體或虛擬資源


工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫都需手動部署、修改配置和串並起來

部署完需要手動配置參數,以保證系統穩定運作

無法即時對系統運作情況、伺服器、組件伺服器進行監視警報

第三步:查看具體部署方案

單機方案一:容器化部署


操作步驟
說明
1準備伺服器環境

準備FineReport工程、外接資料庫的伺服器環境

推薦環境:工程部署推薦環境

2容器化部署

1)下載、上傳、解壓容器化部署工具

2)修改finekey.yaml配置檔案

3)語句啟動部署流程

4)部署成功後工程自動啟動,管理者即可存取工程

參考文檔:容器化部署新FineReport單機項目

3後續操作1)容器化部署時,會自動安裝FineReport工程和外接資料庫,工程會自動接入外接資料庫,因此無需配置外接資料庫

2)建議參考文檔提高產品安全性:產品安全加固指導手冊

3)建議參考文檔提高維運穩定性:維運監視指導手冊

單機方案二:部署包部署


操作步驟
說明
1準備伺服器環境

準備FineReport工程的伺服器環境

準備並部署好外接資料庫

推薦環境:工程部署推薦環境

支援環境:單機工程部署支援環境

2部署包部署

1)下載、上傳、解壓伺服器部署包

2)語句啟動FineReport工程

3)啟動成功後,管理者即可存取工程

參考文檔:Linux 下 Tomcat 伺服器部署包

3後續操作1)建議為正式工程配置外接資料庫:配置外接資料庫

2)建議參考文檔提高產品安全性:產品安全加固指導手冊

3)建議參考文檔提高維運穩定性:維運監視指導手冊

單機方案三:獨立部署


操作步驟
說明
1準備伺服器環境

準備FineReport工程的伺服器環境

準備並部署好Tomcat、JDK

準備並部署好外接資料庫

推薦環境:工程部署推薦環境

支援環境:單機工程部署支援環境

2獨立部署

1)上傳webroot工程檔案

2)上傳tools.jar檔案

3)語句啟動FineReport工程

4)啟動成功後,管理者即可存取工程

參考文檔:Linux 下 Tomcat 伺服器獨立部署

3後續操作1)建議為正式工程配置外接資料庫:配置外接資料庫

2)建議參考文檔提高產品安全性:產品安全加固指導手冊

3)建議參考文檔提高維運穩定性:維運監視指導手冊

叢集方案一:容器化部署標準叢集


操作步驟
說明
1準備伺服器環境

準備工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫部署環境

推薦環境:工程部署推薦環境

支援環境:叢集工程部署支援環境

2容器化部署

1)下載、上傳、解壓容器化部署工具

2)修改finekey.yaml配置檔案

3)語句啟動部署流程,會自動部署:

  • FineReport工程節點

  • MySQL外接資料庫

  • Nginx負載均衡

  • Redis單機狀態伺服器

  • MinIO檔案伺服器

4)部署成功後,叢集工程自動啟動,管理者即可存取工程

參考文檔:容器化部署新FineReport叢集項目

3後續操作

1)容器化部署時,會自動部署工程節點和叢集組件

工程會自動接入外接資料庫,因此無需配置外接資料庫

工程會自動接入負載均衡+狀態伺服器+檔案伺服器,因此無需開啟配置叢集

2)建議參考文檔提高產品安全性:產品安全加固指導手冊

3)建議參考文檔提高維運穩定性:維運監視指導手冊

叢集方案二:手動部署標準叢集


操作步驟
說明
1準備伺服器環境

準備工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫部署環境

推薦環境:工程部署推薦環境

支援環境:叢集工程部署支援環境

2部署外接資料庫

部署資料庫,作為工程的外接資料庫備用

支援的資料庫類型請參考:配置外接資料庫

3部署負載均衡

部署負載均衡,推薦Nginx

詳情請參見:Linux 系統安裝配置 Nginx

4部署狀態伺服器

部署狀態伺服器,推薦使用Redis單機

  • Redis單機:通用、部署簡單,無法高可用

  • Redis叢集:高可用,至少3台,建議準備6台伺服器

  • Redis哨兵:較好的高可用性,不能實現水平擴展,不支援高併發

  • 騰訊雲 Redis:方便、有保障,雲廠商選購,單機叢集都有,需安裝插件

5部署檔案伺服器

部署檔案伺服器,優先推薦SFTP

推薦級別:SFTP≈MinIO>NFS>FTP≈HDFS

  • SFTP:通用簡單,安全性優於FTP;效能、穩定性不夠好

  • FTP:通用簡單;安全性、穩定性、效能不夠好,非必要不建議使用

  • HDFS:穩定性比較好;部署麻煩,需安裝插件

  • 共享外部目錄(NFS):類SFTP;需自行部署NFS用戶端和服務端,無法高可用,需安裝插件

  • MinIO:類S3,穩定性比較好; 需自行部署MinIO,單機無法高可用,需安裝插件

  • S3:雲儲存,高可用方案,只支援部分S3,備份還原類場景可能存在卡頓

6部署工程節點

部署一個工程節點

部署方法請參考單機部署的「部署包部署」或「獨立部署」

7配置開啟叢集

1)單節點叢集配置:

為該配置外接資料庫:配置外接資料庫

將主節點與狀態伺服器+檔案伺服器相連結

設定快取模式和通訊協定

啟動叢集,重啟工程

2)多節點叢集配置:

部署其他工程節點

將第一個節點的webroot工程檔案copy到其他工程節點

啟動其他工程節點

詳情請參見:Linux系統手動配置標準叢集

8配置負載均衡

1)參考文檔修改nginx.conf檔案:Linux系統安裝配置Nginx

2)重啟Nginx組件。

9後續操作

1)參考文檔提高產品安全性:產品安全加固指導手冊

2)參考文檔提高維運穩定性:維運監視指導手冊

3)建議為叢集配置維運平台工具:維運平台

叢集方案三:手動部署高可用叢集


操作步驟
說明
1準備伺服器環境

準備工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫部署環境

推薦環境:工程部署推薦環境

支援環境:叢集工程部署支援環境

2部署外接資料庫

部署資料庫,作為工程的外接資料庫備用,優先推薦高可用主備模式資料庫

支援的資料庫類型請參考:配置外接資料庫

3部署負載均衡

部署負載均衡,推薦Keepalived+Nginx

詳情請參見:Keepalived+Nginx

4部署狀態伺服器

部署狀態伺服器,推薦使用Redis叢集

  • Redis叢集:高可用,至少3台,建議準備6台伺服器

  • Redis單機:通用、部署簡單,無法高可用

  • Redis哨兵:較好的高可用性,不能實現水平擴展,不支援高併發

  • 騰訊雲 Redis:方便、有保障,雲廠商選購,單機叢集都有,需安裝插件

5部署檔案伺服器

部署檔案伺服器,優先推薦NFS

推薦級別:SFTP≈MinIO>NFS>FTP≈HDFS

  • 共享外部目錄(NFS):類SFTP;需自行部署NFS用戶端和服務端,無法高可用,需安裝插件

  • SFTP:通用簡單,安全性優於FTP;效能、穩定性不夠好

  • FTP:通用簡單;安全性、穩定性、效能不夠好,非必要不建議使用

  • HDFS:穩定性比較好;部署麻煩,需安裝插件

  • MinIO:類S3,穩定性比較好; 需自行部署MinIO,單機無法高可用,需安裝插件

  • S3:雲儲存,高可用方案,只支援部分S3,備份還原類場景可能存在卡頓

6部署工程節點

部署一個工程節點

部署方法請參考單機部署的「部署包部署」或「獨立部署」

部署後先不啟動這些工程節點

7配置開啟叢集

1)單節點叢集配置:

為該配置外接資料庫:配置外接資料庫

將主節點與狀態伺服器+檔案伺服器相連結

設定快取模式和通訊協定

啟動叢集,重啟工程

2)多節點叢集配置:

部署其他工程節點

將第一個節點的webroot工程檔案copy到其他工程節點

啟動其他工程節點

詳情請參見:Linux系統手動配置高可用叢集

8配置負載均衡

1)參考文檔修改nginx.conf檔案:Linux系統安裝配置Nginx

2)重啟Nginx組件。

9後續操作1)參考文檔提高產品安全性:產品安全加固指導手冊

2)參考文檔提高維運穩定性:維運監視指導手冊

3)建議為叢集配置維運平台工具:維運平台

其他部署方式擴展閱讀

附件列表


主題: 部署集成
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

文 檔回 饋

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉