news 2026/4/16 9:20:19

Opensearch数据迁移:快照迁移数据全流程(下)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Opensearch数据迁移:快照迁移数据全流程(下)

#作者:stackofumbrella

文章目录

  • 使用快照迁移数据
    • 注意事项
    • 在源集群注册快照仓库
    • 通过REST API注册快照仓库
    • 验证仓库是否注册成功
    • 在源集群创建快照文件
      • 创建快照
    • 查看同步状态
    • 在目标集群配置相同的快照仓库
    • 通过REST API注册相同名称的快照仓库
    • 验证仓库是否注册并导入成功
    • 在目标集群恢复快照
    • 在dashboard中查询数据

使用快照迁移数据

注意事项

不要启用include_global_state: true,除非明确知道恢复集群元数据可能导致的配置冲突。
快照不能跨大版本恢复如1.x → 2.x可能失败,需先升级再迁移。
如果使用安全插件(如 OpenSearch Security),需在目标集群重建角色、用户、权限。
快照不包含Kibana索引(.kibana*)的可视化配置以外的数据,如需迁移Kibana内容,建议单独导出/导入。
确保目标集群有足够的磁盘空间和分片容量。

在源集群注册快照仓库

在配置文件中开启path.repo选项
OpenSearch默认不启用任何快照仓库需手动配置,然后重启opensearch

$ mkdir /usr/share/opensearch/opensearch-backup $ chown -R opensearch:opensearch /usr/share/opensearch/opensearch-backup $ vim opensearch.yml path.repo: ["/usr/share/opensearch/opensearch-backup"]

通过REST API注册快照仓库

# my_backup是仓库名称,可自定义 curl -X PUT -ku admin:admin "https://192.168.131.158:9201/_snapshot/my_backup" \ -H 'Content-Type: application/json' \ -d '{ "type": "fs", "settings": { "location": "/usr/share/opensearch/opensearch-backup", "compress": true } }'

返回结果

验证仓库是否注册成功

$ curl -X GET -ku admin:admin "https://192.168.131.158:9201/_snapshot/my_backup"

返回结果

在源集群创建快照文件

创建快照

创建快照是异步操作

curl -X PUT -ku admin:admin "https://192.168.131.158:9201/_snapshot/my_backup/snapshot_20251223" \ -H 'Content-Type: application/json' \ -d '{ "indices": "test,test2", # 可选,多个索引以逗号隔开,留空则备份所有索引 "ignore_unavailable": true, "include_global_state": false, # 强烈建议设为false,避免恢复时覆盖集群设置 "partial": false }'

返回结果

查看同步状态

由于测试数据较少,同步很快完成了,无法显示异步效果

curl -X GET -ku admin:admin "https://192.168.131.158:9201/_snapshot/my_backup/snapshot_20251223/_status"

返回结果

将快照数据复制到目标集群可访问位置
需手动将/usr/share/opensearch/opensearch-backup下的内容(包括index-、meta-.dat、snap-*.dat等)复制到目标集群的对应目录

$ cd /usr/share/opensearch/ $ tar -zcf opensearch-backup.tar.gz opensearch-backup $ ls -lh

然后将打包好的文件通过scp或其他方式拷贝到目标集群的某个目录下

在目标集群配置相同的快照仓库

在配置文件中开启path.repo选项,这里配置的数据目录,可以和源集群目录不一样

$ mkdir /usr/share/opensearch/opensearch-backup $ chown -R opensearch:opensearch /usr/share/opensearch/opensearch-backup $ vim opensearch.yml path.repo: ["/usr/share/opensearch/opensearch-backup"]

通过REST API注册相同名称的快照仓库

仓库名称必须与源集群一致,否则无法识别快照

curl -X PUT -ku admin:admin "https://192.168.131.158:9202/_snapshot/my_backup" \ -H 'Content-Type: application/json' \ -d '{ "type": "fs", "settings": { "location": "/usr/share/opensearch/opensearch-backup", "compress": true } }'

返回结果

验证仓库是否注册并导入成功

$ curl -X GET -ku admin:admin "https://192.168.131.158:9202/_snapshot/my_backup/_all"

返回结果

看到snapshot_20251223已经能够识别到

在目标集群恢复快照

提前打开窗口监控恢复进度

watch -n 1 curl -X GET -ku admin:admin "https://192.168.131.158:9202/_cat/recovery?v"

恢复指定索引

curl -X POST -ku admin:admin "https://192.168.131.158:9202/_snapshot/my_backup/snapshot_20251223/_restore" \ -H 'Content-Type: application/json' \ -d '{ "indices": "test,test2", "ignore_unavailable": true, "include_global_state": false, "rename_pattern": "^(.*)$", "rename_replacement": "restored_$1" # 可选:重命名避免冲突,由于目标集群为空,所以rename这两个参数不使用 }'

返回结果

同时监控状态返回结果

在dashboard中查询数据

GET test/_search { "query": { "match_all": {} } } GET test2/_search { "query": { "match_all": {} } }

可以看到迁移过来的两个索引已经和源集群有一样的数据了

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/9 23:57:00

STM32最小系统板Keil5下载实操从零实现

从零搭建STM32最小系统板:Keil5下载实战全解析 你是否也经历过这样的时刻——电路焊好了,代码写完了,满怀期待地点击“Download”,结果 Keil 弹出一串红字:“No target connected”? 别急,这几…

作者头像 李华
网站建设 2026/4/8 15:15:31

IAR使用教程:优化嵌入式C代码的操作指南

如何用IAR榨干MCU性能?一位嵌入式老手的实战优化笔记最近在调试一个低功耗传感器项目时,客户突然提出“电池寿命必须延长30%”。我看了看当前固件:Flash用了快300KB,SRAM占用接近80%,主循环执行时间也偏长。硬件已经定…

作者头像 李华
网站建设 2026/4/15 4:59:54

杰理芯片SDK开发-AD697N添加按键触摸提示音功能教程

前言 到现在为止也开发了许多杰理TWS蓝牙耳机项目SDK的案子,在调试案子时不断的向前辈们学习到了很多关于蓝牙TWS耳机专业的知识。想在这里做一个学习汇总,方便各位同行和对杰理芯片SDK感兴趣的小伙伴们学习; 本章详细讲解杰理AD697N芯片按键…

作者头像 李华
网站建设 2026/4/11 7:33:41

Proteus 8.9环境搭建教程:全面讲解安装细节

从零搭建Proteus 8.9仿真环境:手把手带你避开每一个坑你是不是也曾在安装Proteus时被各种“找不到许可”、“服务无法启动”、“MCU不运行”的报错搞得焦头烂额?明明按照网上的教程一步步来,结果一打开软件就弹窗警告——别急,这并…

作者头像 李华
网站建设 2026/4/16 1:19:03

LCD12864并行接口入门必看:初始化代码详解

从零点亮一块 LCD12864:并行接口初始化全解析你有没有遇到过这样的情况?电路接得整整齐齐,代码烧录成功,背光一亮,结果屏幕却“黑如墨、白如纸”——啥也不显示。反复检查引脚、重写初始化函数,还是没反应。…

作者头像 李华