Kibana の開発ツールコンソールでコマンドを実行して、クラスターのヘルスステータス、ノードの負荷、シャードの割り当て、およびインデックス情報を確認し、日常的なモニタリングやトラブルシューティングを行うことができます。
前提条件
Alibaba Cloud Elasticsearch インスタンスが必要です。 詳細については、「Alibaba Cloud Elasticsearch クラスターの作成」をご参照ください。
操作手順
Elasticsearch クラスターの Kibana コンソールにログインします。
詳細な手順については、「Kibana コンソールへのログイン」をご参照ください。 このトピックのすべてのコマンドは、 [開発ツール] コンソールで実行できます。
左側のナビゲーションペインで、 [開発ツール] をクリックします。
[コンソール] で、次のコマンドを実行してクラスターのヘルスステータスを確認します。
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 }statusフィールドは、クラスターのヘルスステータスを示します。有効な値はgreen、yellow、およびredです。ステータス
状態
説明
red
利用できないプライマリーシャードがあります。
1 つ以上のプライマリーシャードが未割り当てです。
yellow
プライマリーシャードはすべて利用可能ですが、利用できないレプリカシャードがあります。
1 つ以上のレプリカシャードが未割り当てです。
green
すべてのプライマリーシャードとレプリカシャードが利用可能です。
すべてのプライマリーシャードとレプリカシャードが割り当てられています。
クラスターのステータスが
yellowの場合、パスワードの変更やインスタンスのアップグレードなどの操作が大幅に遅くなる可能性があります。これらの操作を実行する前に、クラスターをgreenステータスに戻してください。ステータスがyellowになる一般的な原因は、インデックスのレプリカ数が、利用可能なノード数から 1 を引いた数よりも多いことです。この問題を解決するには、次の手順に従ってください。ステータスが
yellowであるインデックスを検索します:curl -u <username>:<password> http://<host>:9200/_cat/indices影響を受けるインデックスのレプリカ数を、利用可能なノード数から 1 を引いた値に調整します。
curl -XPUT -u <username>:<password> http://<host>:9200/<problematic_index_name>/_settings -H 'Content-Type: application/json' -d '{"index":{"number_of_replicas":<number_of_nodes - 1>}}'説明インスタンスを再起動またはスケーリングした後は、新しいノード数に合わせてインデックスのレプリカ数を調整してください。
クラスターコマンド
コマンド | 説明 |
GET /_cat/health?v | クラスターのヘルスステータス ( |
GET /_cluster/health?pretty=true | クラスターのヘルスステータスを返します。
|
GET /_cluster/stats | CPU や JVM の情報を含む、クラスターの統計情報を返します。 |
GET /_cluster/state | ノードやシャードを含む、クラスターの状態に関する詳細情報を返します。 |
GET /_cluster/pending_tasks | クラスター内の保留中のタスクを返します。 |
GET /_cluster/settings | クラスター全体の設定を返します。 |
ノードコマンド
コマンド | 説明 |
GET /_cat/master?v | マスターノードの情報を返します。 |
GET /_cat/nodes?v | CPU 使用率、ヒープメモリ使用量、負荷など、各ノードの現在のステータスを返します。 |
GET /_cat/nodeattrs?v | 各ノードのカスタム属性を返します。 |
GET /_nodes/stats?pretty=true | ノードの統計情報を返します。 |
GET /_nodes/process | ノードのプロセス情報を返します。 |
GET /_nodes/hot_threads | CPU を大量に消費しているタスク (ホットスレッド) を返します。 |
GET /_nodes/<nodeip>/jvm,process,os | 指定したノードの JVM、プロセス、およびオペレーティングシステム (OS) の情報を返します。 |
GET /_cat/plugins?v | 各ノードにインストールされているプラグインを返します。 |
GET /_cat/thread_pool?v | スレッドプールのタイプ、アクティブなスレッド数、キューサイズなど、各ノードのスレッドプールの統計情報を返します。 |
シャードコマンド
コマンド | 説明 |
GET /_cat/shards?v | 各シャードのインデックス名、シャード ID、タイプ (プライマリまたはレプリカ)、ステータス、ドキュメント数、ディスク使用量などの詳細情報を返します。失敗したシャードについては、その失敗理由も出力に含まれます。特定のインデックスのシャード情報を表示するには、 |
GET /_cat/allocation?v | 各ノードへのシャードの割り当て状況を返します。 |
GET /_cat/recovery?v | 各シャードの復旧の進捗状況を返します。 |
セグメントコマンド
GET /_cat/segments?v各インデックスについて、セグメント名、属するシャード、メモリまたはディスクの使用量、ディスクにフラッシュされたかどうかといったセグメント情報を返します。また、GET _cat/segments/<index>?v を実行することで、特定のインデックスのセグメント情報を表示することもできます。
インデックスコマンド
コマンド | 説明 |
GET /_cat/indices?v | すべてのインデックスに関するヘルスステータス、状態、シャード数とレプリカ数、ドキュメント数などの詳細情報を返します。特定のインデックスの情報を表示するには、 |
GET /_cat/aliases?v | すべてのインデックスエイリアスの情報 (参照先のインデックスやルーティング設定など) を返します。 |
マッピングコマンド
コマンド | 説明 |
GET /_mapping | すべてのインデックスのマッピングを返します。 |
GET /<index>/_mapping | 特定のインデックスのマッピングを返します。 |
ドキュメントコマンド
コマンド | 説明 |
GET /_cat/count?v | クラスター内の総ドキュメント数を返します。特定のインデックスのカウントを表示するには、 |
GET /<index>/_doc/<id> | 特定のドキュメントからデータを取得します。 |
スナップショットコマンド
コマンド | 説明 |
GET _snapshot/_all | すべてのスナップショットを返します。 |
GET _snapshot/<snapshot_name>/_status | 指定したスナップショットの進捗状況を返します。 |