ElasticSearch快照备份与还原

ElasticSearch快照备份与还原

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

++注意:一定要在原始集群和要迁移的集群上都运行++

1.1创建备份还原目录

这里放到/opt/backup_es目录下

bash 复制代码
cd /opt
mkdir backup_es
#为了避免权限问题,直接修改该文件夹权限为777
chmod 777 /opt/backup_es

1.2 注册备份还原目录

修改elasticsearch.yml

添加如下配置(如果是集群,则每一个数据节点都得配置)

bash 复制代码
path.repo: /data/backup
bash 复制代码
path.repo:['/opt/backup_es']

重启elasticsearch

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

bash 复制代码
PUT http://地址:9200/_snapshot/my_backup/

参数为

bash 复制代码
{
 "type": "fs",
 "settings": {
 "location": "/opt/backup_es",
 "max_snapshot_bytes_per_sec" : "50mb",
 "max_restore_bytes_per_sec" : "50mb",
 "compress" : true
 }
}

这里执行完之后没有任何变化

参数说明:
复制代码
location:指定快照的存储位置,必须有
compress:指定是否对快照文件进行压缩,默认是ture
max_snapshot_bytes_per_sec:每个节点做快照的最高速度限制。默认是 20mb/s
max_restore_bytes_per_sec:每个节点恢复数据的最高速度限制. 默认是 20mb/s

2.备份数据

在my_backup仓库下备份数据,备份的名字自己设定(此处我的设定为tyyw_sjyy)

复制代码
PUT http://地址:9200/_snapshot/my_backup/tyyw_sjyy

备份完数据后就会在/opt/backup_es目录下生成备份的元数据

在执行上面一条请求时,还可在请求体中添加以下参数来发送请求

参数说明:
复制代码
indices:指定快照包含的索引 格式为"indices": "index_1,index_2"
ignore_unavailable:把这个选项设置为 true 的时候在创建快照的过程中会忽略不存在的索引。默认情况下, 如果没有设置 ignore_unavailable 在索引不存在的情况下快照请求将会失败 格式为"ignore_unavailable": "true"
include_global_state:通过设置 include_global_state 为false 能够防止 集群的全局状态被作为快照的一部分存储起来。
partial:默认情况下,如果快照中的1个或多个索引不是全部主分片都可用会导致整个创建快照的过 程失败。 通过设置 partial 为 true 可以改变这个行为。

查看备份状态

复制代码
GET http://地址:9200/_snapshot/my_backup/tyyw_sjyy

3.还原数据

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

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

复制代码
POST http://地址:9200/_snapshot/my_backup/tyyw_sjyy/_restore

需要注意的是执行上面一条请求的时候,默认是将备份机器上的全部索引都还原到目标机器上,如果只是想

备份部分索引的话,可以在请求体加上下面的参数

复制代码
{    "indices":"index1,index2...indexN"}

参数说明:

复制代码
rename_pattern 和 rename_replacement 选项可以在恢复的时候使用正则表达式来重命名index.例如:
"rename_pattern": "index(.+)",
"rename_replacement": "restored_index$1"

参考网址:
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/modules-snapshots.html#_snapshot

https://blog.csdn.net/qq_35623773/article/details/84331469

https://blog.csdn.net/frankcheng5143/article/details/95168300

相关推荐
jianghx10246 小时前
Docker部署ES,开启安全认证并且设置账号密码(已运行中)
安全·elasticsearch·docker·es账号密码设置
IT小哥哥呀6 小时前
电池制造行业数字化实施
大数据·制造·智能制造·数字化·mom·电池·信息化
Xi xi xi6 小时前
苏州唯理科技近期也正式发布了国内首款神经腕带产品
大数据·人工智能·经验分享·科技
yumgpkpm7 小时前
华为鲲鹏 Aarch64 环境下多 Oracle 、mysql数据库汇聚到Cloudera CDP7.3操作指南
大数据·数据库·mysql·华为·oracle·kafka·cloudera
UMI赋能企业8 小时前
制造业流程自动化提升生产力的全面分析
大数据·人工智能
TDengine (老段)8 小时前
TDengine 数学函数 FLOOR 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
派可数据BI可视化10 小时前
商业智能BI 浅谈数据孤岛和数据分析的发展
大数据·数据库·数据仓库·信息可视化·数据挖掘·数据分析
jiedaodezhuti11 小时前
Flink性能调优基石:资源配置与内存优化实践
大数据·flink
半梦半醒*11 小时前
搭建Jenkins
linux·运维·centos·tomcat·jenkins·运维开发
Lx35212 小时前
Flink窗口机制详解:如何处理无界数据流
大数据