このトピックでは、クラスターの再起動または更新を実行したときに発生するエラーの詳細、考えられる原因、および解決策について説明します。
問題の説明
Elasticsearch クラスターの再起動または更新を実行すると、システムから次のエラーメッセージが報告されます。
クラスターが正常でないか、クローズ状態のインデックスが含まれているため、操作を実行できません。クラスターが正常になるか、インデックスが有効になった後に、操作を再実行することをお勧めします。
原因と解決策
クラスターが次の条件の 1 つ以上に該当する場合、システムは上記のエラーメッセージを報告します。
- クラスターにクローズ状態のインデックスが含まれています。
GET /_cat/indices?vコマンドを実行して、インデックスの状態を表示できます。インデックスがクローズ状態の場合は、POST /<index_name>/_openコマンドを実行して、インデックスの状態をオープンに設定できます。 - クラスターが赤または黄色の色で示される状態です。
GET /_cat/health?vコマンドを実行して、クラスターの状態を表示できます。次の表は、一般的な原因と解決策を示しています。原因 解決策 シャードが自動的に割り当てられ、最大再試行回数に達しました。最大 5 回の再試行が許可されます。 POST /_cluster/reroute?retry_failed=trueコマンドを実行して、シャードを再割り当てすることをお勧めします。インデックスのプライマリシャードとレプリカシャードが同じノードに割り当てられています。これは、シャードのコピーが既に存在する同じノードにシャードを割り当てることができないというエラーメッセージで示されます。 レプリカシャードの数を 0 に設定し、クラスターが正常になったら 1 に戻すことをお勧めします。 同時に割り当てることができるシャードの最大数に達しました。 シャードが割り当てられるまで待ちます。一定期間経過してもシャードが割り当てられない場合は、 GET _cluster/allocation/explainコマンドを実行して、シャードが割り当てられない理由を表示できます。クラスター内の 1 つ以上のノードが切断されています。 GET _cat/nodes?vコマンドを実行して、クラスター内の 1 つ以上のノードが切断されているかどうかを確認します。切断されているノードを再起動することをお勧めします。クラスター内のノードのディスク使用率が高い。 ノードのディスク使用率が 85% 未満になったら、ノードを再起動して診断結果を正常にすることをお勧めします。 クラスターのヒープメモリの使用率が高く、操作が中断されています。 スロットリングを実行し、履歴インデックスの状態をクローズに設定して、メモリ消費量を削減することをお勧めします。 その他の原因 クラスターに割り当てられていないシャードが含まれている場合は、クラスターの CPU 使用率とヒープメモリの使用率を表示し、 GET _cluster/allocation/explainコマンドを実行して、シャードが割り当てられない理由を取得できます。 - クラスターは正常な状態ですが、負荷が高い。次の表に、一般的なトラブルシューティング方法、原因、および解決策を示します。
トラブルシューティング方法 原因 解決策 - ディスク使用率の監視データを表示します。
GET _cat/allocationコマンドを実行します。GET _cluster/allocation/explainコマンドを実行します。- ログを表示します。
ディスク使用率が 85% に達しました。 ディスク使用率が 85% に達すると、シャードの作成に影響を与える可能性があります。この問題を解決するには、次の操作の 1 つ以上を実行することをお勧めします。操作を実行した後、ディスク使用率の監視データを表示して、ディスク使用率が 85% 未満に低下したかどうかを確認できます。 - 履歴インデックスを削除します。
- ディスクを拡張します。
- レプリカシャードの数を 0 に設定します。
CPU 使用率とホットスレッドに関する情報の監視データを表示します。 CPU 使用率が 85% に達しました。 CPU 使用率が 85% に達すると、クラスターの安定性に影響を与える可能性があります。読み取り QPS と書き込み QPS の監視データを表示し、トラフィックを削減するか、クラスターをスケールアウトするか、クラスターの構成をアップグレードできます。 ヒープメモリの使用率、ログ、および古い gc コレクション数と古い gc collecting.ms メトリックの監視データを表示します。 ヒープメモリの使用率が 75% 以上です。 ヒープメモリの使用率が過度に高い場合、クラスターの安定性に影響を与える可能性があります。問題を解決するには、次の操作の 1 つ以上を実行することをお勧めします。 - 読み取りおよび書き込みトラフィックを削減します。
- クラスターの構成をアップグレードします。
- 履歴インデックスの状態をクローズに設定して、メモリ消費量を削減します。
NodeLoad_1m(value) メトリックの監視データを表示します。 ノードの NodeLoad_1m(value) メトリックの値が、ノードの vCPU 数よりも大きくなっています。 ノードの NodeLoad_1m(value) メトリックの値がノードの vCPU 数よりも大きい場合、ノードの負荷が高くなっています。読み取り QPS、書き込み QPS、およびディスクスループットの監視データを表示し、読み取りまたは書き込みトラフィックを削減するか、クラスターをスケールアウトするか、できるだけ早くクラスターの構成をアップグレードできます。 説明- メトリックの詳細については、「メトリックと例外処理の推奨事項」をご参照ください。
- ログの詳細については、「クエリログ」をご参照ください。