反饋已提交

網絡繁忙

維運監視指導手冊

優先推薦

企業在管理帆軟應用(FineReport、FineBI)的程式中,常常會遇到一些痛點和挑戰:

1)低效的維運流程:應用管理者維運經驗不足,專業維運人員又無法深入解決應用問題,傳統維運流程耗時耗力,導致企業維運效率低下,影響業務的正常運轉。

2)不足的監視手段:維運人員可能無法準確監視項目的效能和可用性,缺乏維運程式中必要的工具和技術。

3)多項目管理混亂:企業可能有多個項目運作,而這些項目由不同的部門或團隊負責管理,導致版本不統一、部署環境各異,難以進行統一的維運管理。

因此帆軟推出「FineOps維運平台(為企業提供帆軟應用穩定運作和全方位維運管理的解決方案)」,幫助企業更好地解決以上問題。

1. 概述

1.1 版本

報表伺服器版本
11.0

1.2 應用場景

針對常見的維運監視訴求場景,給出現有的維運監視功能方案介紹,幫助客戶快速實現對於 FineReport 和 FineBI 應用的維運監視。

方案適用於已經完成部署的帆軟系統,將會展開介紹帆軟應用的日常維護、管理和監視方式。

1.3 功能簡介

帆軟應用對系統有一定的配置要求,如果配置不符合要求可能出現使用異常、當機等風險,因此需要定期對環境及應用的配置情況進行檢查,以確定應用的健康運作。

同時管理者需要關注應用的運作狀況,即時透過維運手段規避風險或在問題發生後定位並進行排除,實現應用的持續高可用。

本文方案將從以下幾個方面展開介紹帆軟應用的具體維運方式:

注:鑑於伺服器情況不同,沒有完全通用的解決方案。部分檢查項僅提供推薦配置值,請自行百度修改方案。

方向
分類
主要配置檔案及說明介紹帆軟應用內的主要配置檔案資訊及其詳細說明外接資料庫資訊配置-
平台配置資訊-
系統巡檢建議對系統進行定期巡檢,確定應用所在的環境及應用內配置合理,以保證應用的正常運作系統檢查包括:CPU主頻、核心數、記憶體大小、已使用記憶體、閒置記憶體、交換分割槽、檢查時間、根目錄磁碟、根目錄磁碟剩餘
系統運作狀態包括:工程啟動路徑、工程下資料夾大小異常情況、xms配置、插件資訊、註冊資訊、web.xml檢查、容器版本、工程JAR包資訊、伺服器時間
埠檢查帆軟應用正常使用程式中,需要伺服器開放一些埠,因此需要對這些埠進行檢查是否開放,避免出現系統功能異常
網路檢查檢查應用各組件通訊是否能夠ping通,是否存在丟包情況
服務連結性檢查檢查服務是否連通
業務檢查包括:finedb、日誌級別、日誌清理、自動備份磁碟佔用限制、自動備份保留數量限制、排程管理任務清理配置
環境檢查包括:overcommit_memory、overcommit_ratio、codecache配置、語言配置-Duser.country、語言配置-Duser.language、zip相關配置-Dsun.zip.disableMemoryMapping、gblic記憶體公佈相關配置
磁碟檢查

1)關注磁碟的效能和使用情況,防止影響業務的正常運作

2)關注磁碟剩餘空間,防止出現磁碟空間不足導致系統運作受影響

虛擬機檢查系統當前記憶體、headless模式
非容器化部署檢查包括:進程使用者、伺服器主要資料夾權限
配置檢查包括:外接資料庫編碼、Nginx健康檢查、Nginx參數配置、叢集參數配置、更新資源無限制時間段配置、二級快取開啟情況、SQL執行時長限制、單範本儲存格數限制、匯入excel儲存格數限制、單資料集列數限制、負載預警開啟、髒資料檢查
基本維護在應用日常的正常運作程式中,維護交易相對簡單,在有需要的時候能夠查看應用的運作日誌,或查看應用的各項監視指標是否存在異常即可日誌查看瞭解各類日誌檔案的儲存位置和使用方法
監視指標日常運作中,維運人員主要需要關注相關指標是否存在異常
異常維護當帆軟應用出現異常時,要有一些維運手段,實現提前規避風險、快速恢復服務可用等異常警告如需對帆軟應用的異常即時感知,需實現對帆軟應用各項指標的監視警報
當機處理

當應用出現異常時,當機可能會隨之發生

1)快速恢復應用

2)記錄當機日誌,進行問題定位和排查

備份與升級因為新的功能優化或者BUG修復需要進行應用的升級,同時升級前為了避免未知風險的發生,做好系統的備份也是必須的備份還原
系統需要定期進行備份,以確定在使用者誤操作、版本回退等場景下能夠即時恢復
更新升級為了能獲得更好的功能體驗,工程儘量跟隨官方更新最新版本


2. 主要配置檔案及說明

本章主要介紹帆軟應用內的主要配置檔案資訊及其詳細說明。

2.1 外接資料庫資訊配置檔案

1)檔案位置

%FRBI_HOME%\webapps\webroot\WEB-INF\config\db.properties

2)檔案內容

數據決策系統中除平台屬性配置以外的所有資訊,包括目錄樹設定、範本定時任務資訊等,均儲存於 FineDB 資料庫。

FineReport/FineBI 支援使用內建 FineDB 資料庫或啟動外接 FineDB 資料庫。

工程配置了外接資料庫後,方在WEB-INF/config中生成一個db.properties檔案。FineDB 資料庫是否外接由 db.properties 檔案控制。

3)檔案關鍵資訊

db.properties檔案中,常見配置關鍵字與其內容對應關係如下。

注:為了防止修改錯誤導致系統出錯,不建議手動修改db.properties檔案。

key(id)
描述
hibernate.connection.password加密過後的資料庫的密碼
hibeinate.maxWait最大等待毫秒數(ms),   超過時間會出錯誤資訊
hibernate.minEvictableIdleTimeMillis連結在池中保持閒置而不被閒置連結回收器執行緒(如果有)回收的最小時間值(ms)
hibernate.hbm2ddl.auto自動建立|更新|驗證資料庫表結構。
create:每次載入hibernate時都會刪除上一次的生成的表,然後根據你的model類再重新來生成新表。
create-drop :每次載入hibernate時根據model類生成表,但是sessionFactory一關閉,表就自動刪除。
update:第一次載入hibernate時根據model類會自動建立起表的結構(前提是先建立好資料庫),以後載入hibernate時根據   model類自動更新表結構。
validate :每次載入hibernate時,驗證建立資料庫表結構,只會和資料庫中的表進行比較,不會建立新表,但是會插入新值
hibernate.initialSize初始化執行緒數,表示開始自動建立幾個與資料庫的連結
hibernate.default_schema連結模式,如設為dbo模式,以指定資料庫的建立者
hibernate.validationQuery驗證連結是否成功,value可設為sql語句
hibernate.testWhileIdle閒置時是否進行驗證,檢查物件是否有效,預設為 false
hibernate.connection.username資料庫帳號
hibernate.connection.isolation參數配置資料庫交易隔離級別
8:Serializable 串行化
4:Repeatable Read 可重複讀

2:Read Commited 可讀已提交

1:Read Uncommited 可讀未提交

