Elasticsearch 基于对象存储使用快照数据迁移

news/2024/11/6 2:10:47/文章来源:https://www.cnblogs.com/boradviews/p/18529139

以下是 Elasticsearch 集群数据迁移 的步骤说明,格式已转换为 Markdown:


Elasticsearch 集群数据迁移

一、订购新的集群

  1. 订购新集群时,注意以下事项:

    • 新集群的数据节点数量需满足迁移需求,确保索引副本数小于节点数。
    • 新集群节点规格(如 CPU、内存)应足够容纳旧集群的数据。
  2. 新集群上的准备工作:

    • 删除新集群上所有索引。
    • 安装旧集群已有的插件(如 IK 分词器)。
    • 创建旧集群上存在的模板、用户信息等。

    示例命令:

    # 插件
    GET /_cat/plugins
    # 生命周期管理
    GET _ilm/policy
    # 模板
    GET /_cat/templates?v
    # 管道
    GET _ingest/pipeline
    

二、订购对象存储服务

  1. 搜索并订购 EOS 对象存储,确保资源池与新集群一致。

三、将旧集群数据迁移至 EOS

  1. 迁移前检查:使用 GET _cluster/health,确保集群状态为“green”。

  2. 创建 Snapshot

    • 在迁移前,可以先进行全量快照,然后多次进行增量快照,减少停服时间。
    • 创建快照存储:
      PUT /_snapshot/s3_backup
      {"type": "s3","settings": {"bucket": "EOS桶名","protocol": "http","access_key": "<ak>","secret_key": "<sk>","endpoint": "","storage_class": "standard","max_snapshot_bytes_per_sec": "4000mb","compress": true}
      }
      
  3. 业务停服:停止新数据写入,修改业务连接 ES 的配置(如 IP、端口、密码等)。

  4. 创建增量 Snapshot:在停服状态下,将新增数据写入 EOS。

四、新集群上恢复 Snapshot

  1. 在新集群创建 EOS 快照存储连接。
  2. 控制恢复速率,避免影响集群读写:
    PUT _cluster/settings
    {"transient": {"indices.recovery.max_bytes_per_sec": "4000mb","cluster.routing.allocation.node_concurrent_recoveries": "20"}
    }
    
  3. 恢复 Snapshot
    POST /_snapshot/s3_backup/snapshot3/_restore
    {"indices": "*","index_settings": {"index.number_of_replicas": 0},"ignore_unavailable": false,"include_global_state": false,"include_aliases": true,"ignore_index_settings": ["index.lifecycle.indexing_complete"]
    }
    

五、数据验证

  • 验证恢复状态:
    GET /_cat/recovery/
    GET _cluster/health?pretty
    
  • 对比数据量,与步骤 3.4 记录的数据进行对比。

六、测试新集群服务

  • 测试业务在新集群上是否正常运行,观察一段时间。
  • 如有问题,业务可以切回旧集群。

七、资源退订

  • 确认新集群服务正常后,退订 EOS 和旧的 ES 集群。

以上是数据迁移的完整步骤。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/827433.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【2024.11.05】所谓照片,不过是在时间长河里刻舟求剑罢了

玩摄影一年了,随便瞎写点感受好了 作为模特的感受 想成为一位摄影前就要先练习成为一位模特,这是很有必要的 我觉得九成以上的人难以做到面对镜头时表里如一 在镜头前多少都会紧张,显得不自然 除非是像我一样持续记录自我,已经适应了镜头的存在 而对于模特来说最好的照片是…

Alpha迭代阶段——第七周Scrum Meeting记录

1.Alpha阶段工作内容: 目前是项目调研、设计和游戏系统开发阶段,后续是游戏组件开发阶段。 主要工作为: (1)分析上周Scrum Meeting会议中的不足,总结本周的工作内容和不足,构思下一步的工作内容; (2)探讨游戏关卡的合理性,初步完成游戏关卡设计; (3)初步完成游戏…

