使用 Jackrabbit 存储库集群 Pentaho C.E. 5.x [英] Clustering Pentaho C.E. 5.x with Jackrabbit repository

查看:110
本文介绍了使用 Jackrabbit 存储库集群 Pentaho C.E. 5.x的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在集群 PostgreSQL 数据库之上运行多个 Pentaho BI CE 服务器实例.

Pentaho Clustering 集群指南(应用服务器集群)说我应该保持 Jackrabbit 每个节点配置的内容相同

<块引用>

您的应用程序节点都需要已安装相同的配置和 BA 部署,以便集群工作.

然后我只需要配置 Jackrabbit 的日志来指定唯一的节点 ID.

<Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal"><param name="revision" value="${rep.home}/revision.log"/><param name="url" value="jdbc:postgresql://HOSTNAME:PORT/jackrabbit"/><param name="driver" value="org.postgresql.Driver"/><param name="user" value="jcr_user"/><param name="password" value="password"/><param name="databaseType" value="postgresql"/><param name="janitorEnabled" value="true"/><param name="janitorSleep" value="86400"/><param name="janitorFirstRunHourOfDay" value="3"/></期刊></集群>

Jackrabbit 的集群指南 但是有更多要求(重点是我的)

<块引用>

要使用集群,必须满足以下先决条件:

  • 每个集群节点都必须有自己的存储库配置.

  • DataStore 必须始终在节点之间共享(如果使用).

  • 必须共享存储库级别的全局文件系统(仅与数据存储处于同一级别的文件系统;仅在repository.xml 文件).

  • 每个集群节点都需要自己的(私有)工作区级别和版本 FileSystem(仅限工作区和版本控制中的那些配置;repository.xml 和 workspace.xml 文件中的那些).

  • 每个集群节点都需要自己的(私有)搜索索引.
  • 必须为每个集群节点分配一个唯一 ID.
  • 必须根据文件或存储在数据库中选择日记类型.
  • 每个集群节点必须使用相同的(共享)日志.

  • 持久性管理器必须将他们的数据存储在同一个全球可访问的位置

这是否意味着Versioning"和Workspace"中的 FileSystem 每个节点应该有不同的前缀或指向另一个(可能是非共享的)位置?这与 Pentaho 文档相矛盾(Use PostgreSQL as Your Repository Database) 一切都指向单个数据库.

解决方案

这是否意味着Versioning"和Workspace"中的 FileSystem 每个节点应该有不同的前缀或指向另一个(可能是非共享的)位置?

如果您使用共享数据库,则可以.

<块引用>

这与 Pentaho 文档(使用 PostgreSQL 作为您的存储库数据库)相矛盾,其中所有内容都指向单个数据库.

不一定,这取决于相同"的定义.如果您使用本地文件系统或本地数据库,则配置是相同的,因为您的应用程序节点都需要相同的配置和已安装的 BA 部署,以便集群工作.">

I'm trying to run several Pentaho BI CE server instances atop of a clustered PostgreSQL Database.

Pentaho Clustering guide on clustering(Cluster the Application Server) says that I should keep the contents of Jackrabbit per-node configurations the same

Your application nodes all need the same configurations and BA deployments installed already in order for clustering to work.

and then I only need to configure Jackrabbit's journal to specify unique node ids.

<Cluster id="Unique_ID ">
    <Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
      <param name="revision" value="${rep.home}/revision.log"/>
      <param name="url" value="jdbc:postgresql://HOSTNAME:PORT/jackrabbit"/>
      <param name="driver" value="org.postgresql.Driver"/>
      <param name="user" value="jcr_user"/>
      <param name="password" value="password"/>
      <param name="databaseType" value="postgresql"/>
      <param name="janitorEnabled" value="true"/>
      <param name="janitorSleep" value="86400"/>
      <param name="janitorFirstRunHourOfDay" value="3"/>
    </Journal>
</Cluster>

Jackrabbit's guide on clustering however has more requirements(emphasis mine)

In order to use clustering, the following prerequisites must be met:

  • Each cluster node must have its own repository configuration.

  • A DataStore must always be shared between nodes, if used.

  • The global FileSystem on the repository level must be shared (only the one that is on the same level as the data store; only in the repository.xml file).

  • Each cluster node needs its own (private) workspace level and version FileSystem (only those within the workspace and versioning configuration; the ones in the repository.xml and workspace.xml file).

  • Each cluster node needs its own (private) Search indexes.
  • Every cluster node must be assigned a unique ID.
  • A journal type must be chosen, either based on files or stored in a database.
  • Each cluster node must use the same (shared) journal.

  • The persistence managers must store their data in the same, globally accessible location

Does it mean that FileSystem inside 'Versioning' and 'Workspace' should have different prefixes per node or point to another(possibly non shared) place? This contradicts with the Pentaho documentation(Use PostgreSQL as Your Repository Database) where everything points to single database.

解决方案

Does it mean that FileSystem inside 'Versioning' and 'Workspace' should have different prefixes per node or point to another(possibly non shared) place?

If you use a shared database, then yes.

This contradicts with the Pentaho documentation(Use PostgreSQL as Your Repository Database) where everything points to single database.

Not necessarily, it depends on the definition of "same". If you use a local file system or local database, then the configuration is the same, as "Your application nodes all need the same configurations and BA deployments installed already in order for clustering to work."

这篇关于使用 Jackrabbit 存储库集群 Pentaho C.E. 5.x的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