hibernate.connection.driver_class資料庫連結驅動
hibernate.timeBetweenEvictionRunsMillis失效檢查執行緒運作時間間隔,如果小於等於 0,不會啟動檢查執行緒
hibernate.connection.provider_class用以整合阿里的Druid資料庫連結池
hibernate.testOnBorrow取得物件時是否進行驗證,檢查物件是否有效,預設為 false
hibernate.testOnReturn傳回物件時是否進行驗證,檢查物件是否有效,預設為 false
hibernate.dialect指定資料庫方言類
hibernate.numTestsPerEvictionRun失效檢查執行緒運作次數
hibernate.connection.url資料庫連結url
hibernate.maxActive可以從物件池中取出的物件最大個數,為 0 表示沒有限制
hibernate.minIdle物件池中物件最小個數

2.2 平台配置資訊

平台中有些配置資訊記錄在 FineDB 的 fine_conf_entity 表中,只能透過修改表欄位來進行更改。

使用者可透過「fine_conf_entity視覺化配置插件」安全地修改相關配置。

注:請勿使用該插件以外的方法修改 FineDB 檔案,有可能造成不可修復的 BUG,需自行承擔後果。

可修改的配置內容及修改方式請參見:FINE_CONF_ENTITY視覺化配置

3. 系統巡檢

建議管理者使用「健康巡檢」功能,對系統進行定期巡檢,確定應用所在的環境及應用內配置合理,以保證應用的正常運作。

巡檢內容包括系統檢查、系統運作狀態、埠檢查、網路檢查、服務聯通性檢查、業務檢查、環境檢查、磁碟檢查、非容器化部署檢查、虛擬機檢查。

3.1 系統檢查

系統檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準及修改建議
0101作業系統資訊

僅匯出資訊

0102檢查時間僅匯出資訊
0103時區資訊僅匯出資訊
0104glibc/gcc版本僅匯出資訊
0105hostname僅匯出資訊
0106host檔案資訊僅匯出資訊
0107CPU主頻

檢查主頻大於等於 2.4 gh

建議主頻大於等於 2.4 gh

0108核心數

檢查覈心數大於 4 核

cpu 核心數推薦大於 4

0109記憶體大小

檢查記憶體是否大於等於15.5GB

建議物理記憶體大於等於16G

0110交換分割槽

檢查是否關閉SWAP配置

匯出交換分割槽大小

建議關閉SWAP配置

0111已使用記憶體僅匯出資訊
0112閒置記憶體僅匯出資訊
0113CPU資訊僅匯出資訊
0114伺服器字體編碼僅匯出資訊
0115伺服器字體包僅匯出資訊

0110 關閉SWAP分割槽

1)查看當前系統中是否啟動了swap分割槽

使用以下命令查看系統中已經啟動的swap分割槽資訊:

sudo swapon -s

如果匯出結果為空,則表示當前沒有啟動swap分割槽。
2)關閉swap分割槽

使用以下命令關閉swap分割槽:

sudo swapoff -a

該命令將關閉所有已經啟動的swap分割槽。

3)永久禁用swap分割槽

為了避免系統在下一次啟動時自動啟動swap分割槽,需要在系統配置檔案中進行相應的修改。

以Ubuntu為例,可以按照以下步驟操作:

  • 修改/etc/fstab檔案,找到含有swap的列並註釋掉或刪除該列。

  • 執行以下命令更新grub引導程式:

sudo update-grub

4)驗證swap分割槽是否已經關閉

重啟系統後,可以再次執行sudo swapon -s命令查看系統中是否存在已經啟動的swap分割槽。

如果匯出結果為空,則表示swap分割槽已經成功關閉。

3.2 系統運作狀態

系統運作狀態的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準
0201啟動時長僅匯出資訊

包括:本次啟動的耗時

0203工程啟動路徑僅匯出資訊

包括:目錄路徑

0204工程下資料夾大小異常情況

注:僅檢查本地,不檢查檔案伺服器。

檢查工程WEB-INF下一層的每個資料夾大小

健康:不存在大於5G的資料夾

不健康:存在大於5G的資料夾

修改建議:

建議檢查確認對應資料夾的內容並進行清理

提示出超過5G大小的資料夾路徑

0205插件資訊

僅匯出資訊

包括:插件名、插件版本、插件是否啟動

0206註冊授權資訊

僅匯出資訊

包括:工程是否註冊

0207WEB-INF下是否有web.xml

僅匯出資訊

包括:是/否

0208容器版本僅匯出資訊
0209工程jar包資訊

僅匯出資訊

包括:工程各個模組的版本和JAR包日期

0211臨時匯出目錄僅匯出資訊

包括:目錄路徑、目錄剩餘可用空間

0212tomcat後台運作對於Windows系統、Tomcat容器下的工程,

檢查是否使用javaw後台運作tomcat

健康:使用javaw後台運作tomcat

不健康:未使用javaw後台運作tomcat

修改建議:建議使用javaw後台運作tomcat

0204 清理資料夾

1)WEB-INF資料夾存放着什麼

2)哪些檔案可清理

資料夾/檔案
用途自動清理手動清理
schedule1)檔案路徑:

%BI_HOME%\webapps\webroot\WEB-INF\schedule

2)檔案用途:

儲存排程管理任務產生的中間檔案

3)可清理範圍:
保留最近一年的檔案,其餘均可清理
4)清理級別:

建議清理

不支援自動清理

檔案層級直接展示到具體的日期(日級別),使用者手動選擇需要清理的範圍即可

推薦清理12個月之外的檔案

12個月之內的檔案不顯示

treasure1)檔案路徑:

%BI_HOME%\webapps\webroot\WEB-INF\treasures
2)檔案用途:
雲端健檢分析日誌打包檔案
3)清理級別:

建議清理

保留最近12個月的檔案,其餘檔案清理

檔案層級直接展示到具體的日期(日級別),使用者手動選擇需要清理的範圍即可

推薦清理12個月之外的檔案

12個月之內的檔案不顯示

3)清理方式

管理者登入數據決策系統,點選「管理系統>智慧維運>磁碟維運>磁碟清理」。

選擇需要掃描的檔案類型,點選「開始掃描」,立即開始掃描可以手動清理的冗餘檔案。

0212 tomcat後台運作

原因分析:

Windows系統中,tomcat容器下部署的工程,如果不使用後台模式啟動,而是使用視窗模式啟動,可能會因為誤點視窗,導致視窗進入編輯插入狀態,阻擋日誌匯出,進而導致工程卡死。

因此建議Windows系統中,tomcat容器下部署的工程,tomcat使用後台模式啟動。

操作步驟:

先修改預設啟動模式為javaw。為了防止重複啟動,重新整理增腳本檢查啟動命令,按任意鍵即可結束腳本。

1)修改setclasspath.bat

開啟%Tomcat_HOME%\bin\setclasspath.bat,找到並修改set _RUNJAVA的值:

set _RUNJAVA="%JRE_HOME%\bin\javaw.exe"

2)修改catalina.bat

開啟%Tomcat_HOME%\bin\catalina.bat,在最後加上判斷提示:

set ENV_VAR_VALUE=%_EXECJAVA%
echo %ENV_VAR_VALUE% | findstr /C:"javaw" >nul
if %errorlevel% equ 0 (
    echo tomcat is running in the background
    pause
)

3.3 埠檢查

埠檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準及修改建議
0301websocket埠僅匯出資訊

包括:埠號

0302叢集埠

檢查叢集埠是否暢通

健康:埠間暢通

不健康:埠存在不暢通

修改建議:叢集埠連結性狀態異常

0303當機檢查埠

檢查:

1)當機自動檢查是否開啟

2)當機埠是否暢通

優化建議:建議開啟當機檢查並保證埠可用

0301 websocket埠

WebSocket 主要用於重新整理 token、使用者被踢出、平台訊息、記憶體和 CPU 顯示、平台日誌處當前系統線上人數、資料連結編輯狀態的確定。

