资讯专栏INFORMATION COLUMN

Elasticsearch数据迁移

IT那活儿 / 3482人阅读
Elasticsearch数据迁移

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!


Elasticsearch简介

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便

迁移流程:

创建NFS共享目录,用于存储从老集群备份的数据,然后再将共享目录中的数据恢复到新集群。



迁移步骤

2.1 NFS服务端部署
执行以下命令:
yum install nfs-utils --安装
systemctl enable nfs --设置自启动
systemctl start nfs --启动服务
mkdir /data/es_backup --准备一个目录
chmod 755 /data/es_backup --赋权
vim /etc/exports --配置
/data/es_backup/ [ip1,ip2,..........] (rw,sync,no_root_squash,no_all_squash,anonuid=1000,anongid=1000)
systemctl restart nfs --重启服务
showmount -e localhost --查看挂载
执行以下命令:
yum -y install nfs-utils
systemctl start rpcbind --开启RPC服务,RPC提供了存取远程文件的操作
showmount -e ip --查看服务端的共享目录
mkdir /data/es_backup--然后新建一个目录
mount -t nfs ip:/data/es_backup/ /data/es_backup/ --挂载服务端的目录
2.2 客户端安装(所有节点)
2.3 配置elasticsearch.yml(每个节点)
增加以下配置:
path.repo: ["/data/es_backup/"]
2.4 重启ES服务
systemctl restart elasticsearch
2.5 注册仓库(新老集群)
chown -R elasticsearch:elasticsearch /data/es_backup/ --授权
切换到elasticsearch用户执行:
curl -XPUT http://IP:9200/_snapshot/es_backup -H Content-Type: application/json -d 
{
"type": "fs",
"settings": {
"location": "/data/es_backup" ,
"compress": true,
"max_restore_bytes_per_sec": "80mb", --恢复速度,默认40
"max_snapshot_bytes_per_sec": "80mb"   --快照速度,默认40
}
} --user elastic:password --需加上用户认证
2.6 业务停机
2.7 数据备份(老集群)
备份所有索引:
curl -XPUT 
http://IP:9200/_snapshot/es_backup/snapshot_1?wait_for_completion=true
--user elastic:password
2.8 查看备份状态
curl -XGET 
http://IP:9200/_snapshot/es_backup/snapshot_1/_status --user elastic:password
2.9 数据恢复(新集群)
curl -XPOST http://IP:9200/_snapshot/es_backup/snapshot_1/_restore?wait_for_completion=true -H Content-Type: application/json -d 
{
"indices":"index1,index2...." --建议指定要恢复的索引
}
 --user elastic:password
2.10 索引数量及数据量验证
2.11 通知业务切换集群并验证

总 结:

上述采用的是Snapshot 方式,其迁移速度快,适用数据量大的场景。快照是增量 创建的,这意味着,当创建索引快照时,Elasticsearch避免复制任何已存储在存储库中的数据作为同一索引的早期快照的一部分,因此可以非常频繁地为集群创建快照


本文作者:潘宗昊(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129104.html

相关文章

  • 使用 Docker 部署和迁移多节点的 ElasticSearch-Logstash-Kibana

    摘要:我已经为你做了这些,并放在上部署到一个多节点集群使用工作有两个配置文件和。我们需要部署这些容器到多个主机上。使用,这会变得非常容易。我希望这篇文章对你部署和迁移有用。除了之外,我们还有部署和管理,和的例子。 本文的作者是 Luke Marsden ,本文的原文地是 Deploying and migrating a multi-node ElasticSearch-Logstas...

    xiongzenghui 评论0 收藏0
  • ElasticSearch索引跨集群迁移

    ElasticSearch索引跨集群迁移 img{ display:block; margin:0 auto !important; width:100%; } body{ width:75%; ...

    不知名网友 评论0 收藏1747
  • mysql到elasticsearch数据迁移踩坑实践-Ali0th

    摘要:配置文件其中有两个关键的配置和。启动如上即为正常运行。因为我在启动后一直报错,,各种尝试最后报错依然存在,只好换用部署了。安装部署安装和插件获取驱动下载配置配置使用时自行把下面注释去掉。Author : Ali0th Date : 20190514 最近用go语言写了个爬虫,爬了几百万条数据,存在 mysql 里,数据量较大,一个表就一两G的程度(mysql表一般不要超过2G)。 sho...

    littlelightss 评论0 收藏0
  • Laravel 基于 Scout 配置实现 Elasticsearch (一)- 准备工作

    摘要:导语全文搜索是很重要的功能,实现的方式也有很多种。以下通过和实现。是用开发的,并在许可证下作为开源软件发布。官方客户端在和许多其他语言中都是可用的。根据的排名显示,是最受欢迎的企业搜索引擎,其次是,也是基于。 导语 全文搜索是很重要的功能,实现的方式也有很多种。以下通过 Laravel Scout 和 Elasticsearch 实现。先来看下各自的介绍 Laravel Scout 为...

    jsyzchen 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<