连接到 Elasticsearch 时使用哪些主机

Which hosts to use when connecting to Elasticsearch

我们有一个由 3 个主节点和一些数据节点组成的 Elasticsearch 集群。

我想了解哪些需要包含在客户端的主机配置中。具体来说,我们使用的是 PHP,但我认为这没有什么不同。

最好使用哪一组主机?包括一个大师就足够了吗?或者最好包括所有主节点,甚至 any/all 数据节点?最佳做法是什么?

文档对此不是很清楚:Elasticsearch PHP 5.x

是否有任何 advantages/disadvantages 不同的设置?

默认情况下,所有节点都是协调器节点,您可以向它们发送查询,因此您可以像您提到的那样查询数据和主节点,但最好不要查询数据节点,因为它们正忙于查询和获取数据从他们自己的磁盘。协调器负责关联数据节点的结果。 所以你应该查询主节点。不仅是一个节点。他们都。因为如果其中之一出现故障,您的集群仍在运行。

对于具有 100 个节点的大型集群或搜索量很大的集群,我建议使用专用协调器节点。 (master: falsedata: false)