WebSocket 不開放影響 socket 通訊,存取可能異常斷開。

使用者可根據自己的工程情況選擇合適的 WebSocket 埠配置方法,詳情請參見下表:

方案場景配置方法
容器Websocket方案容器Websocket方案,無需任何使用者操作,系統可自動使用Web容器自帶的WebSocket進行連結,埠複用http埠
  • 只需使用者環境滿足生效條件,則自動使用該方案

  • 若使用者環境不滿足生效條件,則可考慮自行配置socket.io方案

容器Websocket方案
socket.io方案單機環境配置 WebSocket 埠單機配置WebSocket埠
叢集環境配置 WebSocket 埠叢集配置WebSocket埠
HTTPS 環境配置 Websocket 埠HTTPS配置WebSocket
僅對外開放一個埠不額外給WebSocket對外開放埠

0302 叢集埠

管理者登入資料決策平台,點選「管理系統>智慧維運>叢集配置」。

  • 可查看叢集各個節點的埠,無法使用的節點飄紅。

  • 可編輯節點埠,滑鼠懸浮即可出現編輯按鈕。

0303 當機檢查埠

管理者資料決策平台,點選「管理系統>智慧維運>當機處理」。

  • 可查看當機自動處理工具使用的埠。預設埠為12100。

  • 可修改埠,點選「儲存」即可。

  • 可點選「測試」,測試埠可用性。

3.4 網路檢查

檢查檔案伺服器、外接資料庫、狀態伺服器和應用之間通訊是否正常,是否能夠ping通,是否存在丟包情況。

3.5 磁碟檢查

磁碟檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準及修改建議
0501順序讀取

僅匯出資訊

包括:順序讀取的速度(若低於100,則不顯示具體數值,僅提示「速率小於100MB/S」)

注:windows系統下若權限不足,請手動使用命令檢查「winsat disk -drive 盤符 -seq -read」

0502順序寫

僅匯出資訊

包括:順序寫的速度(若低於100,則不顯示具體數值,僅提示「速率小於100MB/S」)

注:windows系統下若權限不足,請手動使用命令檢查「winsat disk -drive 盤符 -seq -write」

0504小檔案建立

僅匯出資訊

包括:每秒建立小檔案個數

0505小檔案刪除僅匯出資訊

包括:每秒刪除小檔案個數

0506磁碟空間

1)FineReport:

健康:磁碟總大小≥100GB

不健康:磁碟總大小<100GB

修改建議:建議磁碟總大小高於100GB

2)FineBI:

健康:磁碟總大小≥400GB

不健康:磁碟總大小<400GB

修改建議:建議磁碟總大小高於400GB

0507已使用磁碟空間

僅匯出資訊

包括:已使用的磁碟空間大小

0508閒置磁碟空間

1)FineReport:

健康:磁碟餘量高於10GB

不健康:磁碟餘量不足10GB

修改建議:磁碟餘量不足10GB,建議清理磁碟大檔案避免影響使用

2)FineBI:

健康:磁碟餘量高於50GB

不健康:磁碟餘量不足50GB

修改建議:磁碟餘量不足50GB,建議清理磁碟大檔案避免影響使用

0509順序讀取(非緩衝池)

僅匯出資訊

包括:非緩衝池順序讀取的速度(若低於100,則不顯示具體數值,僅提示「速率小於100MB/S」)

0510順序寫入(非緩衝池)

僅匯出資訊

包括:非緩衝池順序寫入的速度(若低於100,則不顯示具體數值,僅提示「速率小於100MB/S」)

3.6 非容器化部署資訊

非容器化部署的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準
0601進程使用者

僅匯出資訊

包括:帳號稱

0602伺服器主要資料夾權限

僅匯出資訊

包括:快取資料夾、resources、assets、assist、finedb的權限

注:檔案伺服器權限不匯出。

0603多進程檢查

健康:帆軟應用所需最大記憶體+其他進程使用記憶體<總物理記憶體

不健康:帆軟應用所需最大記憶體+其他進程使用記憶體≥總物理記憶體

修改建議:建議帆軟工程不要與其他應用服務共用伺服器,否則會有當機風險

3.7 環境檢查

環境檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準
0701vm.max_map_count

健康:vm.max_map_count≥262144

不健康:vm.max_map_count<262144

修改建議:建議配置 vm.max_map_count 參數為 262144

0702最大檔案開啟數

1)FineReport:

健康:open_files≥65536

不健康:open_files<65536

修改建議:建議open_files參數配置不低於65536

2)FineBI:

健康:open_files≥131070

不健康:open_files<131070

修改建議:建議open_files參數配置不低於131070

0703overcommit_memory

健康:overcommit_memory=0

不健康:overcommit_memory≠0

修改建議:建議vm.overcommit_memory參數配置為0

0704overcommit_ratio

健康:overcommit_ratio=50

不健康:overcommit_ratio≠50

修改建議:建議vm.overcommit_ratio參數配置為50

0705gblic記憶體公佈相關配置

檢查是否配置了export MALLOC_ARENA_MAX參數

健康:export MALLOC_ARENA_MAX=1

不健康:未配置/配置其他值

修改建議:建議配置export MALLOC_ARENA_MAX=1

0701 vm.max_map_count

1)參數簡介:

vm.max_map_count是一個Linux系統核心參數,用於控制在一個進程中允許mmap映射記憶體區域的最大數量。

如果該參數的值太小,那麼在使用一些應用程式時,可能會出現記憶體映射錯誤。 

2)建議配置:

建議配置 vm.max_map_count 參數為 262144

3)修改方式:

  • /etc/sysctl.conf檔案中新增/修改參數值

vm.max_map_count=262144

  • 運作以下命令使更改生效

sysctl -p

0702 最大檔案開啟數

1)參數簡介:

open_files是指一個進程可以同時開啟的檔案描述符的最大數量。

檔案描述符是Unix系統中用於存取檔案(包括管道、套接字和其他檔案操作)的唯一識別符號。

2)建議配置:

建議FineReport工程的open_files參數配置不低於65536

建議FineBI工程的open_files參數配置不低於131070

3)修改方式:

  • 修改參數配置

開啟Linux的軟硬體限制檔案/etc/security/limits.conf,在檔案尾部新增如下程式碼: 

* soft nofile 65536

* hard nofile 65536

上述命令中,hard表示系統的硬限制,soft表示使用者的軟限制。

  • 重啟工程並重新登入

配置完成後,終端使用者重新登入,並重啟Tomcat工程,配置方可生效。

可使用ulimit -n命令,根據回傳值確認是否修改成功。

0703 overcommit_memory

1)參數簡介:

vm.overcommit_memory 是一個Linux核心參數,它控制了系統是否允許進程分配超過可用記憶體的記憶體量。

當參數值為0時,核心將檢查是否有足夠的可用記憶體來滿足提交的記憶體需求。如果有足夠的閒置記憶體,則允許進程繼續分配記憶體;否則分配請求將失敗並傳回錯誤。

2)建議配置:

建議vm.overcommit_memory參數配置為0

3)修改方式:

  • /etc/sysctl.conf檔案中新增/修改參數值

vm.overcommit_memory=0

  • 運作以下命令使更改生效

sysctl -p

0704 overcommit_ratio

1)參數簡介:

vm.overcommit_ratio 是一個 Linux 核心參數,它指定了系統 VMware 超大頁管理器(Memory Ballooning)和 Swap 空間使用的比例。

當參數值為50時,核心使用適當的 Swap 兩倍大小作為另一個備用空間,用於模擬物理記憶體。

2)建議配置:

