我有一个有4个节点的ES集群:
number_of_replicas: 1
search01 - master: false, data: false
search02 - master: true, data: true
search03 - master: false, data: true
search04 - master: false, data: true
我不得不重新启动 search03,当它回来时,它重新加入集群没有问题,但留下了 7 个未分配的分片。
{
"cluster_name" : "tweedle",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 4,
"number_of_data_nodes" : 3,
"active_primary_shards" : 15,
"active_shards" : 23,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 7
}
现在我的集群处于黄色状态。解决这个问题的最佳方法是什么?
- 删除(取消)分片?
- 将分片移动到另一个节点?
- 将分片分配给节点?
- 将“number_of_replicas”更新为 2?
- 完全是别的什么吗?
有趣的是,当添加新索引时,该节点开始处理它并与集群的其余部分配合良好,它只是留下未分配的分片。
接下来的问题是:我是否做错了什么导致这种情况发生?我对在节点重新启动时以这种方式运行的集群没有太多信心。
NOTE:如果您出于某种原因运行单节点集群,您可能只需要执行以下操作:
curl -XPUT 'localhost:9200/_settings' -d '
{
"index" : {
"number_of_replicas" : 0
}
}'