我在配置带有2个节点的Elasticsearch时遇到问题。第一个说“ node1”将是主节点,第二个“ node2”将是从节点。我使用VirtualBox创建了2个虚拟机。我在configure中设置,一个是master(true),第二个是slave(master = false)。它无法自动发现(我收到错误no known master node, scheduling a retry
)。我尝试了此Elasticsearch Cluster - No known master node, scheduling a retry,但没有帮助。我还将两个虚拟机的MAC地址更改为相同,并遇到了相同的问题。但是,当我在一台虚拟机上运行两个节点时,它可以完美运行。我认为问题可能出在virtualbox(网络设置等)中。有人可以帮我吗?
查看您在这些节点之间的覆盖范围。在这些情况下,防火墙是主要问题。尝试使用ufw
在奴隶上
sudo ufw allow from <ipMaster>
sudo ufw allow out from any to <ipMaster>
在主控上
sudo ufw allow from <ipSlave>
sudo ufw allow out from any to <ipSlave>
也请查看elasticsearch.yml文件下的发现设置
在]下>
/ etc / elasticsearch / elasticsearch.yml
使用您喜欢的文本编辑器
nano /etc/elasticsearch/elasticsearch.yml
找到以下几行:
discovery.zen.ping.unicast.hosts
AND SET:
discovery.zen.ping.unicast.hosts: ["<ipMaster>","<ipSlave>"]
还要确保两个节点共享相同的“ cluster.name”,但使用不同的“ node.name”,在同一文件下找到以下行:
群集名称节点名称
然后设置:
在主控上
cluster.name: MyCluster node.name: Master01
在奴隶上
cluster.name: MyCluster
node.name: Slave01