elasticsearch snapshot


一、Repositories

在elasticsearch.yml文件中增加path.repo路徑配置:

$ vim /etc/elasticsearch/elasticsearch.yml

path.repo: ["/home/ccx/es/backups", "/mount/longterm_backups"]

重啟elasticsearch

$ service elasticsearch restart

創建文件夾作為repository的目錄,並修改文件夾權限

$ mkdir -p /home/ccx/es/backups

$ chmod 755 /home/ccx/es/backups/

$ chown elasticsearch:elasticsearch /home/ccx/es/backups/

創建repository

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup' -d '{

"type": "fs",

"settings": {

"location": "/home/ccx/es/backups/my_backup",

"compress": true

}

}'

查看repository信息

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup?pretty'

可以使用POST 請求,用來修改已經存在的repository

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup' -d '{

"type": "fs",

"settings": {

"location": "/home/ccx/es/backups/my_backup",

"max_snapshot_bytes_per_sec" : "50mb",

"max_restore_bytes_per_sec" : "50mb"

}

}'

二、Snapshot

創建快照

備份工作在后台運行

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1'

同步執行,加wait_for_completion 標志,備份完成后才返回,如果數據量大的話,會花很長時間

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2?wait_for_completion=true'

如果只想備份部分索引的話,可以加上indices 參數:

$ curl -XPUT 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_3' -d '{

"indices": "index_1,index_2",

"ignore_indices": "missing"

}'

查看備份信息

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2'

如果要查看所有索引的信息,使用如下api:

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/_all'

另外還有個一api可以看到更加詳細的信息:

$ curl -XGET 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2/_status'

刪除備份

$ curl -XDELETE 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_2'

三、Restore

恢復snapshot_1里的全部索引:

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1/_restore'

api額外的參數:

$ curl -XPOST 'http://192.168.212.190:9200/_snapshot/my_backup/snapshot_1/_restore' -d '{

"indices": "index_1",

"rename_pattern": "index_(.+)",

"rename_replacement": "restored_index_$1"

}'

參數indices 設置只恢復index_1索引,參數rename_pattern 和rename_replacement 用來正則匹配要恢復的索引,並且重命名。和備份一樣,api會立刻返回值,然后在后台執行恢復,使用wait_for_completion 標記強制同步執行。

以使用下面兩個api查看狀態

$ curl -XGET 'http://192.168.212.190:9200/_recovery/'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM