gpt4 book ai didi

elasticsearch - Elasticsearch-限制分片分配

转载 作者:行者123 更新时间:2023-12-02 22:17:44 29 4
gpt4 key购买 nike

我已经阅读了许多有关放置索引/分片的文章/论坛,但还没有找到满足我要求的解决方案。

从根本上讲,我想使用Logstash(+ Elasticsearch / Kibana)构建全局分布式集群,但我想将主分区和副本分区的位置限制在其创建区域的本地,以减少WAN流量,但是我也想希望能够将所有数据作为一个数据集进行查询。



假设我在英国有两个ES节点(uknode1 / uknode2),在美国有两个ES节点(usnode1 / usnode2)。
如果Logstash向usnode1发送一些数据,我希望它将副本放置在usnode2上,而不是通过WAN将其发送到uknode *节点。

我尝试使用索引和路由分配设置,但是无法阻止分片分布在所有4个节点上。索引名称是根据“类型”动态构建的,因此稍微有点复杂,但这是以后的另一个挑战。即使只有一个索引,我也无法使用它。

我可以将其分为两个单独的群集,但是我希望能够将所有节点作为一个数据集(通过Kibana)进行查询,因此我认为这不是一个有效的选择,因为Kibana只能查询一个群集。

这有可能实现吗?

我问这是否可能的原因是,如果我在英国节点上写一个名为“myTest”的索引,而在美国节点上写相同的索引,会发生什么情况……因为这最终是相同的索引,不知道ES将如何处理。

因此,如果有人有任何建议,或者只是说“不可能”,那将非常有帮助。

最佳答案

它是possible,但不推荐。 Elasticsearch需要集群中节点之间的可靠数据连接才能正常运行,这对于地理分布的集群而言很难确保。更好的解决方案是拥有两个集群,一个在英国,另一个在美国。如果您需要同时搜索两者,则可以使用tribal node

关于elasticsearch - Elasticsearch-限制分片分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22931715/

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