建議vm.overcommit_ratio參數配置為50

3)修改方式:

  • /etc/sysctl.conf檔案中新增/修改參數值

vm.overcommit_ratio=50

  • 運作以下命令使更改生效

sysctl -p

0705 gblic記憶體公佈相關配置

1)參數簡介:

為了防止glibc中的記憶體泄漏,可以透過在環境變數中設定MALLOC_ARENA_MAX來限制glibc在分配和釋放動態記憶體時使用的堆空間數量。

2)建議配置:

建議配置export MALLOC_ARENA_MAX=1

3)修改方式:

  • 關閉Tomcat伺服器。

  • 進入%Tomcat_HOME%/bin目錄,開啟 startup.sh 檔案。

  • 在檔案開頭新增/修改export MALLOC_ARENA_MAX=1

  • 儲存對 startup.sh 檔案的修改並關閉。

  • 在終端中運作 startup.sh 檔案,重啟Tomcat並應用新的環境變數設定。

3.8 Java 虛擬機檢查

Java虛擬機的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準
0801堆外NIO記憶體

健康:

FR:堆外NIO記憶體為2GB

BI:外NIO記憶體為4GB

不健康:堆外NIO記憶體配置了且不是2GB

修改建議:建議配置JVM NIO佔用堆外記憶體2GB

0802
堆外fineIO讀記憶體

健康:堆外fineIO讀記憶體為2GB或未配置該參數

不健康:堆外fineIO讀記憶體配置了且不是2GB

修改建議:建議JVM fineIO讀記憶體使用堆外記憶體設定為2G

0803堆外fineIO寫記憶體

健康:堆外fineIO寫記憶體為1GB或未配置該參數

不健康:堆外fineIO寫記憶體配置了且不是1GB

修改建議:建議JVM fineIO寫記憶體使用堆外記憶體設定為1G

0804垃圾回收器類型

健康:垃圾回收器類型為 ParallelScavenge

不健康:垃圾回收器類型不是 ParallelScavenge

修改建議:建議JVM使用垃圾回收器類型為ParallelScavenge

0805DisableExplicitGC參數

健康:不配置DisableExplicitGC參數

不健康:配置了DisableExplicitGC參數

修改建議:建議取消DisableExplicitGC參數配置

0806JDK版本

健康:高於帆軟內建JAVA版本(一般在1.8.202及以上版本)
不健康:低於帆軟內建JAVA版本

修改建議:建議使用1.8.202及以上版本JDK

0807headless模式

健康:已配置-Djava.awt.headless=true

不健康:未配置-Djava.awt.headless=true

修改建議:建議配置 -Djava.awt.headless=true 以啟動 headless 模式

0808dump匯出

健康:已配置HeapDumpOnOutOfMemoryError及HeapDumpPath

不健康:未配置HeapDumpOnOutOfMemoryError及HeapDumpPath

修改建議:建議配置HeapDumpOnOutOfMemoryError及HeapDumpPath以保證正常匯出dump

0809BytecodeRecompilationCutoff配置

健康:-XX:PerBytecodeRecompilationCutoff=-1

不健康:-XX:PerBytecodeRecompilationCutoff≠-1

修改建議:建議配置-XX:PerBytecodeRecompilationCutoff=-1

0810PerMethodRecompilationCutoff配置

健康:-XX:PerMethodRecompilationCutoff=-1

不健康:-XX:PerMethodRecompilationCutoff≠-1

修改建議:建議配置-XX:PerMethodRecompilationCutoff=-1

0811安裝包部署

注:FineBI特有檢查項

健康:非exe方式部署
不健康:exe方式部署
修改建議:建議使用web容器方式部署。詳情請參見:Tomcat伺服器部署

0813codecache配置

FR:

健康:-XX:ReservedCodeCacheSize≥512m

不健康:-XX:ReservedCodeCacheSize<512m

修改建議:建議配置-XX:ReservedCodeCacheSize=512m

BI:

健康:-XX:ReservedCodeCacheSize≥1024m

不健康:-XX:ReservedCodeCacheSize<1024m

修改建議:建議配置-XX:ReservedCodeCacheSize=1024m

0814語言配置-Duser.country

健康:-Duser.country=TW

不健康:-Duser.country≠TW

修改建議:建議配置-Duser.country=TW

0815語言配置-Duser.language

健康:-Duser.language=tw

不健康:-Duser.language≠tw

修改建議:建議配置-Duser.language=tw
0816zip相關配置-Dsun.zip.disableMemoryMapping

健康:-Dsun.zip.disableMemoryMapping=true

不健康:-Dsun.zip.disableMemoryMapping≠true

修改建議:建議配置-Dsun.zip.disableMemoryMapping=true
0817堆內老年代與新生代大小比例

健康:-XX:NewRatio=2

不健康:-XX:NewRatio≠2

修改建議:建議堆內老年代與新生代大小比例為 2,即-XX:NewRatio=2

0818棧空間

健康:-Xss≤1024

不健康:-Xss>1024

修改建議:建議單執行緒使用棧空間不超過1024KB,即 -Xss 的值不超過 1024
0819debug模式

健康:未配置參數 -agentlib:jdwp 和 -Xrunjdwp

不健康:配置了參數 -agentlib:jdwp 和 -Xrunjdwp

修改建議:建議取消debug模式,刪除兩個參數 -agentlib:jdwp 和 -Xrunjdwp
0820堆內記憶體

健康:根據系統實際情況計算出一個符合健康標準的堆內記憶體要求範圍,當前堆內記憶體在計算出的符合要求的堆內記憶體範圍內

不健康:當前堆內記憶體不在計算出的符合要求的堆內記憶體範圍內

修改建議:為保證應用回应效能,建議配置為XGB

FineBI額外提醒:如果需要使用更大記憶體,在保證物理機記憶體充足的情況下,可以配置為48G~64G,但可能帶來一定的回应效能下降

0821xms配置

健康:Xms=Xmx

不健康:Xms≠Xmx

修改建議:建議配置Xms=Xmx

0822jdk位置僅匯出資訊
0823元資料空間配置

健康:-XX:MaxMetaspaceSize≥2G

不健康:-XX:MaxMetaspaceSize<2G,或未配置

修改建議:建議最大元資料空間設定為2g

0801 堆外NIO記憶體

1)建議值

  • FR:建議配置JVM NIO佔用堆外記憶體2GB

  • BI:建議配置JVM NIO佔用堆外記憶體4GB

2)修改方式

NIO由-XX:MaxDirectMemorySize這個參數控制。請根據自身工程部署情況選擇修改方法。本節展示 Tomcat 環境下設定 NIO記憶體 的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:MaxDirectMemorySize=2g

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:MaxDirectMemorySize=2g"

0802 堆外fineIO讀記憶體

1)建議值

建議JVM fineIO讀記憶體使用堆外記憶體設定為2G。

2)修改方式

fineIO 讀記憶體由-Dfineio.read_mem_limit這個參數來設定。請根據自身工程部署情況選擇修改方法。本節展示 Tomcat 環境下設定 fineIO讀記憶體 的步驟。

讀記憶體的預設單位為 GB,支援小數,但不支援使用 g、m 等。建議讀記憶體為寫記憶體的2-3倍,快取大小建議與寫記憶體大小一致。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Dfineio.read_mem_limit=2

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Dfineio.read_mem_limit=2"

0803 堆外fineIO寫記憶體

1)建議值

建議JVM fineIO寫記憶體使用堆外記憶體設定為1G。

2)修改方式

fineIO 寫記憶體由-Dfineio.write_mem_limit這個參數來設定。請根據自身工程部署情況選擇修改方法。本節展示 Tomcat 環境下設定 fineIO寫記憶體 的步驟。

