維運平台支援部署FineBI6.1專案。
本文按照業務可用性、日活使用者數、分析資料量、表數量劃分,提供四個標準方案,請按需選擇。
用量定義
業務高可用:存在至少2個bi-web組件,確定某個業務節點當機時,其他業務節點可替代完成任務
日活使用者數:每天登入過FineBI系統的使用者數量去重,取平均值
分析表最大列數:FineBI儀表板中,單個組件呼叫的單個自助資料集的資料列數,取最大值
表數量:FineBI系統中所有表的數量總和(包括資料庫表、SQL資料集、Excel資料集、自助資料集等)
方案適用須知
本文方案基於以抽取資料為主的場景進行推薦。如FineBI專案全部使用直連資料,請聯絡帆軟技術支援以獲得進一步支援
本文方案按照常見客戶規模提供資源建議。如使用者數、資料量或表數量超出推薦範圍,請聯絡帆軟技術支援以獲得進一步支援
本方案基於全新部署場景推薦配置。若隨工程使用時間及用量增長,現有伺服器資源不足,需要進行擴容,請聯絡帆軟技術支援以獲得進一步支援
方案配置須知
本文按照維運平台與FineBI工程完全獨立部署進行推薦。如需FineBI組件伺服器與維運平台伺服器共用,兩者伺服器配置需要相加
本文按照全新部署所有FineBI組件進行推薦。如自備部分組件(例如資料儲存、檔案服務),可在對應伺服器刪減部分配置(方案中已詳細備註)
維運平台部署的FineBI專案,強制部署1個Master節點,bi與worker節點均衡部署(1:1/1:2),無法自訂節點數配比
如果需要配置讀寫分離,服務必須高可用,只能選擇方案三/方案四
快速選擇
方案簡介
應用節點:單業務節點,非高可用
日活使用者數:0~300
分析表最大列數:0~1kw
表數量:0~2000
1worker
1master
1bi-minio
部署「1bi+1worker+1master+1bi-minio」
2)組件伺服器:CPU4核、記憶體16G、磁碟400G
部署「nginx內網關+mysql配置庫+es日誌儲存+叢集組件」
3)維運平台伺服器:CPU4核、記憶體16G、磁碟120G
部署「維運平台所有組件」
日活使用者數:0~600
分析表最大列數:0~1ww
表數量:0~1w
1)主應用伺服器:CPU32核、記憶體128G、磁碟1T
2)組件伺服器:CPU12核、記憶體48G、磁碟500G
應用節點:多應用節點,支援業務高可用
2worker
1)主應用伺服器1:CPU16核、記憶體64G、磁碟500G
2)主應用伺服器2:CPU16核、記憶體64G、磁碟200G
部署「1bi+1worker」
3)組件伺服器:CPU4核、記憶體16G、磁碟400G
4)維運平台伺服器:CPU4核、記憶體16G、磁碟120G
日活使用者數:0~1200
2)主應用伺服器2:CPU32核、記憶體128G、磁碟500G
3)組件伺服器:CPU12核、記憶體48G、磁碟500G
包括三台伺服器:主應用伺服器、組件伺服器、維運平台伺服器
主應用伺服器:CPU16核、記憶體64G、磁碟500G,部署「1bi+1worker+1master+1bi-minio」
組件伺服器:CPU4核、記憶體16G、磁碟400G,部署「nginx內網關+mysql配置庫+es日誌儲存+叢集組件」
維運平台伺服器:CPU4核、記憶體16G、磁碟120G,部署「維運平台所有組件」
用於安裝bi業務和引擎組件
組件作用可參考:瞭解維運專案組件作用
推薦自備S3,作為資料儲存組件
如自備S3,作為資料儲存組件bi-minio和檔案儲存組件minio,請至少準備兩個獨立bucket,分別用做兩個組件內容儲存
bi-web
bi-engine-worker
bi-engine-master
bi-minio(推薦自備S3)
filebeat
ops_agent
用於安裝bi叢集、日誌、配置組件
nginx
elasticsearch(支援自備)
minio(支援自備)
mysql(支援自備)
redis(支援自備)
用於安裝維運平台
組件作用可參考:瞭解維運平台組件作用
如已安裝維運平台,請忽略本欄
如需FineBI組件伺服器與維運平台伺服器共用,兩者伺服器配置需要相加
ops、nginx
pushgateway、prometheus、grafana、alertmanager
elasticsearch、skywalking_oap
registry(支援自備)
所有伺服器時間一致,相差不能超過5秒
伺服器時間不一致,可能會導致定時任務執行錯誤、日誌記錄混亂、資料不一致等多種問題
所有伺服器時區完全一致
伺服器時區不一致,可能會導致定時任務執行錯誤、日誌記錄混亂、資料不一致等多種問題
所有伺服器內網互通,或可以開放埠存取
下文將具體講述對應埠開放要求
推薦:Ubuntu 22 版本
支援:
Ubuntu 18.04.4 及以上版本(不支援 Ubuntu20.04 版本 )
CentOS 7.3~7.9 版本
redhat 7.6 及以上版本
Rocky Linux 8.8~9.4版本
注:CentOS作業系統目前已停止服務,因此帆軟優先推薦使用Ubuntu作業系統
使用Ubuntu作業系統時,請注意檢查使用者權限(預設root使用者不是超管)和磁碟類型(是否為xfs),下文已詳細備註
16核
注1:必須要有任一分割槽滿足條件,不可將分割槽容量加和
注2:自備組件可以降低磁碟要求
如自備資料儲存組件,伺服器剩餘閒置磁碟要求可降低200G
如自備ElasticSearch組件,伺服器剩餘閒置磁碟要求可降低50G
如自備外接配置庫組件,伺服器剩餘閒置磁碟要求可降低50G
如自備檔案儲存組件,伺服器剩餘閒置磁碟要求可降低100G
注:必須要有任一分割槽滿足條件,不可將分割槽容量加和
如未自備資料儲存組件,需要部署bi-minio組件,磁碟類型必須是XFS
如不使用XFS,會出現磁碟未滿,但無法寫入資料的情況
注1:Ubuntu作業系統,預設磁碟類型一般不是XFS,請自行調整修改
注2:阿里雲伺服器,預設磁碟類型一般不是XFS,請自行調整修改
注3:該操作可能涉及格式化磁碟,帆軟不提供相關指導,請在伺服器廠商指導下謹慎進行
如未自備檔案服務組件,需要部署minio組件,磁碟類型推薦是XFS
最低效能要求為基於 SATA API的固態硬碟(SSD)
隨機讀寫 IOPS(4K)> 1W:磁碟每秒可以執行至少 1w 個以上的 4KB 資料塊的讀寫操作
順序讀寫 IOPS(1024K)> 315.5MB:磁碟每秒可以傳輸至少 315.5MB 的資料塊
準備FineBI專案掛載目錄
注:禁止直接使用/、/usr、/root、/usr/local四個目錄作為掛載目錄,可在對應位置建立資料夾使用
準備維運平台掛載目錄
外掛目錄對應的檔案系統需要配置重啟自動掛載
如果沒有配置重啟自動掛載,那麼容器可能無法存取這些掛載目錄,導致資料丟失或應用程式無法正常啟動
外掛目錄不能是一個共享路徑
共享檔案系統可能導致效能下降、檔案權限問題和資料一致挑戰,這些問題會影響容器應用程式的可靠性和速度
tar命令是一個用於打包和壓縮檔案的常用命令列工具
維運平台需要使用該命令進行檔案解壓
確定伺服器已安裝sed命令
sed命令是一個用於處理正文的工具
維運平台需要使用該命令進行正文處理
1)優先推薦使用root超管使用者進行專案部署和運作
2)如需使用非超管root使用者進行專案的部署和運作
請參考文檔:Linux使用者權限說明
注:Ubuntu作業系統,預設root使用者並非超管使用者,請務必再次確認所準備的使用者是否滿足上方超連結的linux使用者權限
≥2.5Gbps(312.5MB/s)
組件佔用埠
組件埠互通
主應用伺服器:CPU32核、記憶體128G、磁碟1T,部署「1bi+1worker+1master+1bi-minio」
組件伺服器:CPU12核、記憶體48G、磁碟500G,部署「nginx內網關+mysql配置庫+es日誌儲存+叢集組件」
32核
如自備資料儲存組件,伺服器剩餘閒置磁碟要求可降低500G
隨機讀寫 IOPS(4K)> 2W:磁碟每秒可以執行至少 2w 個以上的 4KB 資料塊的讀寫操作
順序讀寫 IOPS(1024K)> 625MB:磁碟每秒可以傳輸至少 625MB 的資料塊
用於部署專案的伺服器使用者,必須具備相關sudo權限
≥5Gbps(625MB/s)
包括四台伺服器:主應用伺服器、組件伺服器、維運平台伺服器
主應用伺服器1:CPU16核、記憶體64G、磁碟500G,部署「1bi+1worker+1master+1bi-minio」
主應用伺服器2:CPU16核、記憶體64G、磁碟200G,部署「1bi+1worker」
主應用伺服器1:CPU32核、記憶體128G、磁碟1T,部署「1bi+1worker+1master+1bi-minio」
主應用伺服器2:CPU32核、記憶體128G、磁碟500G,部署「1bi+1worker」
FineBI6.1抽取效能報告.pdf
之所以需要上表的配置,是因為FineBI專案的每個組件,有最低運作配置要求,如下表所示:
注1:由於各組件不會同時滿負荷運作,為了防止資源過剩,因此準備伺服器時採用CPU共享策略。所要求的伺服器CPU核心數,並非各個容器CPU上限之和。
注2:由於各個組件容器記憶體必須滿足當前JAVA記憶體配置,以分配給xmx、堆外記憶體、FineIO讀寫記憶體、CodeCache、元空間記憶體等,因此所要求的伺服器記憶體,必須滿足各個容器記憶體上限之和。
伺服器內存/4
最大64G
5/8容器記憶體-2
最大32766M
伺服器內存/2/worker數量
5/8容器記憶體-10/7
伺服器內存/8