我正在尝试在集群PostgreSQL数据库的顶部运行几个Pentaho BI CE服务器实例。
关于聚类的Pentaho聚类指南(Cluster the Application Server)说我应该保持每个节点配置的Jackrabbit内容相同
您的应用程序节点都需要安装相同的配置和BA部署才能使群集正常工作。
然后我只需要配置Jackrabbit的日志来指定唯一的节点ID。
<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有更多的要求(强调我的)
要使用群集,必须满足以下先决条件:
- 每个群集节点都必须具有自己的存储库配置。
- 如果使用DataStore,则必须始终在节点之间共享。
- 必须共享存储库级别的全局FileSystem(仅与数据存储位于同一级别的文件系统;仅在repository.xml文件中)。
- 每个群集节点都需要其自己的(私有)工作空间级别和版本FileSystem(仅限工作空间和版本控制配置中的那些; repository.xml和workspace.xml文件中的那些)。
- 每个群集节点都需要自己的(私有)搜索索引。
- 必须为每个群集节点分配唯一的ID。
- 必须根据文件或存储在数据库中选择日记帐类型。
- 每个群集节点必须使用相同(共享)日志。
- 持久性管理器必须将其数据存储在同一个全局可访问的位置
这是否意味着“版本控制”和“工作空间”内的文件系统应该每个节点具有不同的前缀或指向另一个(可能是非共享的)位置?这与Pentaho文档(Use PostgreSQL as Your Repository Database)相矛盾,其中所有内容都指向单个数据库。
这是否意味着“版本控制”和“工作空间”内的文件系统应该每个节点具有不同的前缀或指向另一个(可能是非共享的)位置?
如果您使用共享数据库,那么是。
这与Pentaho文档(使用PostgreSQL作为您的存储库数据库)相矛盾,其中所有内容都指向单个数据库。
不一定,它取决于“相同”的定义。如果您使用本地文件系统或本地数据库,那么配置是相同的,因为“您的应用程序节点都需要安装相同的配置和BA部署才能使群集正常工作”。