ELKエコ:esデータバックアップとリカバリ
4215 ワード
データバックアップ
説明:
Esは倉庫とスナップショットの概念を導入してデータのバックアップと回復を実現し、elasticsearch.ymlでは倉庫のbaseディレクトリを指定し、倉庫を作成し、スナップショットを指定した倉庫に作成するとインデックスのバックアップが実現します.
解決された問題:
質疑応答
ステップの実行
# windows ,
path.repo: ["D:\\program\\elasticsearch-5.1.1\\data\\back"]
POST _snapshot/my_backup_1
{
"type": "fs",
"settings": {
"location": "D:\\program\\elasticsearch-5.1.1\\data\\back\\my_backup_1",
"max_snapshot_bytes_per_sec": "20mb",
"max_restore_bytes_per_sec": "20mb",
"compress": true
}
}
構成説明:注意要求方式:POST要求は既存の倉庫構成を更新し、PUTは倉庫を再作成します.type:倉庫のタイプは共有ファイルシステムlocation:倉庫のパスを指定し、pathである必要があります.repoのサブディレクトリmax_snapshot_bytes_per_sec:スナップショットデータが倉庫に入ると、このパラメータはプロセスのストリーム制限状況を制御することができ、デフォルトは毎秒20 M max_である.restore_bytes_per_sec:倉庫からデータを復元する場合、このパラメータはプロセスのストリーム制限状況を制御し、デフォルト値:毎秒20 M注意:保留中のパスがリモートディレクトリの場合、ネットワークトラフィックが満たされないように合理的に設定する必要があります.compress:データが圧縮されているかどうか
# ,
PUT _snapshot/my_backup_1/snapshot_1
# wait_for_completion=true 。
PUT _snapshot/my_backup_1/snapshot_1?wait_for_completion=true
PUT _snapshot/my_backup_1/snapshot_3
{
"indices": "my_index_1,my_index_2",
"ignore_unavailable": true,
"include_global_state": true
}
構成説明:indices:インデックスバックアップignore_を指定するunavailable:indicesで指定したインデックスの一部が存在しない場合、無視するかどうかは、デフォルトでtrueで存在しないインデックスを無視します.include_global_state:クラスタのグローバルステータスがスナップショットの一部として保存されるのを阻止するかどうか.
これでバックアップ操作が完了する.
スナップショットでのリカバリ
スナップショットからのリカバリ
#
POST _snapshot/my_backup/snapshot_1/_restore
#
POST _snapshot/my_backup/snapshot_1/_restore?wait_for_completion=true
スナップショットのインデックスデータをすべて復元する注意:関連するインデックスがすでに存在する場合は、まずインデックスをPOST index_を閉じる必要があります.name/_closeインデックスを開くPOST index_name/_open
指定したインデックスを復元し、名前を変更
POST _snapshot/my_backup/snapshot_2/_restore
{
"indices": "my_index_1,my_index_2",
"rename_pattern": "my_index_(.+)",
"rename_replacement": "restored_my_index_$1"
}
バックアップ関連の残りのAPI
スナップショットの情報の取得
#
GET _snapshot/my_backup/snapshot_1
#
GET _snapshot/my_backup/_all
スナップショットの削除
DELETE _snapshot/my_backup/snapshot_2
スナップショットの進行状況の監視
GET _snapshot/my_backup/snapshot_1
GET _snapshot/my_backup/snapshot_1/_status
この2つのAPIはいずれもスナップショットの進行状況の違いを監視することができる:第2のAPIはより詳細な監視情報を提供する第1のAPIはスナップショットメカニズムが同じスレッドプールを使用し、スナップショットが非常に大きなスライスである場合、ステータス更新間隔が大きくなる.APIは競合スレッドプールリソースであり、第2のAPIは個別のスレッドプールで実行されるからである.総合的に考慮してスナップショットAPIは第2のAPIを使用して結果を返す
{
"snapshots": [
{
"snapshot": "snapshot_3",
"repository": "my_backup",
"state": "IN_PROGRESS",
"shards_stats": {
"initializing": 0,
"started": 1,
"finalizing": 0,
"done": 4,
"failed": 0,
"total": 5
},
........
]
}
スナップショットのキャンセル
# ,
DELETE _snapshot/my_backup/snapshot_2
作者:3517 a 85 fd 522リンク:https://www.jianshu.com/p/f6d10f97a20d出典:簡書の著作権は作者の所有である.商業転載は著者に連絡して許可を得てください.非商業転載は出典を明記してください.