elasticsearch - 我可以在 Elasticsearch 集群中手动设置事件主节点吗?

标签 elasticsearch

我知道可以为 ElasticSearch 集群定义多个 master,其中只有一个作为 master,其他的可以在必要时介入。另见 https://stackoverflow.com/a/15022820/2648551 .

我不明白的是我如何确定哪个主控处于事件状态以及哪个主控可以在必要时介入。

我目前的设置如下:

node-01: master (x) data(-)
node-02: master (-) data(x)
node-03: master (-) data(x)
node-04: master (-) data(x)
node-05: master (-) data(x)
node-06: master (-) data(x)

现在我想确定,例如node-02 成为额外的 master 资格。我可以依赖 ES 如此聪明以至于它总是将非数据节点(node-01)作为事件主节点,或者如果所有节点都存在并且没有节点,node-02 是否会充当事件主节点问题?或者这是我不必担心的事情?

我目前正在使用 ElasticSearch 1.7 [原文如此!],但我也对基于最新版本的答案感兴趣。

最佳答案

稍后,仅针对上下文,我们现在“可以”决定哪个节点成为主节点,尽管这不是直接可能的。

Elasticsearch 现在有一个名为 voting_config_exclusions 的方法可用于离开当前主节点,例如

假设您的集群中有 3 个符合主节点条件的节点

$ GET _cat/nodes?v

ip               node.role     master   name
192.168.0.10     cdfhilmrstw   -        node-10
192.168.0.20     cdfhilmrstw   *        node-20
192.168.0.30     cdfhilmrstw   -        node-30
192.168.0.99     il            -        node-99

并且 Elasticsearch 已选择 node-20 作为事件主节点,您可以运行以下调用以从投票中删除事件节点。

POST /_cluster/voting_config_exclusions?node_names=node_name

这将随机选择另一个符合主节点条件的节点作为主节点(如果您还有多个剩余节点)继续对事件节点执行此操作,直到您将正确的节点激活为主节点。

注意:这不会删除节点,只会使它成为不活跃的主节点/非投票节点,并允许另一个节点成为主节点。

完成后,请确保运行以下命令以删除排除项,并允许所有符合条件的节点在所选节点出现故障时成为主节点。

DELETE /_cluster/voting_config_exclusions

谢谢

关于elasticsearch - 我可以在 Elasticsearch 集群中手动设置事件主节点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50424613/

相关文章:

elasticsearch - 如何在Elasticsearch中仅向前创建ngram?

amazon-web-services - 基于位置的AWS AppSync事件订阅

Elasticsearch 显示不正确的距离

database - 除了通用查询字符串之外,如何在 ElasticSearch 中进行前缀搜索?

java - 在elasticsearch中实现优先级搜索

angularjs - 使用angularjs请求Elasticsearch作为跨域

安装elastic-search-curator时的Python pip包RequestsDependencyWarning

elasticsearch - 5.x中的Elasticsearch索引大小比1.x中的大40%

elasticsearch - 创建索引- Elasticsearch -Java API

Elasticsearch - 如果不存在则使用脚本创建字段