すべてのプロダクト
Search
ドキュメントセンター

Elasticsearch:Elasticsearch クラスターのヘルスステータスの確認

最終更新日:Mar 27, 2026

ご利用の Alibaba Cloud Elasticsearch クラスターが完全に稼働しているかどうかを確認し、対応が必要な未割り当てのシャードを特定するために、Cluster health API を実行します。

前提条件

作業を開始する前に、次の要件を満たしていることを確認してください。

クラスターのヘルスステータスの確認

  1. ご利用の Elasticsearch クラスターの Kibana コンソールにログインします。詳細については、「Kibana コンソールへのログイン」をご参照ください。

  2. 左側のナビゲーションウィンドウで、[Dev Tools] をクリックします。

  3. [Console] タブで、次のコマンドを実行します。

    GET /_cluster/health

    成功した応答は、次の例のようになります。

    {
      "cluster_name" : "es-cn-45xxxxxxxxxxxxk1q",
      "status" : "green",
      "timed_out" : false,
      "number_of_nodes" : 2,
      "number_of_data_nodes" : 2,
      "active_primary_shards" : 18,
      "active_shards" : 36,
      "relocating_shards" : 0,
      "initializing_shards" : 0,
      "unassigned_shards" : 0,
      "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" : 100.0
    }
  4. status フィールドを確認して、クラスターのヘルスステータスを判断します。green の場合は、特に操作は必要ありません。yellow または red の場合は、他の操作を実行する前に影響を受けたインデックスを回復させてください。

    ステータス シャードの割り当て状況 運用上の影響
    green すべてのプライマリシャードおよびレプリカシャードが割り当て済み クラスターは完全に稼働中
    yellow すべてのプライマリシャードは割り当て済みですが、1 つ以上のレプリカシャードが未割り当て クラスターは稼働していますが、完全な冗長性が確保されていません。パスワード変更やクラスター構成のスペックアップなどの操作が完了するまでに通常より時間がかかります
    red 1 つ以上のプライマリシャードが未割り当て 一部のデータが利用できません

黄色のクラスターの復旧

クラスターは、レプリカシャードを割り当てられない場合に yellow 状態になります。これは通常、設定されたレプリカ数が「利用可能なノード数-1」を超えることが原因です。たとえば、クラスターに 3 つのノードがあり、あるインデックスがプライマリシャードあたり 3 つのレプリカシャードを持つように設定されている場合、すべてのレプリカシャードを割り当てることができず、クラスターは yellow になります。

影響を受けたインデックスを特定して修正するには、次の手順を実行します。

  1. すべてのインデックスのステータスを照会し、未割り当てのレプリカシャードを持つインデックスを特定します。

    curl -u <username>:<password> http://<host>:9200/_cat/indices

    出力結果で、yellow ステータスのインデックスを探します。このインデックスには未割り当てのレプリカシャードがあります。

    Index that has unassigned replica shards

  2. 影響を受けたインデックスのレプリカ数を、ノード数-1 を超えないように減らします。

    curl -XPUT -u <username>:<password> http://<host>:9200/<index-name>/_settings -H 'Content-Type: application/json' -d '{"index":{"number_of_replicas":(<number-of-nodes - 1>)}'

    たとえば、クラスターに 3 つのノードがある場合は、number_of_replicas2 に設定します。

    次のプレースホルダーを置き換えてください。

    プレースホルダー 説明
    <username> Kibana のユーザー名
    <password> Kibana のパスワード
    <host> ご利用のクラスターのエンドポイント
    <index-name> 未割り当てのレプリカシャードを持つインデックスの名前
    <number-of-nodes - 1> ご利用のクラスター内のデータノード数から 1 を引いた値
説明 Elasticsearch クラスターの構成をカスタマイズしたり、スケールアウトしたり、再起動したりした後は、number_of_replicas を更新後のノード数に合わせて調整してください。レプリカ数をクラスター規模と同期させることで、信頼性と安定性が向上します。