寫記憶體的預設單位為 GB,支援小數,但不支援使用 g、m 等。建議讀記憶體為寫記憶體的2-3倍,快取大小建議與寫記憶體大小一致。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Dfineio.write_mem_limit=1

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Dfineio.write_mem_limit=1"

0804 垃圾回收器類型

1)建議值

建議 JVM 使用垃圾回收器類型為 ParallelScavenge

2)修改方式

本節以工程部署在 Tomcat 上為例, 介紹設定垃圾收集器為Parallel Scavenge(並行收集器)的方法。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:+UseParallelGC

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:+UseParallelGC"

0805 DisableExplicitGC 參數

1)建議值

建議不對 DisableExplicitGC 參數進行配置,此項配置會導致 System.gc()被禁用,影響系統穩定性。

2)修改方式

-XX:+DisableExplicitGC參數的作用是禁用 System.gc()。System.gc() 是一種保護機制,例如堆外記憶體滿時清理它的堆內引用物件。使用者需要根據實際情況選擇是否使用該參數,建議刪除該參數。

本節展示 Tomcat 環境下刪除 DisableExplicitGC 參數的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為catalina.batsetenv.bat的檔案。

在檔案中尋找是否存在XX:+DisableExplicitGC,若存在,刪除相關配置,修改完成後重啟工程。

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為catalina.shsetenv.sh的檔案。

在檔案中尋找是否存在XX:+DisableExplicitGC,若存在,刪除相關配置,修改完成後重啟工程。

0806 JDK版本

1)建議值

建議使用「JDK8」中 1.8.0_181 及以上版本

2)檢查方式

cmd 命令行進入%Tomcat_home%\bin路徑下,輸入version,即可查看 JDK 版本。如下圖所示:

0807 headless 模式

1)建議值

建議配置 -Djava.awt.headless=true 以啟動 headless 模式

2)修改方式

headless 模式是系統的一種工作模式,如果系統屬性 java.awt.headless被設定true,那麼headless工具包就會被使用。

本節展示 Tomcat 環境下啟動 headless 模式的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Djava.awt.headless=true

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"

0808 dump匯出

1)建議值

建議配置HeapDumpOnOutOfMemoryError 及 HeapDumpPath以保證正常匯出dump

2)修改方式

1)-XX:+HeapDumpOnOutOfMemoryError參數表示當JVM發生OOM時,自動生成DUMP檔案。

2)-XX:HeapDumpPath=${目錄}參數表示生成dump檔案的路徑,也可以指定檔案名稱,例如:-XX:HeapDumpPath=${目錄}/java_heapdump.hprof。

如果不指定檔案名稱,預設為:java_<pid>_<date>_<time>_heapDump.hprof。

本節展示 Tomcat 環境下設定dump匯出的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=${目錄}

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=${目錄}"

0809 BytecodeRecompilationCutoff配置

0810 PerMethodRecompilationCutoff配置

1)建議值

建議recompilationCutoff相關參數配置值為-1

2)修改方式

沒有配置 RecompilationCutoff 參數/配置的 RecompilationCutoff 參數太小,可能會導致 spider 引擎資料更新緩慢。

本節展示 Tomcat 環境下設定 recompilationCutoff 參數的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:PerMethodRecompilationCutoff=-1 -XX:PerBytecodeRecompilationCutoff=-1

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:PerMethodRecompilationCutoff=-1 -XX:PerBytecodeRecompilationCutoff=-1"

0811 安裝包部署

注:僅FineBI系統檢查該項

建議使用web容器方式部署。詳情請參見:Tomcat伺服器部署

0813 codecache配置

1)建議值

FR:建議配置-XX:ReservedCodeCacheSize=512m

BI:建議配置-XX:ReservedCodeCacheSize=1024m

2)修改方式

ReservedCodeCacheSize參數是調整記憶體大小的一個設定參數,值的大小設定直接影響到Code Cache的大小。

如果Code Cache的空間不足,可能會導致JVM無法正常運作,導致效能持續降低。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:ReservedCodeCacheSize=250m

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:ReservedCodeCacheSize=250m"

0814 語言配置-Duser.country

0815 語言配置-Duser.language

1)建議值

建議配置-Duser.country=TW、-Duser.language=tw

2)修改方式

為了防止中文出現亂碼現象,要配置好Tomcat 的語言編碼。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Duser.country=TW -Duser.language=tw

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Duser.country=TW -Duser.language=tw"

0816 zip相關配置-Dsun.zip.disableMemoryMapping

1)建議值

建議配置-Dsun.zip.disableMemoryMapping=true

2)修改方式

配置該參數,可預防 jvm crash

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Dsun.zip.disableMemoryMapping=true

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Dsun.zip.disableMemoryMapping=true"

0817 堆內老年代與新生代大小比例

1)建議值

建議 JVM 老年代與新生代大小比例設定為 2

2)修改方式

堆內老年代與新生代大小比例建議為 2(-XX:NewRatio=2,JVM的預設值);NewRatio 大小正常生效需要使用者不限制新生代大小。

在設定-Xmx、-Xms參數的位置,新增 NewRatio 的值即可,本節展示 Tomcat 環境下設定 NewRatio 的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Xms512M -Xmx1024M -XX:NewRatio=2

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx8196M -XX:NewRatio=2"

0818 棧空間

1)建議值

建議單執行緒使用棧空間不超過1024KB

2)修改方式

建議單執行緒使用棧空間不超過1024KB,即 -Xss 的值不超過 1024 。

在設定-Xmx、-Xms參數的位置,新增 -Xss 的值即可,本節展示 Tomcat 環境下設定 -Xss 的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下行來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -Xms512M -Xmx1024M -Xss1024K

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下行來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx8196M -Xss1024K"

0819 debug模式

1)建議值

建議取消debug模式

2)修改方式

debug模式由兩個參數控制:-agentlib:jdwp 和 -Xrunjdwp,刪除這兩個參數即可取消debug模式

  • Windows:%Tomcat%/bin目錄下的catalina.batsetenv.bat檔案中刪除-agentlib:jdwp 和 -Xrunjdwp參數,配置完成後重啟工程。

  • Linux:%Tomcat%/bin目錄下的catalina.shsetenv.sh檔案中刪除-agentlib:jdwp 和 -Xrunjdwp參數,配置完成後重啟工程。

0820 堆內記憶體

0821 xms配置

參數介紹伺服器類型參考文檔

-Xmx 參數:最大堆內記憶體

-Xms 參數:初始化記憶體大小

注1:Xmx/Xms 與數字之間不要有空格

注2:建議配置Xms=Xmx,以防止記憶體擴容失敗情況

Tomcat 伺服器
Tomcat 伺服器記憶體修改
WebLogic 伺服器WebLogic 伺服器記憶體修改
WebSphere 伺服器WebSphere 伺服器
JBoss 伺服器JBoss 伺服器
Resin 伺服器Resin 伺服器記憶體修改

0823 元資料空間配置

1)參數簡介:

元資料空間(Metaspace)是 Java 虛擬機(JVM)用於儲存類元資料的區域。在 JVM 中,元資料包括類的結構資訊、方法資訊、欄位資訊等。

元資料空間配置 MaxMetaspaceSize 用於設定元資料空間的最大大小。當元資料空間超過這個限制時,JVM 會發生垃圾回收以釋放不再使用的元資料。

2)建議配置:

建議配置 MaxMetaspaceSize 參數為 2G

3)修改方式:

