es数据备份与恢复

1.创建快照仓

PUT _snapshot/my_backup 
{
    "type": "fs", 
    "settings": {
        "location": "/mount/backups/my_backup" 
    }
}
//使用POST 请求可更新仓库设置

my_backup:自定义仓库名。

location:指定仓库位置。

settings可选参数:

max_restore_bytes_per_sec,节点恢复速率。默认20mb/s。

max_snapshot_bytes_per_sec,每个节点快照速率。默认20mb/s。

常见错误:

“reason”: “[my_backup] location [/mount/backups/my_backup_location] doesn’t match any of the locations specified by path.repo because this setting is empty”

在elasticsearch.yml中添加:path.repo: [“创建时location的值”]

2.创建快照

//异步备份所有打开的索引
PUT  _snapshot/my_backup/snapshot_1
​
//同步备份部分索引
PUT _snapshot/my_backup/snapshot_1?wait_for_completion=true
{
    "indices": "index_1,index_2"
}
​
//查看单个快照全部信息
GET _snapshot/my_backup/snapshot_1
​
//查看所有快照信息
GET _snapshot/my_backup/_all
​
//删除快照
DELETE _snapshot/my_backup/snapshot_1

snapshot_1:自定义快照名

indices: 指定需要备份的索引,多个已逗号分隔

3.查看快照状态

GET _snapshot/my_backup/snapshot_1/_status

stage字段名词解释:

INITIALIZING:分片正在检查集群状态以查看是否可以对其进行快照。这通常非常快。

TARTED:数据正在传输到存储库。

FINALIZING:数据传输完成;分片现在正在发送快照元数据。

DONE:快照完成!

FAILED:快照过程中遇到错误,无法完成此shard/index/snapshot。检查您的日志以获取更多信息。

注:如长时间创建,可以执行删除即取消快照

4.快照恢复

//默认恢复该快照中的所有索引,默认异步,可使用wait_for_completion=true,改为同步
POST _snapshot/my_backup/snapshot_1/_restore
​
//从快照中恢复某个索引
POST /_snapshot/my_backup/snapshot_1/_restore
{
    "indices": "index_1"    
}
//查看还原进度
GET index_1/_recovery

恢复常用参数:

rename_pattern: “index_(.+)” rename_replacement :新索引名,恢复时将某索引重命名 ,与rename_pattern正则匹配使用 include_global_state: 是否恢复集群的状态 注:已经存在的index只有在关闭之后才能被恢复

//关闭
POST index_1/_close
//开启
POST index_1/_open
    原文作者:#585858
    原文地址: https://blog.csdn.net/hehe8881/article/details/121652483
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