首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >expected_nodes和recover_after_nodes参数的差异

expected_nodes和recover_after_nodes参数的差异
EN

Stack Overflow用户
提问于 2014-08-26 20:33:31
回答 2查看 5.7K关注 0票数 9

我看不到网关模块恢复阶段的两个参数之间的区别。

documentation中:

  • gateway.recover_after_nodes设置(接受一个数字)控制在多少次(.)之后的合格节点(.)复苏将启动
  • gateway.expected_nodes允许设置多少(.)预期符合条件的节点将在集群中,一旦满足,(.)恢复启动

据我所知,这两个设置一旦节点数等于值集,就会触发恢复阶段。

为什么要用一个而另一个?

同时使用两者又有什么意义呢?

例如:

代码语言:javascript
复制
gateway:
    recover_after_nodes: 3
    expected_nodes: 5

在这种情况下,expected_nodes的目的是什么?一旦有3个节点,就会触发恢复。肯定还有另一个理由去使用它。

我希望我的问题足够清楚。

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-26 22:11:26

当使用recovery_after_nodes、recover_after_data_nodes或recovery_after_master_nodes时,一旦满足所有设置的条件,集群将在启动恢复之前开始等待recover_after_time:

gateway.recover_after_time设置(接受时间值)设置等待时间,直到所有gateway.recover_after...nodes条件都满足后才恢复。

当使用expected_nodes、expected_data_nodes或expected_master节点时,一旦满足所有条件,恢复就会启动--集群不会等待。此外,它还将默认recovery_after_time为5分钟。

在测试用例中:

代码语言:javascript
复制
gateway:
    recover_after_nodes: 3
    expected_nodes: 5

一旦您命中3个节点,一个倒计时时钟就会启动,然后集群将在5分钟内(默认)或如果您到达5个节点就会恢复。基本上,它允许您设置最小阈值(recovery_after_nodes),并设置超时(recovery_after_time)以等待所需的状态(expected_nodes)。您将在recovery_after_time被击中后恢复recovery_after_nodes,或者当expected_nodes被击中时(没有额外的等待)--以第一位为准。

票数 12
EN

Stack Overflow用户

发布于 2015-03-26 04:10:19

在这份公开文件中,有一些误解。

http://www.elastic.co/guide/en/elasticsearch/reference/1.x/modules-gateway.html

代码语言:javascript
复制
gateway:
recover_after_time: 5m
expected_nodes: 2

在预期的2个节点集群中,将在第一个节点运行5分钟后启动恢复,但是一旦集群中有2个节点,恢复将立即开始(无需等待)。

因此,recover_after_time定义的定时器在第一个节点启动后就已经开始了。在查找recover_after_nodes中定义的节点后不启动

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25514690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档