本節展示 Tomcat 環境下設定 MaxMetaspaceSize 的步驟。

  • Windows:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.bat的檔案。如果檔案不存在,可以建立一個新的setenv.bat檔案。在檔案中新增以下來設定,配置完成後重啟工程。

set JAVA_OPTS=%JAVA_OPTS% -XX:MaxMetaspaceSize=2G

  • Linux:進入%Tomcat_HOME%\bin目錄。尋找名為setenv.sh的檔案。如果檔案不存在,可以建立一個新的setenv.sh檔案。在檔案中新增以下來設定,配置完成後重啟工程。

JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=2G"

3.9 服務聯通性檢查

服務聯通性檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否為宕

機檢查項

是否支援

快速修復

健康標準
0901Redis聯通檢查工程與Redis組件之間是否聯通
0902檔案伺服器聯通檢查工程與檔案伺服器組件之間是否聯通
0903FineDB聯通檢查工程與FineDB資料庫之間是否聯通

3.10 業務檢查

業務檢查的檢查項包括:

巡檢項

編號

檢查項

叢集節點是

否分別檢查

是否支援

快速修復

健康標準
1001finedb

檢查finedb資料庫的類型

健康:finedb遷移到了外接資料庫

不健康:finedb使用內建HSQL資料庫

修改建議:建議將finedb遷移至更穩定的外接資料庫中。


1002日誌級別

檢查「管理系統>智慧維運>平台日誌>全局設定」中的「系統日誌級別」

健康:日誌級別高於debug級別

不健康:日誌級別為debug級別

修改建議:建議設定日誌級別為 info。


1003日誌清理

檢查「管理系統>智慧維運>平台日誌>全局設定」中「自動清理」週期

健康:配置了自動清理,自動清理超過三個月的日誌

不健康:未配置自動清理

修改建議:建議開啟平台日誌自動清理並配置清理週期小於六個月。

1004自動備份磁碟佔用限制

檢查「管理系統>智慧維運>備份還原>全局設定」中設定的自動備份可佔用磁碟大小

健康:各模組自動備份可佔磁碟不超過1024M

不健康:各模組自動備份可佔磁碟超過1024M

修改建議:建議各模組自動備份可佔磁碟不超過1024M。

1005自動備份保留數量限制

檢查「管理系統>智慧維運>備份還原>全局設定」中設定的自動備份保留數量

健康:各模組成功/失敗自動備份可分別保留不超過5份

不健康:各模組成功/失敗自動備份可分別保留超過5份

修改建議:建議自動備份預設儲存不超過5份。

1006排程管理任務清理配置

檢查排程管理任務>調度物件中,檔案處理方式的設定

健康:僅保留最近一次或任務結束即清理

不健康:其他檔案處理方式

修改建議:建議排程管理調度物件檔案處理設定為「僅保留最近一次」。

1007記憶體資料數限制

注:僅FineBI系統檢查該項

檢查「管理系統>系統管理>標準>BI參數」 中的「資料存取量」參數

健康:不超過100w

不健康:超過100w

修改建議:建議資料存取量不超過100w。

1008快速分析儲存格數限制

注:僅FineBI系統檢查該項

檢查系統的spider_fast_compute_limit_unit參數值

健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_unit參數值不超過10000000

不健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_unit參數值超過10000000

1009快速分析記憶體大小限制

注:僅FineBI系統檢查該項

檢查系統的spider_fast_compute_limit_memory參數值

健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_memory參數值不超過500000000

不健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_memory參數值超過500000000

1010快速分析更新儲存格數限制

注:僅FineBI系統檢查該項

檢查系統的spider_update_fast_compute_limit_cell參數值

健康:DistributedOptimizationConfig.spiderConfig.spider_update_fast_compute_limit_cell參數值不超過100000000

不健康:DistributedOptimizationConfig.spiderConfig.spider_update_fast_compute_limit_cell參數值超過100000000

1011快速分析行數限制

注:僅FineBI系統檢查該項

檢查系統的spider_fast_compute_limit_row參數值

健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_row參數值不超過10000000

不健康:DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_row參數值超過10000000

1012spark計算結果記憶體大小限制

注:僅FineBI系統檢查該項

檢查系統的spiderConfig.spark_driver_maxResultSize參數值

健康:DistributedOptimizationConfig.spiderConfig.spark_driver_maxResultSize參數值不超過10000000

不健康:DistributedOptimizationConfig.spiderConfig.spark_driver_maxResultSize參數值超過10000000

1014外接庫的資料庫編碼/字元集僅匯出資訊

包括finedb外接資料庫的資料庫編碼/字元集

外接資料庫配置步驟請參見:配置外接資料庫

1015叢集參數配置

僅匯出資訊

檢查「管理系統>智慧維運>叢集配置>參數配置」中的內部轉發參數

叢集參數配置請參見:叢集參數配置

1016更新資源無限制時間段配置

注:僅FineBI系統檢查該項

僅匯出資訊

檢查「管理系統>系統管理>標準>抽取參數」 中的「更新高效能時間區間」參數

BI參數配置請參見:BI/Spider參數

1017二級快取開啟情況

僅匯出資訊

檢查系統是否配置二級快取

二級快取開啟及配置請參見:指定ehcache快取路徑

1018sql執行時長限制

檢查「管理系統>智慧維運>負載管理>範本限制>通用限制」中的sql執行時長限制

健康:開啟了sql執行時長限制

不健康:未開啟sql執行時長限制

修改建議:建議開啟記憶體管理-範本限制-通用限制-sql執行時長限制功能。

1019單範本儲存格數限制

檢查「管理系統>智慧維運>負載管理>範本限制>通用限制」中的單範本儲存格限制

健康:開啟了單範本儲存格限制

不健康:未開啟單範本儲存格限制

修改建議:建議開啟系統管理-智慧維運-記憶體管理-範本限制-通用限制-單範本儲存格限制功能。

1020匯入excel儲存格數限制

檢查「管理系統>智慧維運>負載管理>範本限制>通用限制」中的匯入Excel儲存格限制

健康:開啟了匯入Excel儲存格限制

不健康:未開啟匯入Excel儲存格限制

修改建議:建議開啟系統管理-智慧維運-記憶體管理-範本限制-通用限制-匯入excel儲存格限制功能。

1022單資料集數限制

檢查「管理系統>智慧維運>負載管理>範本限制>通用限制」中的單資料集數限制

健康:開啟了單資料集數限制

不健康:未開啟單資料集數限制

修改建議:建議開啟系統管理-智慧維運-記憶體管理-範本限制-通用限制- 單資料集數限制功能。

1023負載預警開啟

僅匯出資訊

檢查「管理系統>智慧維運>負載管理>負載監視」中是否開啟「智慧預警」

詳情請參見:負載管理

1024髒資料檢查

注:僅FineBI系統檢查該項

檢查是否存在髒資料

健康:0條髒資料

不健康:x條髒資料

修改方法:有X條髒資料,建議在「BI工具」-「檢查」-「髒資料」中進行排查清理

1025是否開啟雲端健檢分析

僅匯出資訊

檢查系統是否開啟雲端健檢分析

雲端健檢分析功能請參見:雲端健檢分析

1026密碼強度限制檢查

檢查「管理系統>系統管理>登入」中是否開啟「密碼強度限制」

健康:開啟了密碼強度限制

不健康:未開啟密碼強度限制

修改建議:未開啟密碼強度限制,密碼強度較低可能容易被攻擊,導致安全問題,建議在[管理系統]-[系統管理]-[登入]中開啟密碼強度限制

1001 finedb

管理者登入帆軟應用,點選「管理系統>系統管理>標準>外接資料庫」,將finedb遷移至更穩定的外接資料庫中。

