elasticdump迁移es数据

  参考:https://www.cnblogs.com/resn/p/9082663.html

  elasticsearch部分查询语句

  获取集群节点列表

curl "172.16.30.55:9200/_cat/nodes?v"

  列出所有索引

curl "172.16.30.55:9200/_cat/indices?v"

  安装elasticdump

wget https://nodejs.org/dist/v8.11.2/node-v8.11.2-linux-x64.tar.xz

tar xf node-v8.11.2-linux-x64.tar.xz 

mv node-v8.11.2-linux-x64 /usr/local

ln -s /usr/local/node-v8.11.2-linux-x64/bin/npm /usr/local/bin/npm

ln -s /usr/local/node-v8.11.2-linux-x64/bin/node /usr/local/bin/node

npm init -f

npm install elasticdump

  修改文件增加以下内容/etc/profile

export NODE_HOME=/usr/local/node-v8.11.2-linux-x64
export PATH=$PATH:$NODE_HOME/bin:/opt/node_modules/elasticdump/bin
export NODE_PATH=$NODE_HOME/lib/node_modules

  设置生效

source /etc/profile

  数据迁移

  数据通过网络进行迁移 从主机172.16.30.55迁移至172.16.30.56

#拷贝映射
elasticdump \
--input=http://172.16.30.55:9200/nginx-prod-log-2019.02 \
--output=http://172.16.30.55:9200/nginx-prod-log-2019.02\ 
--type=mapping 
#拷贝数据 elasticdump \ 
--input=http://172.16.30.55:9200/nginx-prod-log-2019.02 \ 
--output=http://172.16.30.56:9200/nginx-prod-log-2019.02 \ 
--type=data

  

  如果网络不好或者没有网络还可以先备份到文件

#备份映射
elasticdump \
--input=http://172.16.30.55:9200/nginx-prod-log-2019.02 \
--output=/tmp/nginx-prod-log_mapping.json \
--type=mapping

#备份数据
elasticdump \
--input=http://172.16.30.55:9200/nginx-prod-log-2019.02 \
--output=/tmp/nginx-prod-log_data.json \
--type=data

  通过备份文件恢复数据

#恢复映射
elasticdump \
--input=/tmp/nginx-prod-log_mapping.json \
--output=http://172.16.30.55:9200/ \

#恢复数据
elasticdump \
--input=/tmp/nginx-prod-log_data.json  \
--output=http://172.16.30.55:9200/ \

  

猜你喜欢

转载自www.cnblogs.com/minseo/p/10374210.html