zoukankan      html  css  js  c++  java
  • Elasticsearch强制重置未分配的分片(unassigned)

    强制重置未分片的分片,这个问题源自于Elasticsearch维护中,Node意外退出的场景。

    意外退出后Elasticsearch由于网络原因或者jvm性能压力,未能短时间内分配分片。

    看一下分片的状态。可以看到有一些分片处于未分配状态。

    curl http://10.93.21.21:8049/_cat/shards

    我们这里是node-client09节点挂掉了,重启这个节点之后,通过下面的脚本,可以将分片重新分派到node-client09。

    NODE="node-client09"  
    IFS=$'
    '  
    for line in $(curl -s 'http://10.93.21.21:8049/_cat/shards' | fgrep UNASSIGNED); do  
      INDEX=$(echo $line | (awk '{print $1}'))  
      SHARD=$(echo $line | (awk '{print $2}'))  
      echo $INDEX
      echo  $SHARD
      curl -XPOST 'http://10.93.21.21:8049/_cluster/reroute' -d '{  
         "commands": [  
            {  
                "allocate": {  
                    "index": "'$INDEX'",  
                    "shard": '$SHARD',  
                    "node": "'$NODE'",  
                    "allow_primary": true  
              }  
            }  
        ]  
      }'  
    done 
  • 相关阅读:
    自动生成接口文档
    Haystack全文搜索
    redis操作
    缓存及跨域问题
    url控制器、解析器、响应器、分页器
    频率组件
    序列化、认证、权限、视图回顾
    认证、权限、视图组件
    序列化组件
    Rest Framework
  • 原文地址:https://www.cnblogs.com/kangoroo/p/8004912.html
Copyright © 2011-2022 走看看