暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Elasticsearch数据迁移

IT那活儿 2022-12-24
828

点击上方“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那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论