ES迁移到OpenSearch

news/2024/10/28 16:22:34/

方式一:共享文件存储迁移

尽管可以使用 repository-s3 插件直接将快照生成到 S3,但必须在每个节点上安装此插件,调整 opensearch.yml(如果使用的是 Elasticsearch 集群,则需要调整 elasticsearch.yml),重新启动每个节点,添加 AWS 凭证,最后拍摄快照。此插件是持续使用或迁移大型集群的绝佳选择。

  1. 要将共享文件系统用作快照存储库,请将其添加到:elasticsearch.yml和opensearch.yml(如果上传到s3则不需要)

path.repo: ["/mnt/snapshots"]

  1. 如果您使用的是 Docker 安装,请在启动群集之前将文件系统添加到 中的每个节点:docker-compose.yml
volumes:- /Users/jdoe/snapshots:/mnt/snapshots
  1. 然后使用 REST API 注册存储库:
PUT _snapshot/my-fs-repository
{"type": "fs","settings": {"location": "/mnt/snapshots"}
}
  1. 如果成功

{ "acknowledged": true }

  1. 接下来有两种恢复方式:
  • 将备份上传到s3上然后进行恢复
  • 如果使用的是docker且es和opensearch挂载了同一块数据卷,那么可以在opensearch中创建存储库,然后恢复。

方式二:logstash迁移

如果使用的是elastic的logstash需要下载opensearch插件。download
如果使用opensearch构建的logstash已经包含opensearch插件。download
logstash的pipeline配置:

input {# Read all documents from Elasticsearch matching the given queryelasticsearch {hosts => "172.31.73.46:9205"index => "test_index"docinfo => truedocinfo_target => "[@metadata][doc]"slices => 5size => 5000}
}filter {# 去掉一些Logstash自己加的字段。mutate {remove_field => ["@timestamp", "@version"]}
}output {opensearch {hosts => ["172.31.73.46:9200"]index => "opensearch-logstash-test"document_type => "%{[@metadata][doc][_type]}"document_id => "%{[@metadata][doc][_id]}"#user => "admin"#password => "admin"ssl => falsessl_certificate_verification => false}
}

$ bin/logstash -f config/pipeline.conf

方式三:S3迁移

  1. 部署minio
version: '2'services:minio:image: bitnami/minio:latestports:- '9000:9000'- '9001:9001'volumes:- 'minio_data:/data'environment:- MINIO_ROOT_USER=minio-root-user- MINIO_ROOT_PASSWORD=minio-root-password- MINIO_SKIP_CLIENT=yes# - MINIO_SERVER_ACCESS_KEY=minio-access-key# - MINIO_SERVER_SECRET_KEY=minio-secret-key
volumes:minio_data:driver: local
  1. 在minio页面创建accesskey和secretkey
  2. 在opensearch和elasticsearch环境设置accesskey和secretkey
bin/opensearch-keystore add --stdin s3.client.default.access_key
bin/opensearch-keystore add --stdin s3.client.default.secret_key
  1. 修改opensearch.yml

设置endpoint和protocol

s3.client.default.endpoint: 172.31.73.46:9000
s3.client.default.protocol: http
  1. 下载s3插件

bin/opensearch-plugin install repository-s3

  1. 重启opensearch以及elasticsearch
  2. 在opensearch和elasticsearch中创建仓库
PUT _snapshot/my_backup 
{"type": "s3","settings": {"bucket": "xxxxxx"}
}
  1. 在elasticsearch中指定备份索引
PUT _snapshot/my_backup/snapshot_1
{"indices": "index_1,index_2"
}
  1. 在opensearch中恢复数据
POST _snapshot/my_backup/snapshot_1/_restore

默认行为是把这个快照里存有的所有索引都恢复。如果 snapshot_1 包括五个索引,这五个都会被恢复到我们集群里。


http://www.ppmy.cn/news/4844.html

相关文章

10 个杀手级的 Python 自动化脚本

重复性任务总是耗时且无聊,想一想你想要一张一张地裁剪 100 张照片或 Fetch API、纠正拼写和语法等工作,所有这些任务都很耗时,为什么不自动化它们呢?在今天的文章中,我将与你分享 10 个 Python 自动化脚本。 所以&am…

【大数据入门核心技术-Kafka】(四)Kafka常用shell命令

目录 一、准备工作 1、Zookeeper集群安装 2、Kafka集群安装 二、常用Shell命令 1、创建Topic 2、查看创建的Topic 3、查看某一个Topic的详细信息 4、修改Topic 5、删除Topic 6、生产者发布消息命令 7、消费者接受消息命令 8、查看kafka节点数目 9、查看kafka进程 一…

靠steam搬砖项目,傻瓜式操作单日500+,可放大操作

在分享干货之前,作为一个从15年开始创业的过来人,先教大家怎么分辨网络上的项目靠不靠谱,以后擦亮眼睛再做,切记!!!!! 1、回本周期性我这个人比较俗,创业就是…

【Python机器学习】多项式回归、K近邻KNN回归的讲解及实战(图文解释 附源码)

需要源码请点赞关注收藏后评论区留言私信~~~ 多项式回归 非线性回归是用一条曲线或者曲面去逼近原始样本在空间中的分布,它“贴近”原始分布的能力一般较线性回归更强。 多项式是由称为不定元的变量和称为系数的常数通过有限次加减法、乘法以及自然数幂次的乘方运…

哈希表题目:环形链表

文章目录题目标题和出处难度题目描述要求示例数据范围进阶解法一思路和算法代码复杂度分析解法二思路和算法代码复杂度分析题目 标题和出处 标题:环形链表 出处:141. 环形链表 难度 2 级 题目描述 要求 给你一个链表的头结点 head\texttt{head}h…

2022沙丘大会 · 信创专场 GBASE告诉您金融行业数据库如何选型

12月10日,2022沙丘大会信创专场如期召开,本期专场由沙丘社区与中国信通院数据库应用创新实验室联合主办,GBASE南大通用技术总监冯文忠受邀出席并分享《国产数据库金融行业应用情况》主题演讲。 数据库作为金融信息系统的关键环节&#xff0…

关于小程序订单中心页设置的公告

为进一步规范小程序交易生态、提升用户购物体验、满足用户在有交易的小程序中便捷查看订单信息的诉求,自2022年12月31日起,对于有“选择商品/服务-下单-支付”功能的小程序,需按照平台制定的规范,在小程序内设置订单中心页。 开发…

C++中你不知道的namespace和using的用法

目录 引言 一: 冒号作用域 二、名字控制 1 命令空间 2 命令空间的使用 三、 using的指令 1 using的声明 2 using的编译指令 引言 你是不是只认为namespace 和 using 在C中是基本的语法框架,但是却不知道它们的真正用法,看完文章你会对using和name…