FineReport關於tomcat集羣部署的方案

多臺服務器集羣后,配置權限、數據鏈接、模板、定時調度等,只能每臺服務器一個個配置,不會自動同步到全部服務器。web

針對上述狀況,在FineReport中提供新集羣部署插件,將xml配置文件、finedb/logdb數據(定時任務、報表目錄管理、批量導入、統計信息)的修改都對主機生效。其餘輔機的信息讀取也都從主機讀取,保證了數據同步。數據庫

實現了災備,即主機立即後,次主機會上位接替主機的工做,保證系統正常運做。tomcat

同時還增長了集羣災備之文件同步,會將主機的finedb、xml、模板、jar包、插件等等備份到其餘節點的應用上。支持能夠手動同步和自動同步。服務器

插件介紹app

設計器插件、服務器插件安裝好以後,新集羣部署,有主機、次主機、輔機之分,配置文件都從主機讀取,輔機只能用做計算引擎分擔壓力,有點事當改配置文件的時候,不須要每一個節點都去修改,直接改主機便可。負載均衡

分佈式集羣webapp

分佈式集羣文件系統:每臺計算機各自提供本身的存儲空間,並各自協調管理全部計算機節點中的文件。分佈式

這裏測試修改主機的報表管理目錄樹平臺標題,而後能夠看到輔機會同步修改的配置。其中報表管理目錄樹存在finedb中,平臺樣式的平臺標題存在fsconfig.xml中。測試

  • 環境準備

設置tomcat一、tomcat二、tomcat3集羣,tomcat1爲主機,tomcat2爲輔機,tomcat3爲次主機,tomcat集羣。插件

WebReport工程分別放在tomcat下的webapps文件夾裏

  •  配置文件

集羣配置完成以後,修改將配置包resource文件夾下的cluster.xml打開,若是沒有這個文件的話,就新建一個,基本內容以下:

  

PublicURL是集羣默認跳轉地址,好比集羣時對外地址是自定義端口的, ip:8888/WebReport/ReportServer?op=fs咱們並不能獲取到這個8888端口,所以這裏須要填寫實際的ip:端口號,若是這段省略不寫,默認跳轉80端口。

ServiceName是爲tomcat的名字。

IP是該臺服務器內網中的IP,就是其它服務器能與之通訊的IP。

Port是報表應用的端口號,假如是部署在tomcat下,那麼就是tomcat的端口號,默認是8080。例如咱們的內置服務器是8079.

WebAppName是報表應用的名稱,咱們默認的是WebReport。

詳細代碼以下:

<?xml version="1.0" encoding="UTF-8" ?>

<ClusterConfig useCluster="true">

<PublicURL>

ip:端口

</PublicURL>

<ClusterService  isMain="true">

<ServiceName>tomcat1</ServiceName>

<ip>192.168.101.82</ip>

<port>6080</port>

<WebAppName>WebReport</WebAppName>

</ClusterService>

<ClusterService>

<ServiceName>tomcat3</ServiceName>

<ip>192.168.101.82</ip>

<port>8080</port>

<WebAppName>WebReport</WebAppName>

</ClusterService>

<ClusterService  isVice="true">

<ServiceName>tomcat2</ServiceName>

<ip>192.168.101.82</ip>

<port>7080</port>

<WebAppName>WebReport</WebAppName>

</ClusterService>

</ClusterConfig>

  • 測試

啓動工程,等3分鐘後,關閉主機,刷新fs和訪問模板,此時是失敗的,再等待3分鐘,主次機上位,再次刷新fs和訪問模板,此時是成功的。

集羣同步設置

點擊管理系統-集羣同步,點擊設置,選擇須要同步的內容:配置文件(resources目錄)、模板(reportlets目錄)、插件和jar(plugins和lib文件夾),點擊肯定,而後能夠選擇手動同步,或者設置定時同步,點擊保存便可,以下圖:

共享式集羣

共享式文件集羣系統:多臺計算機識別到一樣的存儲空間,並相互協調共同管理其上的文件,又被稱爲共享文件系統;

  • 環境準備

設置tomcat1和tomcat2集羣,tomcat1爲主機,tomcat2爲輔機,tomcat集羣。

Web項目部署在不一樣的服務器上,通常服務器都在同一局域網,那麼共享式文件集羣該如何訪問呢?

這裏經過共享局域網裏某臺電腦上的工程文件夾,多個tomcat都從這個共享的工程文件夾裏讀,以下圖:

 

文件夾共享後,局域網內的服務器都可經過\\IP\文件夾訪問共享的工程目錄

 

 

tomcat1和tomcat2下,修改conf裏server.xml文件,添加一個Context,指向項目的目錄

 

  • 配置文件

集羣配置完成以後,修改將配置包resource文件夾下的cluster.xml打開,若是沒有cluster.xml,則新建一個,基本內容以下:

 共享式的集羣方式,由於自己就是指向同一個文件夾的,不須要咱們來作文件的同步,這裏插件的做用是負載均衡。若是須要用到決策平臺,須要將finebd遷移到其餘數據庫,例如MySQL數據庫中。

相關文章
相關標籤/搜索