19. 使用MySQL之插入数据

1. 数据插入 顾名思义,INSERT是用来插入(或添加)行到数据库表的。插入可以用几种方式使用:插入完整的行;插入行的一部分;插入多行;插入某些查询的结果。补充: 插入及系统安全: 可针对每个表或每个用户,利用MySQL的安全机制禁止使用INSERT语句,这将在第28章介绍 2. 插…

看懂 UML 类图

原文:看懂 UML 类图和时序图从一个示例开始 请看以下这个类图,类之间的关系是我们需要关注的:车的类图结构为<<abstract>>,表示车是一个抽象类; 它有两个继承类:小汽车和自行车;它们之间的关系为实现关系,使用带空心箭头的虚线表示; 小汽车为与 SUV 之间也…

linux 中awk命令实现按照 指定的字符对文本进行排序

001、[root@PC1 test1]# ls a.txt [root@PC1 test1]# cat a.txt ## 测试数据,对如下文本按照a、b进行排序输出 01 02b 03 04 05 06a 07 08 09 10b 11 12 13 14b 15 16 17 18a 19 20 [root@PC1 …

游戏关卡设计文档

关卡设计 关卡一:基础逻辑门练习 任务描述:在这个关卡中,学习如何使用基本的逻辑门(AND门和NOT门)来构建一个简单的“非与”逻辑门。 任务过程:理解逻辑门: 学习AND门的工作原理:只有当所有输入都为高电平时,输出才为高电平。 学习NOT门的工作原理:输出总是输入的…

【入门笔记】CSE 365 - Fall 2024之Computing 101(pwn.college)

真不会了,GDB把我榨干了,会了会回来填坑的【入门笔记】CSE 365 - Fall 2024之Computing 101(pwn.college) Your First Program 你的第一个程序 Your First Register 你的第一个寄存器 CPU的思维方式非常简单。 它移动数据,更改数据,基于数据做出决策,并基于数据采取行动…

Jenkins之代理节点搭建-随笔

背景: 最近在公司搭建Jenkins的CICD,Linux的代理节点,公司前辈已经搭建好了。这次由于需要一个Windows环境作为代理节点,执行UI自动化测试。 于是,就参考了教程搭建完了,花了一个小时吧,最近无聊,就在此简单写一下心得和感受,总体上很简单,遇到了一个坑,但是这个坑…

[SUCTF 2019]CheckIn

题目链接:[SUCTF 2019]CheckIn。 打开后,环境如下。可以看到,是一道文件上传题目,尝试上传 php 文件,发现存在检测。爆破其他可支持的 php 文件后缀无果。 尝试上传 .htaccess 文件,发现存在检测是否为图片的机制。通过加入 GIF 文件幻数后成功绕过检测图片的机制,但是这…

LIS系统与仪器进行通信

本文主要介绍医疗检测仪器与LIS系统之间的通信,两者之间的通信还是比较简单的,两者通过通信方式连接成功后,对接收到的数据按照特定的协议进行解析,拿到我们需要的数据保存到LIS系统,或者将LIS中的数据传到仪器上即可。 下面介绍一下比较常用的通信方式及协议。详细的协议…

0-1搭建 账务自动化集成系统

对财务人员来说,记账是一项非常繁琐又麻烦的工作,每天/月重复,要求还高;如果能实现自动化入账,绝对能提高不少工作效率。这篇文章,我们就来讨论下这个问题。在企业的财务管理中,会计工作是核心环节,会计是基于经济业务活动的根据会计法、会计准则等法律法规,通过记账、…

清结算中台系统设计

在当今复杂的金融交易环境中,清结算中台作为核心的基础设施,扮演着至关重要的角色。它不仅能够确保交易的准确性、安全性和及时性,还能提高金融机构的运营效率,降低风险。 本文将深入探讨清结算中台的定义、流程、模型以及产品功能,为读者全面展示这一重要金融工具的设计与…