Elasticsearch备份数据到本地,并导入到新的服务 es 服务中

使用elasticsearch-dump工具备份

这个工具备份时间比较长

安装node.js(二进制安装)

wget https://nodejs.org/dist/v16.18.0/node-v16.18.0-linux-x64.tar.xz

解压

tar -xf node-v16.18.0-linux-x64.tar.xz

设置环境变量

临时生效

export PATH=$PATH:/root/node-v16.18.0-linux-x64/bin/

永久生效

vim ~/.bash_profile
export PATH=$PATH:/root/node-v16.18.0-linux-x64/bin/
source ~/.bash_profile

安装elasticsearch-dump

npm install elasticdump -g

docker安装使用

docker pull node:16-alpine

docker run node:16-alpine node -v # should print `v16.20.2`

docker run node:16-alpine npm -v # should print `8.19.4`

如果 docker 访问不了,就需要修改镜像源
登录阿里云个人账号,搜索容器镜像服务,获取加速地址,替换掉我的就好了
在这里插入图片描述

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://dockerhub.icu"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

# 如果不想重启 docker 就使用重新加载配置文件(不终止服务)
systemctl reload docker

进入 docker 镜像中

#进入后就不要退出了,之后的操作都在这里进行
docker run -ti node:16-alpine /bin/sh

安装elasticsearch-dump

#进入后就不要退出了,之后的操作都在这里进行
npm install elasticdump -g

ES备份文件到本地

# 查看 es 是否连通
curl -u elastic:123456 -XGET 'localhost:9200'
elasticdump --input=http://"elastic:123123"@10.244.1.51:9200/es_xxx_system_log --output=./es_lims_system_log_settings.json --type=settings

elasticdump --input=http://"elastic:123123"@10.244.1.51:9200/es_xxx_system_log --output=./es_lims_system_log_mapping.json --type=mapping

elasticdump --input=http://"elastic:123123"@10.244.1.51:9200/es_xxx_system_log --output=./es_xxx_system_log_data.json --type=data

参考资料:
通过elasticsearch-dump工具迁移数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值