外接資料庫遷移的具體操作步驟請參見:配置外接資料庫 

1002 日誌級別

管理者登入帆軟應用,點選「管理系統>智慧維運>平台日誌>全局設定」。

在「系統日誌級別」中設定日誌級別為 info,點選「儲存」即可。

日誌級別設定請參見:日誌簡介

1003 日誌清理

管理者登入帆軟應用,點選「管理系統>智慧維運>平台日誌>全局設定」。

在「操作日誌清理」中開啟「自動清理」並配置清理週期小於六個月。

操作日誌自動清理設定請參見:日誌簡介

1004 自動備份磁碟佔用限制

管理者登入帆軟應用,點選「管理系統>智慧維運>備份還原>全局設定」。

在「自動備份」中,建議各模組自動備份可佔磁碟不超過1024M。備份還原設定請參見:备份还原

1005 自動備份保留數量限制

管理者登入帆軟應用,點選「管理系統>智慧維運>備份還原>全局設定」。

在「自動備份」中,建議自動備份預設儲存不超過5份。備份還原設定請參見:备份还原

1006 排程管理任務清理配置

管理者登入帆軟應用,在「排程管理」中,對「排程管理任務>調度物件」的檔案處理方式設定為「僅保留最近一次」。

排程管理任務設定請參見:排程管理任務設定

1007 記憶體資料數限制

注:僅FineBI系統檢查該項

管理者登入帆軟應用,點選「管理系統>系統管理>標準>BI參數」 。

建議「資料存取量」參數值不超過100w。BI參數配置請參見:BI/Spider參數

1008 快速分析儲存格數限制

注:僅FineBI系統檢查該項

「快速分析儲存格數限制」的配置資訊記錄在 FineDB 的 fine_conf_entity 表中。

請透過「fine_conf_entity視覺化配置插件」,配置DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_unit參數值不超過10000000

點選「儲存」,並重啟FineBI工程,配置生效。

1009 快速分析記憶體大小限制

注:僅FineBI系統檢查該項

「快速分析記憶體大小限制」的配置資訊記錄在 FineDB 的 fine_conf_entity 表中。

請透過「fine_conf_entity視覺化配置插件」,配置DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_memory參數值不超過500000000

點選「儲存」,並重啟FineBI工程,配置生效。

1010 快速分析更新儲存格數限制

注:僅FineBI系統檢查該項

「快速分析更新儲存格數限制」的配置資訊記錄在 FineDB 的 fine_conf_entity 表中。

請透過「fine_conf_entity視覺化配置插件」,配置DistributedOptimizationConfig.spiderConfig.spider_update_fast_compute_limit_cell參數值不超過100000000

點選「儲存」,並重啟FineBI工程,配置生效。

1011 快速分析數限制

注:僅FineBI系統檢查該項

「快速分析記憶體大小限制」的配置資訊記錄在 FineDB 的 fine_conf_entity 表中。

請透過「fine_conf_entity視覺化配置插件」,配置DistributedOptimizationConfig.spiderConfig.spider_fast_compute_limit_row參數值不超過10000000

點選「儲存」,並重啟FineBI工程,配置生效。

1012 spark計算結果記憶體大小限制

注:僅FineBI系統檢查該項

「spark計算結果記憶體大小限制」的配置資訊記錄在 FineDB 的 fine_conf_entity 表中。

請透過「fine_conf_entity視覺化配置插件」,配置DistributedOptimizationConfig.spiderConfig.spark_driver_maxResultSize參數值不超過10000000

點選「儲存」,並重啟FineBI工程,配置生效。

1018 sql執行時長限制

管理者登入帆軟應用,點選「管理系統>智慧維運>負載管理>範本限制>通用限制」。

建議開啟sql執行時長限制功能。範本限制請參見:範本限制

1019 單範本儲存格數限制

管理者登入帆軟應用,點選「管理系統>智慧維運>負載管理>範本限制>通用限制」。

建議開啟單範本儲存格限制功能。範本限制請參見:範本限制

1020 匯入excel儲存格數限制

管理者登入帆軟應用,點選「管理系統>智慧維運>負載管理>範本限制>通用限制」。

建議開啟匯入excel儲存格限制功能。範本限制請參見:範本限制

1022 單資料集列數限制

管理者登入帆軟應用,點選「管理系統>智慧維運>負載管理>範本限制>通用限制」。

建議開啟單資料集列數限制功能。範本限制請參見:範本限制

1024 髒資料檢查

注:僅FineBI系統檢查該項

管理者登入帆軟應用,點選「BI工具>檢查>髒資料」。

檢查系統中的髒資料,並進行排查清理。

1026 密碼強度限制檢查

管理者登入帆軟應用,點選「管理系統>系統管理>登入」 。

在「密碼策略設定」中,建議開啟「密碼強度限制」,並自訂設定密碼強度。

詳情請參見:密碼策略設定

4. 基本維護

在應用日常的正常運作程式中,維護交易相對簡單,在有需要的時候能夠查看應用的運作日誌,或查看應用的各項監視指標是否存在異常即可

4.1 應用啟停

應用日常的維護工作中,經常會需要對應用進行啟停重啟等操作。

  • 單機環境依賴較少,無嚴格順序需求。

  • 叢集環境相關組件較多,為儘量降低應用使用的風險,請儘量按以下順序進行

4.1.1 啟動順序

由於應用的正常運作對組件有依賴,因此需要先啟動相關組件,再啟動應用。順序為:

1)負載均衡組件(Nginx)

2)狀態伺服器組件(Redis)

3)檔案伺服器組件(FTP)

4)外接資料庫組件(Mysql)

5)帆軟應用(叢集依次啟動各節點即可)

各組件和應用可以配置開機自啟動,便於在重啟伺服器後自動啟動恢復服務:

4.1.2 停止順序

對於應用的停止順序沒有嚴格要求,但由於組件的關閉會直接導致應用不可用,因此建議先關閉帆軟應用(kill命令避免進程殘留),再關閉各個組件

4.2 日誌查看

1)內容說明

帆軟應用通常涉及以下幾類日誌:

日誌類型
日誌儲存日誌內容
系統日誌

預設儲存在%FR_HOME%\logs\fanruan.log

設計器端允許修改日誌儲存位置

伺服器端不允許修改日誌儲存位置

記錄系統運作程式中的一些資訊
操作日誌

儲存在%FR_HOME%\webapps\webroot\logs\cubes

允許修改日誌儲存位置

FineReport11.0.4/FineBI5.1.22及之後版本支援實時備份

記錄普通使用者和管理者的使用動作
補充日誌

儲存在%FR_HOME%\bin\error.txt

不允許修改日誌儲存位置

記錄設計器預期外的報錯
gc.log預設儲存在%FR_HOME%/logs/gclogs用來分析伺服器gc(垃圾回收)的情況
catalina.out

Tomcat部署情況下存在

預設儲存在%FR_HOME%/logs

tomcat及應用運作日誌
catalina.log

Tomcat部署情況下存在

預設儲存在%FR_HOME%/logs

tomcat自身運作日誌
access.log

Tomcat部署情況下存在

預設儲存在%FR_HOME%/logs

tomcat及應用存取日誌,記錄存取請求詳情

2)如何透過帆軟功能快捷維運

帆軟提供下載日誌功能,管理者登入數據決策系統,點選「管理系統>智慧維運>平台日誌」,其中「下載日誌」Tab提供相應功能。

透過此功能可實現下載指定時間的指定日誌,並支援查看日誌儲存位置。

4.3 監視指標

1)指標說明

