反饋已提交
網絡繁忙
單個工程已不能滿足使用者需求,使用者需要較高的併發支撐效能。
單機不可用時,系統停止將會造成業務中斷、資料/範本丟失等問題,使用者需要確定系統 7*24h 穩定運作。
本文簡單介紹,叢集配置環節,各種配置項的要求和說明。
本文所有操作,均在工程的「管理系統>智慧維運>叢集配置」中進行。
注:文檔並非完整部署方案,僅對配置項進行介紹。完整部署方案請參見:
容器化部署:一鍵部署,包括工程節點+負載均衡+狀態伺服器+檔案伺服器+外接資料庫
Linux系統手動配置標準叢集:工程節點+負載均衡+狀態伺服器+檔案伺服器+配置庫都需手動部署、修改配置和串並起來
支援多種狀態伺服器:Redis單機、Redis叢集、Redis哨兵、騰訊雲Redis叢集4.0
設定成功後,請重新登入數據決策系統。
2.1.1 Redis單機
使用前提:
1)配置之前請檢查各工程節點伺服器系統時間是否一致,不一致可能會導致叢集不可用及同步問題。
2)請準備好Redis的內網IP、佔用埠、服務密碼。
3)FineReport11.0.22及之後版本,支援Redis6.0的權限管理功能ACL,如需使用,請準備好帳號。
4)支援華為雲 Redis 5.0 主備版。配置方式與「Redis單機」相同,只需將主機、埠、密碼修改為華為雲的即可。
操作步驟:
1)點選狀態伺服器「開啟」按鈕。
2)選擇快取系統為「Redis單機」,輸入狀態伺服器資訊。
支援 Redis6.0 的權限管理功能 ACL
如開啟 ACL ,請輸入對應 Redis 帳號
3)點選「測試連結並儲存」。
2)請準備好Redis各個節點的內網IP、佔用埠。
3)如果配置Redis服務密碼,請確定 Redis 各個節點使用統一的密碼。
4)FineReport11.0.22及之後版本,支援Redis6.0的權限管理功能ACL,如需使用,請準備好帳號。
2)選擇快取系統為「Redis叢集」,輸入狀態伺服器資訊。
3)請準備好Redis主節點名稱。
4)如果配置Redis服務密碼,請確定 Redis 各個節點使用統一的密碼。
2)選擇快取系統為「Redis哨兵」,輸入狀態伺服器資訊。
如開啟 ACL,請輸入對應 Redis 帳號
1)請確定「插件管理」中已安裝「騰訊雲Redis插件」。
2)配置之前請檢查各工程節點伺服器系統時間是否一致,不一致可能會導致叢集不可用及同步問題。
3)請準備好騰訊雲Redis的內網IP、佔用埠、服務密碼。
2)選擇快取系統為「騰訊雲Redis」,輸入狀態伺服器資訊。
使用者可準備 rocketmq 組件,更換 Redis 訊息佇列一部分功能。
若不配置rocketmq,預設使用redis,無需進行任何操作。
若配置了rocketmq,rocketmq和redis同時生效,負責不同功能。
檔案一致包含 assets、reportlets、resources、schedule、dashboards、treasures、../backup 這些資料夾。
支援多種檔案伺服器,各個節點將從檔案伺服器中讀取這些檔案內容:FTP、SFTP、HDFS、Minio、S3、共享外部目錄(NAS\NFS等)等
注1:「節點間自動同步」不適用於新叢集,使用節點間自動同步無法開啟叢集。該功能只適用於歷史已配置該項的叢集工程,本文不做贅述。
注2:HDFS 、Minio、S3和共享外部目錄均為插件的形式,需要安裝插件方可配置使用。
詳情請參見:HDFS資源倉庫插件、MinIO資源倉庫插件、S3資源倉庫插件、共享外部目錄插件
注:配置檔案伺服器時,協定若選擇 FTP ,增加小圖示,懸浮提示:建議使用更安全的協定 SFTP 。
點選「編輯」,進入設定介面,進行相應的檔案伺服器配置,點選「測試連結並儲存」,如下圖所示:
使用FTP
注1:在叢集開啟條件下,可以切換主被動模式,不會影響系統正常運作,點選測試連結並儲存就可以儲存配置,不需要重啟叢集。
注2:按照文檔部署的 FTP 服務,Linux 系統填寫絕對路徑,如帳號為 ftpuser ,那麼路徑為 /home/ftpuser/WEB-INF,Windows 系統填寫相對路徑 /WEB-INF 即可。
使用SFTP
注1:要求使用啟動中的 FTP/SFTP 伺服器,帳號須具備配置路徑的讀寫權限。
注2:如果是 SFTP 金鑰登入,無需要帳號密碼,不填即可,但要點選密碼後面的圖示上傳金鑰檔案。
注3:配置 SFTP 路徑的時候,路徑填寫絕對路徑,為 WEB-INF 資料夾的路徑。
HDFS 作為檔案伺服器,可以保證範本等資源檔案分佈式儲存,實現高可用。詳細查看插件使用文檔 HDFS 資源倉庫
不管使用哪種服務作為檔案伺服器,配置完畢後,點選「測試連結並儲存」,若無異常則可儲存成功。
若叢集第一個節點啟動程式中嘗試連結檔案伺服器失敗,則會進入部署精靈頁面,詳情請參見:叢集組件出錯優化
使用檔案伺服器時,想要手動增刪改範本都需要在檔案伺服器下進行操作, 節點下的 assets、reportlets、resources、schedule、dashboards、treasures、../backup是沒有作用的;
從檔案服務器切換至「節點間同步」時,需要重啟叢集工程所有節點方可生效,若不重啟則不生效。
TCP 和 UDP 是常用的網路傳輸協定,預設選用 TCP 協定。
開啟叢集狀態下可以切換叢集通訊協定,不過重啟工程後方可生效。
注1:如果開啟叢集后只顯示本工程的節點,請更換叢集連結方式,並重啟各節點工程。
注2:阿里雲、AWS 等雲伺服器不允許 UDP 組播方式,叢集連結方式請選擇 TCP。
狀態伺服器和外接資料庫是開啟叢集的前置條件,若未配置外接資料庫,則參考文檔進行配置:配置外接資料庫
11.0.7及之後版本,禁止在節點間同步模式下開啟叢集。
未配置無法開啟的彈窗提示:
配置完畢正常開啟的彈窗提示:
當我們成功開啟叢集並使用時,若想關閉叢集,可以直接點選按鈕就行關閉,不過關閉狀態在重啟後方可生效。
當我們開啟叢集按鈕,並重啟工程後,可以看到節點管理介面出現一個節點,並且當我們選用的是「節點間自動同步」時,第一個加入叢集的節點會作為檔案同步基準節點,若選用的是「檔案伺服器共享」,則不會出現檔案同步基準節點標籤。
需要強調的是:
1)選用的是「節點間自動同步」時,如果想手動變更節點下的資源檔案(assets、reportlets、resources、schedule、dashboards、treasures、../backup ),則需要在基準節點下進行變更,增刪改動作會自動同步至其他非基準節點。對應非基準節點下的資源檔案變動操作,不會生效。
2)基準節點一旦選出後,預設不會變動。若想重置基準節點,可參考以下兩種方法:
方法一:2020-04-26 及之後 JAR
滑鼠懸浮在前端非基準節點的左上角,可點選「設為基準節點」進行基準節點的切換。如下圖所示:
注1:僅在非節點編輯模式下顯示該按鈕。切換實時生效,即點選按鈕後當前節點顯示為「檔案同步基準節點」。
注2:如果切換失敗會彈出提示框資訊:基準節點切換失敗,請稍後重試。
方法二:
可以關閉叢集並重啟工程後,再開啟叢集,基準節點即可重置,重置邏輯還是選擇叢集開啟後第一個加入叢集的節點為基準節點。
注:一個工程即一個節點資訊。
當第一個節點出現後,就可以將第一個節點%FR_HOME%\webapps\webroot\WEB-INF資料夾copy到其他伺服器相同檔案路徑下,然後啟動這些伺服器,新的節點就會加入節點管理了,如下圖所示:
使用 Tomcat、Weblogic 容器時,叢集開啟後可以自動識別容器埠,對於 WAS 叢集,暫時不支援自動識別埠,埠預設為58312,需要修改每個節點的埠為實際埠。
滑鼠劃到節點資訊處,右上角出現編輯按鈕,點選可編輯修改節點名稱、IP 及埠資訊,如下圖所示:
節點與非協調者通訊異常則會標紅,節點標紅提示如下圖所示:
注:Jgroups 協調者是一般表現為每個叢集第一個加入的成員的節點, 額外處理一些普通節點無法處理的事件, 但其不對外曝光。
使用「檔案伺服器共享」並且開啟快取時,節點管理介面會出現「重新整理快取」的按鈕。若我們開啟快取後,有手動在檔案伺服器下增刪改檔案的情況,快取層是無法感知到的,需要手動重新整理快取。「節點間自動同步」模式下可以自動感知到節點下的檔案變動情況,因此無須重新整理快取,因為也不會顯示「重新整理快取」的按鈕。
「被動快取」模式下:點選重新整理快取按鈕,則清空快取;
重新整理快取成功和失敗會有彈窗提醒:
1)「檔案一致設定」中若選擇節點間同步,關閉所有工程後,先啟動基準節點,再啟動其他節點。
2)「檔案一致設定」中若未選擇節點間同步,關閉所有工程後,依次啟動工程即可。
注:關閉和重啟部署在不同容器下的 FineReport 工程方法,可參見:關閉FineReport工程
開啟異常檢查提醒功能,點選「全局設定」按鈕設定提醒方式,比如勾選「簡訊提醒」、「平台訊息」、「郵件提醒」,設定完成後點選儲存即可,預設全不開啟。如下圖所示:
1)簡訊:需要開啟簡訊平台,詳細點選 簡訊
2)郵件提醒:需要配置郵件伺服器,詳細點選 信箱
3)平台訊息:需要在負載均衡層面配置websocket埠並且開放,相關文檔:Websocket埠被佔用/無法使用
1)叢集各個節點的 JAR 包是不會自動同步的,手動升級時需要分別更換各個節點的 JAR 包。
2)透過平台安裝的插件可以自動分發到各個節點,在插件目錄 plugins 下手動放置的插件包不會自動同步,需要在各個節點都手動操作放置。
3)叢集推薦使用私有雲的授權方式,不用關心維護多個節點 license。
4)各個節點儲存自己的日誌(方便某節點出錯快速找到其原因)。
5)若設計器遠端設計切換到某個節點之後,當伺服器斷開連結,遠端提示離開叢集環境的回应彈窗出現速度比較慢,此問題在後續會進行優化。
6)在使用程式中,狀態伺服器、檔案伺服器等組件出現問題導致工程無法存取時, 不會自動切換成節點記憶體、節點間同步,將主動進行訊息提示;重啟程式中,若狀態伺服器、檔案伺服器連結失敗,將進入部署精靈頁面,可修改相關配置。
7)叢集內部通訊支援 ipv6。
8)支援狀態伺服器和檔案伺服器校驗主機IP,不可為空。
Excel 上傳失敗,關鍵報錯資訊如下:
Write failed!Failed to write file /var/ftp/finebi/WEB-INF/assets/temp_attach/MapCache1578448427935_685Permission denied
Excel 和圖片檔案儲存所在位置的 FTP 帳號與資料夾帳號不一致。
將 Excel 和圖片檔案儲存所在位置(WEB-INF\assets\temp_attach)的使用者改為資料夾使用者,或者將資料夾使用者改為 Excel 和圖片檔案儲存所在位置的使用者,即兩個地方的帳號需要保持一致。資料夾使用者在決策平台的「管理系統>智慧維運>叢集配置>檔案一致設定」處修改,如下圖所示:
叢集環境下登入報表工程,重新整理會導致某些報表消失,再次重新整理又恢復。
叢集需要開放一些 TCP 通訊協定埠,如7850。部分插件載入自己的表,需要 hibernate 重新更新二級快取,導致 DecisionDB 啟動兩次,需要用到兩個埠,7850和7851(最後會一直用7851)。但是如果防火牆未開啟7851,會導致叢集通訊異常,目錄顯示異常。
出現類似情況時,工程啟動後可以先使用 netstat -ntpl 命令查看啟動埠情況(也可以查看日誌搜尋關鍵字“__DB_CACHE:DecisionDB:”,看後面的 “physical address=”值最大的那個),注意下 785X ,然後使用 curl (其他命令也行,能 ping 埠就好) ,看看 785X 此埠是否能 ping 通,以檢查是否是埠沒開全而產生的。未開通的埠需要全部開通。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