当副本恢复时,为什么ElasticSearch副本分片仍然未分配?

时间:2014-03-12 03:42:42

标签: lucene elasticsearch

我在Centos 6上运行ElasticSearch 1.0.1,内存为32 GB。

有4个节点,1个没有数据,其余有数据。

有一种情况我手动关闭其中一个节点(重新启动它)。当我重新启动它时,分配给此节点的副本仍保持未分配状态。我不得不使用allocate命令再次手动分配它们。

我的问题是:如何确保副本重新启动时自动分配副本?我不想做任何手动分配。

我的群集设置中有disable_allocation:false,所以这不应该影响它。

我还应该检查什么?

1 个答案:

答案 0 :(得分:0)

那不应该发生,我不这么认为。

您的allocation.disable_replica_allocation是否属实?

在1.0.1中,这些设置已弃用,但仍可使用:

PUT /_cluster/settings
{
    "persistent" : {
        "cluster.routing.allocation.disable_allocation":false,
        "cluster.routing.allocation.disable_replica_allocation":false,
    }
}

结果是什么?

GET /_cluster/settings

BTW - 看起来ES正在弃用:

cluster.routing.allocation.disable_new_allocation
cluster.routing.allocation.disable_allocation
cluster.routing.allocation.disable_replica_allocation

赞成:

cluster.routing.allocation.enable

参考: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-cluster.html