gpt4 book ai didi

elasticsearch - 如何设置 Elasticsearch 客户端节点?

转载 作者:行者123 更新时间:2023-11-29 02:45:22 24 4
gpt4 key购买 nike

我有几个关于客户端节点的 Elasticsearch 问题:

  1. 我可以说:任何节点,只要它们打开 HTTP 端口,我都可以将它们视为“客户端”节点,因为我们可以通过该节点进行搜索/索引。

  2. 其实我们在cluster=falsedata=false时把节点当成client节点,如果我设置10个client节点,是否需要在我的客户端路由,我的意思是如果我在我的代码中指定 clientOne:9200 作为 ES 门户,那么 clientOne 会将其他 HTTP 请求转发到其他客户端节点,否则,< em>clientOne 会承受非常大的压力。即它们是否在客户端节点之间相互通信?

  3. 在ES集群中指定client节点时,是否应该关闭其他节点的HTTP端口?因为我们只能查询客户端节点。

  4. 您认为有必要在同一台机器上同时设置数据节点和客户端节点,还是只设置数据节点作为客户端节点,反正它在同一台机器上?

    <
  5. 如果 ES 集群会被大量/频繁地索引而搜索较少,那么我不必设置客户端节点,因为客户端节点适合收集数据,对吧?

  6. 对于一般搜索/索引目的,我应该使用 http 端口还是 tcp 端口,请问从客户端角度来看有什么区别?

最佳答案

  1. 是的,您可以通过 http 向任何打开了端口 9200 的节点发送查询。

  2. 使用 node.data: false 和 node.master: false,你会得到一个“client node”。这些对于从数据节点卸载索引和搜索流量很有用。如果您有 10 个,则需要在它们前面放置一个负载均衡器。

  3. 关闭数据节点的 http 端口 (http.enabled: false) 将阻止它们为客户端请求提供服务(可能是好的),但它也会阻止您直接 curl 它们以获取统计信息等。

  4. 客户端节点很有用(参见 #2),因此我不会将流量直接路由到您的数据节点。您是否在同一 block 硬件上同时运行客户端和数据节点取决于该机器的配置(您是否有足够的 RAM 等)。

  5. 客户端节点对于索引也很有用,因为它们知道哪个数据节点应该接收数据进行存储。如果您改为向随机数据节点发送索引请求,则很有可能必须将该请求重定向到另一个节点。如果您可以创建客户端节点,那是在浪费时间和资源。

  6. 让您的客户端加入集群可能会让他们访问有关集群的更多信息,但使用 http 会为他们提供更通用的“黑盒”界面。使用 http,您也不必让您的客户端与您的 ES 节点保持相同的版本。

希望对您有所帮助。

关于elasticsearch - 如何设置 Elasticsearch 客户端节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33789479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com