首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集群中未分配的碎片

集群中未分配的碎片
EN

Stack Overflow用户
提问于 2014-10-10 21:02:30
回答 1查看 2.9K关注 0票数 1

我有一个ES集群正在升级。有一次,我将所有主碎片和副本碎片正确地分配给了我的5个节点中的4个,但在试图将一些碎片放到第5个节点时,我再次丢失了副本碎片。现在,我的主碎片只存在于3个节点上。

我想找出问题的真相:

在尝试强制分配时,例如:

代码语言:javascript
复制
{
  "commands": [
    {
      "allocate": {
        "index": "group7to11poc",
        "shard": 7,
        "node": "SPOCNODE1"
      }
    }
  ]
}

我得到了以下回应。我很难找到确切的问题!

代码语言:javascript
复制
explanations: [1]
  0:  {
    command: "allocate"
    parameters: {
    index: "group7to11poc"
    shard: 7
    node: "SPOCNODE5"
    allow_primary: true
  }-
decisions: [11]
  0:  {
    decider: "same_shard"
    decision: "YES"
    explanation: "shard is not allocated to same node or host"
  }-
  1:  {
    decider: "filter"
    decision: "NO"
    explanation: "node does not match index include filters [_id:"4rZYPBOGRMK4y9YG6p7E2w"]"
  }-
  2:  {
    decider: "replica_after_primary_active"
    decision: "YES"
    explanation: "primary is already active"
  }-
  3:  {
    decider: "throttling"
    decision: "YES"
    explanation: "below shard recovery limit of [2]"
  }-
  4:  {
    decider: "enable"
    decision: "YES"
    explanation: "allocation disabling is ignored"
  }-
  5:  {
    decider: "disable"
    decision: "YES"
    explanation: "allocation disabling is ignored"
  }-
  6:  {
    decider: "awareness"
    decision: "YES"
    explanation: "no allocation awareness enabled"
  }-
  7:  {
    decider: "shards_limit"
    decision: "YES"
    explanation: "total shard limit disabled: [-1] <= 0"
  }-
  8:  {
    decider: "node_version"
    decision: "YES"
    explanation: "target node version [1.3.2] is same or newer than source node version [1.3.2]"
  }-
  9:  {
    decider: "disk_threshold"
    decision: "YES"
    explanation: "disk usages unavailable"
  }-
  10:  {
    decider: "snapshot_in_progress"
    decision: "YES"
    explanation: "shard not primary or relocation disabled"
  }-
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-11 21:05:40

终于解决了这个问题。不知何故,索引得到了一个过滤器,它阻止了碎片的分配和移动。

我移除过滤器,集群开始运行。

curl -XPUT localhost:9200/test/_ -d '{ "index.routing.allocation.include._id“:”}“

这将_id筛选器设置为空。这是以前的填充和防止过滤器永远匹配!

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

https://stackoverflow.com/questions/26307988

复制
相关文章

相似问题

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