Unassigned shardsのデータがある場合の対処方法について
1台運用でのレプリカ
1台のサーバーのみでElasticsearchを運用する場合、レプリカは作成できません。 しかし、デフォルト設定ではレプリカが1になっているため、デフォルト設定のまま運用すると、レプリカに対してUnassigned shardsのデータができます。
この場合、レプリカの数を0に変更すれば、レプリカに対してUnassigned shardsのデータは無くなります。
現状の確認
以下では、active_shardsが9個、unassigned_shardsが5個が確認できます。
curl http://localhost:9200/_cluster/health?pretty { "cluster_name" : "elasticsearch", "status" : "yellow", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 9, "active_shards" : 9, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 5, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 64.28571428571429 }
シャードの詳細確認は以下のようになります。"r"と表示されている行がレプリカになります。 また、"p"は、プライマリシャードになります。
curl -XGET localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.reason .kibana 0 p STARTED logstash-2018.11.10 2 p STARTED logstash-2018.11.10 2 r UNASSIGNED CLUSTER_RECOVERED logstash-2018.11.10 1 p STARTED logstash-2018.11.10 1 r UNASSIGNED CLUSTER_RECOVERED logstash-2018.11.10 4 p STARTED logstash-2018.11.10 4 r UNASSIGNED CLUSTER_RECOVERED logstash-2018.11.10 3 p STARTED logstash-2018.11.10 3 r UNASSIGNED CLUSTER_RECOVERED logstash-2018.11.10 0 p STARTED logstash-2018.11.10 0 r UNASSIGNED CLUSTER_RECOVERED .monitoring-es-6-2018.11.26 0 p STARTED .monitoring-kibana-6-2018.11.25 0 p STARTED .monitoring-es-6-2018.11.25 0 p STARTED
レプリカを0にする
レプリカを0に変更すると、レプリカに対するUnassigned shardsを消すことができます。 全てのインデックスに対してレプリカを0にする場合は、以下を実行します。
curl -XPUT -H 'Content-Type: application/json' http://localhost:9200/_settings?pretty -d ' { "index" : { "number_of_replicas" : 0 } }'
成功すると、以下のようなレスポンスがあります。
{ "acknowledged" : true }
シャードの詳細を確認すると、"UNASSIGNED CLUSTER_RECOVERED"になっていたレプリカの行が消えました。
curl -XGET localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.reason .kibana 0 p STARTED logstash-2018.11.10 2 p STARTED logstash-2018.11.10 1 p STARTED logstash-2018.11.10 4 p STARTED logstash-2018.11.10 3 p STARTED logstash-2018.11.10 0 p STARTED .monitoring-es-6-2018.11.26 0 p STARTED .monitoring-kibana-6-2018.11.25 0 p STARTED shop 0 p STARTED .monitoring-es-6-2018.11.25 0 p STARTED