本篇文章为你整理了ES之数据迁移篇(使用snapshot快照)()的详细内容,包含有 ES之数据迁移篇(使用snapshot快照),希望能帮助你了解 ES之数据迁移篇(使用snapshot快照)。
旧集群:ERQIES
三个节点:192.168.185.70,192.168.185.71,192.168.185.72
新集群:gzescluster
五个节点:10.181.92.184,10.181.92.185,10.181.92.186,10.181.92.187,10.181.92.188
2.修改elasticsearch.yml配置文件并重启集群
先禁用两个集群的自动分配:
在两个集群其中一台上面执行即可:
关闭:#curl -XPUT http://127.0.0.1:9200/_cluster/settings -d { "transient": {"cluster.routing.allocation.enable": "none"} }
开启:#curl -XPUT http://127.0.0.1:9200/_cluster/settings -d { "transient": {"cluster.routing.allocation.enable": "all"} }
修改elastticsearch.yml配置文件指定snapshot的共享目录:
旧集群指定:/data/backups/my_backup
#mkdir -p /data/backups/my_backup
修改所属群组使得es可以写入
#chown -R eleasticsearch:elasticsearch /data/backups/my_backup
#chmod 777 /data/backups/my_backup
新集群指定:/cloud/data01/backup
#chown -R eleasticsearch:elasticsearch /cloud/data01/backup
#chmod 777 /cloud/data01/backup
重启两台es集群,先杀掉es进程(tips:一台一台重启比较集群恢复比较快一点)
#su elasticsearch
#bin/elasticsearch -d
3.准备安装nfs共享目录的软件,挂载共享目录
先将每台机器上面安装nfs,执行:
#yum -y install nfs-utils
配置nfs服务器,这里选机器(10.181.92.184)来作为共享文件的服务器
修改所有机器的nfs配置文件指定Domain为10.181.92.184
#vim /etc/idmapd.conf
配置服务器(10.181.92.184)的共享目录和共享的网段范围:
#vim /etc/exports
将本机的/cloud/data02/nfs_data共享目录,开放给网段上面的主机访问,允许这些主机
进行写,使用者如果以root身份登入,那么使用者对这个目录具有root权限
开启nfs服务,并重启nfs服务
#systemctl enable --now rpcbind nfs-server
#service nfs-server restart
设置防火墙如果防火墙有开的话
#firewall-cmd --add-service=nfs --permanent
客户端安装nfs完成,配置domain后设置挂载目录
旧集群的机器挂载:
#mount -t nfs 10.181.92.184:/cloud/data02/nfs_data /cloud/data01/backup
新集群的机器挂载:
#mount -t nfs 10.181.92.184:/cloud/data02/nfs_data /data/backups/my_backup
df -TH查看新旧集群挂载情况:
要在系统重新启动时进行自动挂载#vim /etc/fstab
4.建立es索引快照备份
以下命令在kibana里面执行
#先建立旧集群索引快照库:
PUT /_snapshot/my_backup
{"type": "fs",
"settings": {
"compress": true,
"location": "/data/backups/my_backup"
}
}
#新集群群索引快照库:
PUT /_snapshot/my_backup
{
"type": "fs",
"settings": {
"compress": true,
"location": "/cloud/data01/backup"
}
}
#旧集群指定备份库的索引和备份名称
PUT /_snapshot/my_backup/snapshot_20220502?wait_for_completion=true
{
"indices":"hnscan_business_t_bs_day_chk_ene_drv,hnscan_business_t_bs_day_ene_drv",
"ignore_unavailable": true,
"include_global_state": false
}
#旧集群查看以及备份好的索引名称
GET /_snapshot/my_backup/snapshot_20220502
5.拷贝es快照备份(如果需要的话,这里免了因为共享目录都是在同一台机器上面)
6.恢复快照备份
# 查看所有快照信息
GET /_snapshot/my_backup/_all
#查看快照库里面状态
GET /_snapshot/my_backup/snapshot_20220502/_status
#恢复快照库里面的索引
GET /snapshot_20220502/_recovery
# 从快照信息中恢复(注意要先把已有的索引关闭了)
POST /_snapshot/my_backup/snapshot_20220502/_restore
{
"indices":"hnscan_business_t_bs_day_ene_drv,hnscan_business_t_bs_day_chk_ene_drv"
}
#关闭索引
POST hnscan_business_t_bs_day_chk_ene_drv/_close?pretty
POST hnscan_business_t_bs_day_ene_drv/_close?pretty
#打开索引
POST hnscan_business_t_bs_day_chk_ene_drv/_open?pretty
POST hnscan_business_t_bs_day_ene_drv/_open?pretty
注意:快照恢复索引是全量覆盖操作。旧集群索引的分片数和新集群索引的分片数必须保持一致才能恢复操作。
参考资料:
https://www.elastic.co/guide/en/elasticsearch/reference/5.6/modules-snapshots.html
https://www.fwqwd.com/6297.html
https://blog.csdn.net/wzz87/article/details/106896347/
以上就是ES之数据迁移篇(使用snapshot快照)()的详细内容,想要了解更多 ES之数据迁移篇(使用snapshot快照)的内容,请持续关注盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。