elasticsearch数据迁移
snapshot快照方式迁移
1、创建快照仓库
1)检查配置文件config/elasticsearch.yml中path.repo项配置,此项配置打开才能成功创建,否则创建仓库会报500错误,没有此项配置的话手动添加即可,路径要提前创建出来并且保证es用户拥有读写权限
elasticsearch.yml
2)创建仓库
curl -u elastic:password -XPUT "http://73.134.45.151:9200/_snapshot/my_backup" -H'Content-Type: application/json' -d '
{
"type": "fs",
"settings": {
"location": "/data/elasticsearch/elasticsearch-7.9.1/backup/repository"
}
}'
2、创建索引的快照
curl -u elastic:password -XPUT "http://73.134.45.151:9200/_snapshot/my_backup/snapshot_1" -H'Content-Type: application/json' -d '
{
"indices":"medcommonproductdata,productlibrarymydata,nmpacommonproductdata",
"ignore_unavailable": true,
"include_global_state": false
}'
打包repository目录传至目标es节点上
3、在目标节点或集群创建快照仓库
curl -u elastic:password -XPUT "http://73.134.44.220:9200/_snapshot/my_backup" -H'Content-Type: application/json' -d '
{
"type": "fs",
"settings": {
"location": "/data/elasticsearch/elasticsearch-7.9.1/backup/repository"
}
}'
4、解压备份数据
tar xvf 151es_data.tar.gz
5、恢复数据
curl -u elastic:password -XPOST "http://73.134.44.220:9200/_snapshot/my_backup/snapshot_1/_restore" -H'Content-Type: application/json' -d '
{
"indices": "medcommonproductdata,productlibrarymydata,nmpacommonproductdata",
"ignore_unavailable": true,
"include_global_state": false
}'
6、验证数据一致性
源节点索引数据:
目标节点索引数据:
复制data目录方式迁移
1、停止elasticsearch服务,打包data目录
检查elasticsearch.yml,查看data目录位置
cd /data/elasticsearch/elasticsearch-7.9.1
tar -cvzf 151esdata.tar.gz ./data
2、将打包文件上传至目标节点,并解压
1)停服
2)备份
mv data data_bak
3)解压
tar xvf 151esdata.tar.gz -C /data/elasticsearch/elasticsearch-7.9.1/
4)启动elasticsearch服务
5)验证数据一致性(注意,这样迁移的数据,密码同源节点一致)
73.134.36.237
73.134.45.151