天天看點

Elasticsearch叢集UNASSIGNED shareds問題 修複

  線上有3台es組成叢集,其他有兩台非正常關機了,早上過來發現叢集狀态為紅色,提示"24 UNASSIGNED shareds":

<a href="http://s3.51cto.com/wyfs02/M00/88/7E/wKiom1f5vhWwSzZxAAVBvKFLAuU513.jpg-wh_500x0-wm_3-wmp_4-s_515539593.jpg" target="_blank"></a>

1)檢視叢集相關資訊:

<a href="http://s3.51cto.com/wyfs02/M00/88/7E/wKiom1f5vpKixvpRAAJNGB-vz2s407.jpg-wh_500x0-wm_3-wmp_4-s_3445600555.jpg" target="_blank"></a>

記下這個node的id号;

2)然後找出UNASSIGNED 的相關資訊,友善後續修改!

# curl -XGET http://localhost:9200/_cat/shards|grep UNASSIGNED 

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100 30528  100 30528    0     0   705k      0 --:--:-- --:--:-- --:--:--  745k

graylog_83  1 p UNASSIGNED                                             

graylog_83  1 r UNASSIGNED                                             

graylog_83  0 p UNASSIGNED                                             

graylog_83  0 r UNASSIGNED                                             

graylog_82  1 p UNASSIGNED                                             

graylog_82  1 r UNASSIGNED                                             

graylog_85  2 p UNASSIGNED                                             

graylog_85  2 r UNASSIGNED                                             

graylog_85  1 p UNASSIGNED                                             

graylog_85  1 r UNASSIGNED                                             

graylog_84  0 p UNASSIGNED                                             

graylog_84  0 r UNASSIGNED                                             

graylog_87  1 p UNASSIGNED                                             

graylog_87  1 r UNASSIGNED                                             

graylog_86  3 p UNASSIGNED                                             

graylog_86  3 r UNASSIGNED                                             

graylog_86  1 p UNASSIGNED                                             

graylog_86  1 r UNASSIGNED                                             

graylog_89  3 p UNASSIGNED                                             

graylog_89  3 r UNASSIGNED                                             

graylog_88  1 p UNASSIGNED                                             

graylog_88  1 r UNASSIGNED                                             

graylog_88  0 p UNASSIGNED                                             

graylog_88  0 r UNASSIGNED                                             

3)然後依次修改以上UNASSIGNED     ,指令為:

  curl -XPOST 'localhost:9200/_cluster/reroute' -d '{

    "commands" : [ {

        "allocate" : {

            "index" : "graylog_83",

            "shard" : 1,

            "node" : "Auq82gfGQVWgOBw6S7ajRQ",

            "allow_primary" : true

        }

    }]

}'

PS:

index就是索引的名稱:也就是graylog_88,graylog_86,graylog_87.....

node:就是在哪個節點上執行;

shared:分片的編号!

本文轉自 shine_forever 51CTO部落格,原文連結:http://blog.51cto.com/shineforever/1859734

繼續閱讀