我在使用2个节点配置Elasticsearch时遇到问题。首先让我们说'#34; 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(网络设置或其他东西)。有人能帮助我吗?
答案 0 :(得分:0)
检查这些节点之间的范围。防火墙是这些情况下的主要问题。 尝试使用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/elastisearch/elasticsearch.yml
使用您喜欢的文本编辑器
nano /etc/elastisearch/elasticsearch.yml
找到以下几行:
discovery.zen.ping.unicast.hosts
AND SET:
discovery.zen.ping.unicast.hosts: ["<ipMaster>","<ipSlave>"]
确保两个节点共享相同的&#34; cluster.name&#34;但不同的&#34; node.name&#34;,在同一个文件下找到行:
cluster.name
node.name
然后设置:
在主人
上cluster.name: MyCluster
node.name: Master01
奴隶上的
cluster.name: MyCluster
node.name: Slave01