「データベースを操作する場合、バックアップは非常に重要な機能です。 Elasticsearch では、スナップショットを使用して、特定のインデックス、データ ストリーム、グローバル状態、機能、またはクラスター全体のバックアップを作成できます。
ただし、すべてのデータベースと同様に、クラスターの状態は時間の経過とともに変化し、スナップショットの頻度に依存する可能性があります。これにより、現在のスナップショットによって参照されなくなった古いデータがスナップショットに含まれる可能性があります。
この投稿では、Elasticsearch スナップショット リポジトリ API の使用方法について説明します。これにより、スナップショット リポジトリのコンテンツをスキャンし、現在のデータを確認できます。その後、API は参照されていないデータを削除します。」
飛び込みましょう。
ノート : 参照されていないデータは、リポジトリ、スナップショット、またはクラスターのパフォーマンスに影響を与えないことを理解しておくことをお勧めします。ただし、大規模な環境では非常に重要なディスク領域を占有します。
リクエスト構文
次のコードは、スナップショット クリーンアップ API を照会するための要求構文を示しています。
役職 / _スナップショット /< リポジトリ >/ _掃除API エンドポイントには、セキュリティと権限の構成によっては、クラスターに対する「管理」権限が必要になる場合があります。
パス パラメータ
リクエストは、次のパス パラメータをサポートしています。
- <リポジトリ> – クリーンアップ操作が実行されるリポジトリの名前を指定します。これは必須パラメーターです。
クエリ パラメータ
クエリを変更するには、次のクエリ パラメータを含めることができます。
- master_timeout – マスター ノードからの応答を待機する期間を定義します。期間が経過しても応答が受信されない場合、要求はエラーで失敗します。マスター タイムアウト期間のデフォルト値は 30 秒です。
- タイムアウト – 応答の待機時間を指定します。デフォルトは 30 秒です。
レスポンスボディ
次のプロパティが応答本文に含まれます。
- 結果 – これは、クリーンアップ操作によって実行される統計を含むオブジェクトです。これらの統計には次のものが含まれます。
a. 削除されたバイト – クリーンアップ API によって削除されたバイト数。
b. 削除されたブロブ – リポジトリから削除されたバイナリ ラージ オブジェクトの数。
例
次の例は、「sample_repo」という名前のスナップショット リポジトリでクリーンアップ操作を実行する方法を示しています。
カール -XPOST 「http://localhost:9200/_snapshot/sample_repo/_cleanup」 -H 「kbn-xsrf: レポート」出力
{'結果' : {
'deleted_bytes' : 100 、
'deleted_blob' : 25
}
}
Kibana ダッシュボードを使用して、スナップショット リポジトリのクリーンアップを実行することもできます。
[管理] -> [スタック管理] -> [スナップショットと復元] -> [リポジトリ] に移動します。
ターゲット リポジトリを開き、クリーン リポジトリを選択します。
クリーンアップが完了すると、リクエストはクリーンアップされた統計を表示する必要があります。
結論
このチュートリアルでは、Elasticsearch API と Kibana ダッシュボードを使用してスナップショット リポジトリのクリーンアップを実行するプロセスについて説明しました。詳細については、ドキュメントを収集してください。
読んでくれてありがとう!!