查看所有仓库
curl -XGET 'http://localhost:9200/_snapshot'
或者:
curl -XGET 'http://localhost:9200/_snapshot/_all'
elasticsearch.yml 配置文件中加入快照仓库设置
path.repo: ["/data/es_bak"]
1、创建仓库
快照仓库命令的几个参数
location: 指定快照的存储位置。必须要有
compress: 指定是否对快照文件进行压缩. 默认是 true.
chunk_size: 如果需要在做快照的时候大文件可以被分解成几块。这个参数指明了每块的字节数。也可用不同的单位标识,比如:1g,10m,5k等,默认是 null (表示不限制块大小)。
max_restore_bytes_per_sec: 每个节点恢复数据的最高速度限制. 默认是 20mb/s
max_snapshot_bytes_per_sec: 每个节点做快照的最高速度限制。默认是 20mb/s
创建仓库命令
curl -XPUT 'http://127.0.0.1:9200/_snapshot/backup' -d '{"type": "fs","settings": {"location":"/data/es_bak","max_snapshot_bytes_per_sec" : "50mb", "max_restore_bytes_per_sec" :"50mb"}}'
2、备份所有索引
curl -XPUT 'http://127.0.0.1:9200/_snapshot/backup/es_2.0.0_demo-0327?wait_for_completion=true'
3、备份指定索引
curl -XPUT 'http://127.0.0.1:9200/_snapshot/backup/snapshot_1' -d '{"indices": "groupinfo,linesiteinfo"}?wait_for_completion=true'
4、恢复指定索引
curl -XPOST 'http://127.0.0.1:9200/_snapshot/backup/es_2.0.0_demo-0327/_restore' -d '{"indices": "groupinfo,linesiteinfo"}?wait_for_completion=true'
5、恢复所有索引
curl -XPOST 'http://127.0.0.1:9200/_snapshot/backup/es_2.0.0_demo-0327/_restore?wait_for_completion=true'
6、可以通过如下的命令将仓库里的es_2.0.0_demo-0327快照删除:
curl -XDELETE http://127.0.0.1:9200/_snapshot/backup/es_2.0.0_demo-0327