MonetDB 上的集群配置:无法发现其他节点

Cluster configuration on MonetDB: cannot discover other nodes

我已经在我的 MacBook(使用 Oracle Virtual Box)上的 3 个虚拟机上安装并配置了 3 个 monetdb 节点集群。我使用 MonetDB 5 服务器 11.37.7

我遵循了MonetDB的Cluster Management documentation,但是monetdb discover命令只returns本地实例的dbfarm。每个节点仍然不知道其他节点。

我可以使用 monetdb -h [host] -P [passphrase] 从任何其他节点连接到任何节点,我还可以使用 monetdb -h host -P passphrase discover

发现特定主机的远程场

这个问题的答案 帮助我将 listenaddr 属性 设置为 0.0.0.0,但是发现命令仍然只 returns 本地 monetdb 场。

编辑

感谢 Jennie 下面的建议,我注意到 monetdb 日志文件包含 error while sending broadcast message: Network is unreachable

我使用 netcat 实用程序将 UDP 消息从一个节点广播到其他 2 个节点并且它工作正常,我可以 ping、ssh 并且这 3 个节点是使用 virtualbox 配置的同一网络的一部分,但错误仍然存​​在。

您的所有 VM 都必须在同一个 LAN 环境中。 monetdb discover基本上遍历同一子网下的所有IP地址。

你能告诉我如何验证情况吗?

感谢@Jennie post,我让它工作了。对于任何使用 VirtualBox 的人:

  • 使用每个配置节点的第一个网络适配器 Bridge access 而不是 NAT
  • 为您的 dbfarm 配置以下 属性:listenaddr=0.0.0.0
  • 出于测试目的,可能值得将 属性 discoveryttl 减少到小于默认的 10mns