【问题标题】:Orient DB Distributed Database东方DB分布式数据库
【发布时间】:2018-06-06 21:42:10
【问题描述】:

我已经尝试了几个小时来使用 Orient DB 建立一个分布式数据库。我在这里https://orientdb.com/docs/last/Tutorial-Setup-a-distributed-database.html 遵循了他们的指示,但没有运气。我能够在第一个节点上启动服务器。然后我复制目录并在该复制目录中启动服务器,但两个节点不会相互通信。他们每个人都只是充当第一个节点。我尝试在 hazelcast.xml 文件中使用 tcp 而不是多播,但这似乎没有帮助。任何帮助将不胜感激。

【问题讨论】:

  • 如果您的网络上未启用多播,那么这也会阻止新节点加入旧节点。 tcp 应该在大多数环境中工作。 hazelcast.xml 中的 tcp 配置是什么?
  • 我将每次安装 OrientDB 时的 hazelcast.xml 文件更改为:<tcp-ip enabled="true"> <member>IP:2434</member> <member>IP:2434</member> </tcp-ip> 这似乎不起作用。这些看起来像是要使用的正确端口吗?
  • 这两台机器是否可以在这些 IP 地址和端口上 ping 通? HC 默认使用 5701,但由于您已明确配置端口,因此将使用您的设置。如果通过配置的设置可以访问两台机器,那么下一步就是从两个节点共享完整的 Hazelcast 日志。
  • 好的,谢谢它使用 tcp 工作。除了一个问题外,似乎运行良好:如果我在 machine1 上启动服务器,然后与 machine2 连接,一切正常。如果我在 machine1 上断开连接,所有权不会转移到 machine2。我收到此错误[machine2] Cannot remove server 'machine1' because it is enlisted in 'servers' of the distributed configuration for database 'demodb'。有什么想法吗?
  • 这似乎与 Orient DB 中的演示应用程序有关,看起来像是在“demodb”中硬编码的东西。我建议查看它的源代码和/或 ping OrientDB 家伙。

标签: orientdb hazelcast multicast


【解决方案1】:

如果您真的想以这种方式设置分布式环境,只需在设置任何节点之前复制 OrientDB 文件夹,或者只需下载全新的安装。

【讨论】:

  • 我不需要编辑 hazelcast.xml 文件以确保它们可以通信吗?或者两个全新安装的 OrientDB 会自动相互连接吗?
  • 只要在同一台机器上启动两个 OrientDB 安装,就不需要配置 hazelcast。
猜你喜欢
  • 1970-01-01
  • 2018-05-28
  • 2018-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-06
  • 1970-01-01
  • 2011-05-06
相关资源
最近更新 更多