日常運作中,維運人員主要需要關注以下各指標是否存在異常:

指標
監視內容
記憶體透過命令列或視覺化查看伺服器的記憶體使用情況,是否出現記憶體佔用過高(80%及以上)
CPU透過命令或視覺化查看伺服器的CPU使用情況,是否出現CPU佔用過高(80%及以上)
磁碟空間透過命令或視覺化查看帆軟應用所在磁碟目錄的磁碟空餘情況,是否磁碟剩餘空間過小(不足10GB)

2)如何透過帆軟功能快捷維運

帆軟提供記憶體管理頁面,點選「管理系統>智慧維運>負載管理」,其中「負載監視」Tab提供相應功能(11.0.3及之前版本叫「記憶體管理」及「記憶體監視」)

透過此功能可實現視覺化查看帆軟應用而非整個伺服器的近期「負載曲線」、「記憶體曲線」和「CPU曲線」,快速瞭解帆軟應用運作及壓力狀況。

帆軟提供磁碟維運功能,點選「管理系統>智慧維運>磁碟維運」,其中「磁碟使用情況分析」Tab提供相應功能(11.0.3及之前版本暫不支援)

透過此功能可實現視覺化查看帆軟應用重點相關磁碟目錄的使用情況,即時避免出現磁碟不足。

5. 異常維護

5.1 異常警告

如需對帆軟應用的異常即時感知,需實現對帆軟應用各項指標的監視警報,實現的方案有以下幾點建議:

1)如使用的是雲伺服器(如阿里雲、華為雲等),可使用雲服務廠商提供的監視類雲服務,對伺服器的資源異常進行監視

2)自行開發實現對於帆軟應用的監視,如基於promthues組件等

3)針對系統負載過高的場景,帆軟提供智慧預警功能,檢查到負載狀態過高時將提醒維運人員。

管理者登入數據決策系統,點選「管理系統>智慧維運>負載管理」,其中「負載監視」內可進行智慧預警配置。

4)針對系統出現當機的場景,帆軟提供當機通知功能,檢查到系統當機時將提醒維運人員。

管理者登入數據決策系統,點選「管理系統>智慧維運>當機處理」,其中「當機處理」內可進行當機通知配置。

5)針對系統磁碟空間不足的場景,帆軟提供磁碟預警功能,檢查到應用相關磁碟空間不足時,將提醒維運人員。

管理者登入數據決策系統,點選「管理系統>智慧維運>磁碟維運」,其中「磁碟預警設定」tab頁內可進行磁碟預警配置。

5.2 當機處理

當應用出現異常時,當機可能會隨之發生,此時為了業務的可用,需要快速恢復應用,同時應儘量儲存當機時刻的日誌資訊,方便進行當機原因定位及風險排除,避免再次出現類似異常。對於當機,應進行以下維運動作:

1)保證系統環境有jdk工具,當應用發生當機時,即時匯出dump檔案

  1. 進入到對應的jdk的bin目錄

  2. 以linux+tomcat為例,查看pid的方式為使用ps -ef|grep tomcat管道過濾命令,查看對應的伺服器進行pid。

  3. 使用命令jmap -dump:format=b,file=檔案名稱 [pid]來生成dump。

2)自行開發對帆軟應用是否存活的監視,並在發現其不可用時告知到維運人員,並透過自動化腳本重啟應用,或人工進行監視及應用重啟

重啟或停止應用時需確定完全關閉工程相關進程,詳情請參見:關閉或重啟FineReport工程

3)在當機發生後自行透過dump分析當機原因或聯絡技術支援協助定位,並儘快排除當機風險。

4)針對當機場景,帆軟提供應用存活監視功能,管理者登入數據決策系統,點選「管理系統>智慧維運>當機處理」。

透過「當機處理」可以實現當機訊息通知,當機日誌自動匯出,及當機後自動重啟恢復。

5)針對當機定位,帆軟提供當機自助處理功能,管理者登入數據決策系統,點選「管理系統>智慧維運>當機處理」。

透過「當機自助精靈」可以對大多數的當機原因給出分析結果並提供改進建議。

6. 備份與升級

6.1 備份還原

帆軟系統需要定期進行備份,以確定在使用者誤操作、版本回退等場景下能夠即時恢復,備份及還原方式如下:

1)自行備份:

定期將完整工程copy並壓縮後,放在磁碟空間充足的目錄或其他伺服器上,並定期備份工程的外接配置資料庫

2)透過帆軟功能進行備份還原:

  • 帆軟平台提供備份還原的功能,支援對「平台配置」、「報表範本」、「BI範本」、「JAR 包」、「插件」進行備份還原。

  • 預設備份路徑為../backup,備份檔案儲存在工程的%FR_HOME%/webapps/webroot/backup資料夾下,支援修改為其他備份路徑,在「全局設定」中進行配置

  • 備份方式分為自動及手動,手動備份即手動建立一份備份,自動備份則按照設定的自動備份「備份頻率」、「份數上限」、「備份容量」、「備份失敗提醒」進行定期自動備份

  • 備份內容如下:

備份內容
簡介備份生成的資料夾
平台配置備份系統的平台設定項config
報表範本備份%FineBI%\webapps\webroot\WEB-INF\reportlets資料夾中的範本reportlets
BI 範本

備份%FineBI%\webapps\webroot\WEB-INF\dashboards資料夾中的範本

dashboards
JAR 包備份%FineBI%\webapps\webroot\WEB-INF\lib資料夾中的 JAR 包jar
插件備份系統安裝的插件
plugins
  • 選擇手動備份/自動備份下備份的檔案,點選「還原按鈕」,「確認」後即可進行還原,還原後重啟伺服器即可生效

  • 不同內容還原生效的方式略有差別,詳情如下表所示:

還原內容
描述
平台配置

重啟工程後,還原生效

注:平台配置處,不支援 2019-11-08 到 2020-07-17 的

報表範本

無需重啟,立即生效

  • 當前工程下沒有、備份中有的範本會新增

  • 當前工程下有、備份中有的範本會改寫更新

  • 當前工程下有、備份中沒有的範本會保留

BI範本

無需重啟,立即生效。但需同時還原「平台配置」,方可恢復儀表板

還原後,當前工程下的所有儀表板都會被刪除,更換為備份的儀表板

JAR 包重啟工程後,還原生效
插件無需重啟,立即生效

6.2 更新升級

帆軟產品會持續不斷的迭代更新,可能增加新的功能或針對歷史版本存在的問題進行修復,為了能獲得更好的功能體驗,客戶往往也要跟隨更新版本,本章僅介紹小版本升級方式,大版本升級請聯絡帆軟技術人員進行協助,具體更新升級方式如下:

1)決策平台管理升級(不適用於BI):

開啟數據決策系統,在「管理系統>智慧維運>備份還原>更新升級」點選「立刻更新」按鈕,等待更新 JAR,成功後重啟 Web 伺服器即可。

2)升級前需確定已進行備份操作,保證升級程式或升級後出現異常可以即時恢復可用狀態不至於造成損失,備份方法可參考上一節

3)人工更新 JAR 包:使用者可以獲取 JAR 包後手動更換更新, linux 系統和 windows 系統下操作方式一致。

4)使用者可以向帆軟技術人員索要升級jar包,獲取後,更換伺服器工程 %TOMCAT_HOME%/webapps/webroot/WEB-INF/lib下的老jar包,重啟伺服器即可完成升級。

5)BI更新升級前請先運作升級工具,在決策平台中點選「BI升級」進行檢查,按指導處理完成升級風險項後進行人工更新。

附件列表


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

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

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

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