首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“Message”:“不允许您的请求:‘/_群集/分配/重路由’”}

“Message”:“不允许您的请求:‘/_群集/分配/重路由’”}
EN

Stack Overflow用户
提问于 2017-03-07 04:59:43
回答 3查看 5.7K关注 0票数 7

我正在处理AWS集群,在节点1的AWS集群中重新分配副本碎片。我希望主碎片和副本碎片都驻留在其中。但是,当运行以下命令时,会出现错误

代码语言:javascript
复制
curl  -XPOST 'http://AWS-CLuster-name.com/_cluster/allocation/reroute' -d '{ "commands": [{"allocate_replica":{"index": ".kibana", "shard": 0, node: "nodename" "primary": false }'

当运行上述命令时,会出现以下错误。

代码语言:javascript
复制
{"Message":"Your request: '/_cluster/allocation/reroute' is not allowed."}

这是否意味着AWS中不允许手动分配碎片?有谁能澄清一下。

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-03-07 18:27:21

这在elasticsearch中是不允许的,因为它违反了作为故障转移副本或分布式副本的概念。https://www.elastic.co/guide/en/elasticsearch/guide/master/replica-shards.html

在同一节点上拥有相同的主碎片和副本碎片是无用的,不允许使用simpy。与AWS无关。

票数 0
EN

Stack Overflow用户

发布于 2017-03-16 22:43:13

正确,AWS不允许您直接控制碎片分配,至少不能以通常的方式控制。

我希望它能以其他一些AWS特有的方式来实现,因为我有一个黄色的集群,我非常希望它是绿色的。:(

后续:看起来Elasticsearch领域最终意识到它可以自己解决这个问题。在我们的例子中,由于我们的空闲空间越来越短,所以副本没有被分配。我们释放了空间,大概30分钟后,碎片开始自己复制。

票数 11
EN

Stack Overflow用户

发布于 2021-05-17 11:39:42

由于多种原因,Elasticsearch群集状态变为黄色或红色。有时,即使经过相当长的时间,Elasticsearch域也可能不会修复集群状态的问题。当碎片分配的最大重试次数超过限制(5次重试)时,尤其会发生这种情况。

在这个场景中,根据文档,手动碎片分配可以通过禁用和重新启用索引上的副本碎片来触发。

通过运行以下命令,可以确定哪个索引的碎片分配失败了

代码语言:javascript
复制
curl -XGET 'MyES_Endpoint/_cat/shards?h=index,shard,prirep,state,unassigned.reason' | grep UNASSIGNED

一旦找出没有分配哪个索引的碎片,就可以使用下面的命令禁用索引的副本碎片

代码语言:javascript
复制
curl -XPUT 'MyES_Endpoint/<index>/_settings' -H 'Content-Type: application/json' -d'
{
  "index" : {
    "number_of_replicas" : 0
  }
}'

通过将副本碎片设置为适当的编号,您可以重新启用副本碎片。

警告

不建议在运行大量工作负载的集群上手动处理碎片分配,因为当我们移除索引的副本碎片时,只剩下主碎片,然后所有传入的负载仅由该碎片处理。然后,任何节点故障都会导致集群的状态变为红色。

看看文档,进一步了解造成这种情况的不同原因,以及如何处理这些原因。

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

https://stackoverflow.com/questions/42640555

复制
相关文章

相似问题

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