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
我已经在我的 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
这个问题的答案
编辑
感谢 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