如何为具有共享 NFS 挂载的 2 个节点设置 Jackrabbit Repository.xml?

Posted

技术标签:

【中文标题】如何为具有共享 NFS 挂载的 2 个节点设置 Jackrabbit Repository.xml?【英文标题】:How do I setup Jackrabbit Repository.xml for 2 Nodes with Shared NFS Mount? 【发布时间】:2011-06-18 21:37:07 【问题描述】:

我在尝试使用共享 NFS 挂载使我的 repository.xml 为 2 节点配置正确时遇到了很多麻烦。我应该为 PersistenceManager 和 Journal 使用数据库持久性管理器吗?

我发现 Apache Jackrabbit Wiki 很迟钝,无法避免此错误:

20:47:34.804 [pool-1-thread-3] 警告 o.a.j.core.util.RepositoryLock - 检测到现有锁定文件 /export/attachments/.lock。存储库未正确关闭。

如果您有示例 repository.xml,请分享。谢谢。

【问题讨论】:

【参考方案1】:

确实,所有 Jackrabbit 集群节点都需要访问相同的持久性存储(持久性管理器、数据存储和存储库文件系统)。但是,每个集群节点都需要自己的(私有)存储库目录,包括 repository.xml 文件、工作区文件系统和搜索索引。看起来您尝试使用相同的存储库目录。

我相应地更新了Jackrabbit cluster wiki page。

我应该同时为 PersistenceManager 和 Journal 使用数据库持久性管理器吗?

是的,这是一个很好的解决方案。

顺便说一下,您可以查看商业Day CRX(基于Jackrabbit)中如何配置集群。还有更多documentation about clustering,其中很多也适用于 Jackrabbit。免责声明:我为 Day 工作(现在是 Adob​​e 的一部分)。

【讨论】:

感谢您的回复。很有帮助。 对了,我昨天又更新了wiki页面。现在有一个关于如何将集群 H2 database 用于 Jackrabbit 集群的新示例。

以上是关于如何为具有共享 NFS 挂载的 2 个节点设置 Jackrabbit Repository.xml?的主要内容,如果未能解决你的问题,请参考以下文章

如何为具有共享代码库的多个项目正确设置 git?

如何把linux下的nfs共享目录挂载到window下的指定目录中

NFS共享存储服务

在具有共享 NFS 挂载的服务器上运行 playbook

如何为具有分离数据源的 2 个反应组件更新 relayjs 缓存

Linux系统之使用autofs自动挂载nfs共享