cluster-computing - Pentaho 7.1社区版集群统一存储库

标签 cluster-computing load-balancing pentaho kettle postgresql-9.4

实际上,我已经按照Pentaho Official Docs成功设置了pentaho社区集群。和 Pentaho in High Availability部署时嵌入tomcat 8,并使用apache2作为反向代理。

我的设置:

  • 第一个节点:pentaho server ce 7.1 嵌入式 tomcat 8
  • 第二个节点:pentaho server ce 7.1 嵌入式 tomcat 8
  • Web 服务器:apache2 http 反向代理
  • 数据库:postgresql 9.4

每个都运行在不同的服务器上,它们之间没有防火墙,同一网络,可以保证没有网络或防火墙问题。

我可以启动集群,可以 ping 通两台服务器,并且可以通过反向代理访问它们。我可以测试两者都在使用反向代理,因为我关闭了其中一个,而另一个继续应答(由于粘性功能而丢失 session )。

安装完所有内容后,我决定手动迁移所有用户、权限、文件和计划任务。当我创建用户时,我可以看到在两个实例中创建的用户(通过 IP 访问它们而不是通过反向代理),此时一切正常。

但是,当我上传文件或从存储库浏览器创建/删除文件/文件夹时,我无法在两个节点中看到这些更改,只能在事件 session 的节点中看到这些更改。

Pentaho日志没有显示任何错误,据我所知,每个节点都有自己的文件存储库,所以我再次检查了所有配置文件,并且可以验证文档中指定的所有内容是否已更改为使用PostgreSQL。

搜索后,我倾向于认为,在集群模式下,文件存储库(jackrabbit)对于所有节点来说并不是“唯一”的,我的意思是,每个节点将继续拥有自己的文件存储库,这就是时间不够,因为我的团队是直接上传报表到bi服务器,而且他们用的是反向代理,不是通过ip访问。

我认为设置数据库,它将统一存储库,因此,我可以获取数据库存储库中的所有文件和文件夹,而不是每个节点中的所有文件和文件夹。

如果这不是正确的方法,是否有办法在集群模式下使用唯一的文件系统存储库?

感谢您的关注。

最佳答案

正如@AlainD所述,我终于找到了问题。

问题出在配置文件上:

../pentaho-server/pentaho-solutions/system/jackrabbit/repository.xml 

在 jackrabbit 存储库配置文件中,我没有更改每个工作节点的唯一 id 值,两个工作节点具有相同的 id。

我不知道这样做的确切后果,但在为每个工作节点设置正确的值后,它开始发挥作用!甚至对 pentaho server 8 使用相同的配置文件,我能够迁移配置。谢谢。

关于cluster-computing - Pentaho 7.1社区版集群统一存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49305483/

相关文章:

rabbitmq - 来自 RabbitMQ 的 "Unknown delivery tag"在具有复制队列的集群中确认消息时

hadoop - 如何为现有的Hadoop集群部署FreeSWITCH

Nginx 负载均衡器 websocket 问题

java - Web Sockets + Tomcat/Glassfish + 集群 + 负载平衡 - 有哪些选项?

java - 配置pentaho的hdfs-vfs来获取hdfs-site.xml

mongodb - 调整 PVC 大小的问题 : Only dynamically provisioned pvc can be resized and the storageclass that provisions the pvc must support resize

postgresql - 如何在Docker中部署Keycloak HA集群

使用 gcloud 的负载均衡器 SSL 证书

python - 使用数据透视表仅返回索引列,忽略数据透视表

jsp - Pentaho - 仪表板设计