Elasticsearch快照备份与还原

目录

  • 1 备份和还原机器上的共同操作
    • 1.1 创建备份还原目录
    • 1.2 注册备份还原目录
  • 2 备份数据
  • 3 还原数据
  • 参考文献

1 备份和还原机器上的共同操作

1.1 创建备份还原目录

这里放到/opt/es_bak目录下

cd /opt
mkdir es_bak
# 为了避免权限问题,直接修改/opt/es_bak权限为777
chmod 777 /opt/es_bak

1.2 注册备份还原目录

修改elasticsearch.yml
添加如下配置

path.repo: ['/opt/es_bak']

重启elasticsearch

注册备份还原仓库(仓库名称为my_backup)

PUT http://地址:9200/_snapshot/my_backup/

参数

{
    "type": "fs",
    "settings": {
        "location": "/opt/es_bak",
        "max_snapshot_bytes_per_sec" : "50mb",
        "max_restore_bytes_per_sec" : "50mb",
        "compress" : true
    }
}

Elasticsearch快照备份与还原_第1张图片
这里执行完之后/opt/es_bak目录下还什么数据都没有

2 备份数据

(在my_backup仓库下备份数据,备份的名字为snapshot_20190709)

PUT http://地址:9200/_snapshot/my_backup/snapshot_20190709

指定备份的索引逗号分隔,不传默认备份所有索引

{
    "indices": "index1,index2"
}

?wait_for_completion=true 等待备份完

Elasticsearch快照备份与还原_第2张图片

备份完数据后就会在/opt/es_bak目录下生成备份的元数据
Elasticsearch快照备份与还原_第3张图片
查看备份状态

GET http://地址:9200/_snapshot/my_backup/snapshot_20190709

Elasticsearch快照备份与还原_第4张图片

3 还原数据

将备份机器上/opt/es_bak目录下的元数据拷贝到要还原的目标机器的备份还原目录下

在需要还原的机器上执行POST请求

POST http://地址:9200/_snapshot/my_backup/snapshot_20190709/_restore

Elasticsearch快照备份与还原_第5张图片

参考文献

https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html

你可能感兴趣的:(elasticsearch)