この記事では、特定のスナップショットに参加している各シャードの詳細な説明を取得する方法について説明します。
Elasticsearch で特定のスナップショットのステータスを取得するには、スナップショット ステータスの取得 API エンドポイントを使用します。
リクエスト構文
リクエストの構文は次のとおりです。
GET_スナップショット / _状態
GET_スナップショット /< リポジトリ >/ _状態
GET_スナップショット /< リポジトリ >/< スナップショット >/ _状態
リクエストは、次のパス パラメータをサポートしています。
- <リポジトリ> – スナップショット リポジトリの名前。これは、システム全体のクエリではなく、特定のリポジトリにリクエストの範囲を制限するのに非常に役立ちます。
- <スナップショット> – ターゲット スナップショットの名前を指定します。複数のスナップショットをカンマ区切りのリストとして指定することもできます。
リクエスト パラメータでスナップショットを省略して、現在実行中のスナップショットに関する情報を取得できます。
レスポンスボディ
要求は、スナップショットに関する詳細情報を返す必要があります。応答に含まれる情報は次のとおりです。
- リポジトリ – スナップショットが存在するリポジトリの名前。
- スナップショット – スナップショットの名前。
- uuid – スナップショットの UUID。
- 州 – スナップショットの現在の状態。スナップショットは次の状態になります。
- Include_global_state – 指定したスナップショットにグローバル クラスタの状態が含まれているかどうかを示します。
- シャード統計 – 破片の数を表示します。
- 統計 – スナップショット内のファイル数とファイルのサイズに関する詳細。
a. 失敗した – エラーで終了し、バックアップ データの復元に失敗したスナップショット。
b. 開始しました – スナップショットが現在実行中であることを示します。
c. 部分的 – グローバルクラスターの状態は復元されましたが、少なくとも 1 つのシャードのデータが正常に保存されなかったことを示しています。
d. 成功 – スナップショットが正常に終了したことを示します。
これらは、スナップショット ステータスから返される情報の一部です。
Elasticsearch スナップショットの作成
Elasticsearch Get スナップショット API の使用方法をわかりやすく説明するために、サンプル スナップショットを作成してみましょう。このセクションでは、Elasticsearch リポジトリの作成の基本や、Elasticsearch スナップショットのその他の要件については説明しないことに注意してください。
詳細については、ドキュメントを確認してください。
elk_bakcups というリポジトリがあるとします。次に示すように、リクエストを使用してそのリポジトリにスナップショットを作成できます。
カール -XPUT 「http://localhost:9200/_snapshot/elk_backups/test_snapshot?wait_for_completion=true」 -H 「kbn-xsrf: レポート」前の要求は、指定されたリポジトリでスナップショットの作成を初期化します。
ノート 注: スナップショットの作成が完了するまでに必要な時間は、さまざまな要因によって異なります。
Elasticsearch スナップショット ステータスの取得
スナップショット作成プロセスを初期化したら、次のクエリを実行してそのステータスを確認できます。
カール -XGET 'http://localhost:9200/_snapshot/elk_backups/test_snapshot/_status' -H 「kbn-xsrf: レポート」これにより、スナップショットのステータスに関する詳細情報が返されます。出力例は次のとおりです。
{「スナップショット」 : [
{
「スナップショット」 : 'test_snapshot' 、
「リポジトリ」 : 'each_backups' 、 < 強い >
強い > 「ウイド」 : 「9oOJtTunR_WC-1a7NA-9WQ」 、
'州' : '成功' 、
'include_global_state' : 真実 、
'shards_stats' : {
「初期化中」 : 0 、
「はじめました」 : 0 、
「ファイナライズ」 : 0 、
'終わり' : 94 、
'失敗した' : 0 、
'合計' : 94
} 、
「統計」 : {
'増分' : {
「ファイル数」 : 282 、
'size_in_bytes' : 750304
} 、
'合計' : {
「ファイル数」 : 692 、
'size_in_bytes' : 62159894
} 、
'start_time_in_millis' : 1663770043239 、
'time_in_millis' : 26212
} 、
「インデックス」 : { < 強い >
強い > 「私のデータストリーム」 : {
'shards_stats' : {
「初期化中」 : 0 、
「はじめました」 : 0 、
「ファイナライズ」 : 0 、
'終わり' : 1 、
'失敗した' : 0 、
'合計' : 1
} 、
「統計」 : {
'増分' : {
「ファイル数」 : 0 、
'size_in_bytes' : 0
} 、
'合計' : {
「ファイル数」 : 10 、
'size_in_bytes' : 13518
} 、
- - - - - - - - -出力 切り捨てられた------------------------
Kibana では、[スタック管理 - スナップショットと復元] セクションに移動して、スナップショットのステータスを確認できます。
ターゲット スナップショットを選択し、詳細を表示します。
ノート : Kibana は、Elasticsearch get snapshot status API によって提供されるような包括的な詳細を提供しないことに注意してください。
結論
この投稿では、特定のスナップショットに関する詳細情報を取得できるスナップショット ステータス取得 API の操作の基本について説明しました。
読んでくれてありがとう!