Elasticsearchバックアップと移行
1916 ワード
クラスタノードでは、次の操作が必要です。
マウントceph
mount -t ceph 10.255.228.232:6789:/ /mnt/cephfs -o name=admin,secretfile=/etc/ceph/admin.secret
バックアップディレクトリの作成(cephを使用したクラスタ共有ディレクトリが必要)
[root@test ~]# mkdir /mnt/cephfs/esbak
masterノードで/mnt/cephfs/esbak権限を調整する
[root@test ~]# chown es:es /mnt/cephfs/esbak
各ノードesユーザーのUID/GIDを統一し、masterノードesを基準とする(cephが採用されているため、倉庫タイムズの作成に同意しない)
[root@ceph122 esbak]# usermod -u 2003 es && groupmod -g 2003 es
(2003 master es uid、gid)
dataノードESインストールディレクトリ、データディレクトリのESユーザー権限を再付与
[root@ceph122 esbak]# chown -R es:es xxxx
elasticsearchを変更します.ymlファイル、pathを追加します.repo構成
path.repo: /mnt/cephfs/esbak
ノードの再起動
インプリメンテーションプロセス
src実施
倉庫を作成します.倉庫名はes_です.backup
curl -XPUT "http://192.168.75.13:9200/_snapshot/es_backup" -d '
{
"type": "fs",
"settings": {
"location": "/mnt/esbak",
"compress": true
}
}'
倉庫ステータスの表示
curl -XGET '192.168.75.13:9200/_snapshot/es_backup?pretty'
倉庫の削除(倉庫の削除スナップショットファイルは削除されません)
curl -XDELETE "192.168.75.13:9200/_snapshot/es_backup
インデックスデータをバックアップし、スナップショット名はインデックス名と一定の関係を保つことが望ましい
curl -XPUT "http://192.168.75.13:9200/_snapshot/es_backup/video" -d '
{
"indices": "video_resource_201805,video_police_case_201805,video_treat_case_201805"
}'
バックアップスナップショットの削除
curl -XDELETE "http://192.168.75.13:9200/_snapshot/es_backup/video"
dest実施
バックアップ・データの移行、他のクラスタでのリカバリ
curl POST "http://192.168.75.14:9200/_snapshot/es_backup/video/_restore"