https://www.cnblogs.com/mojita/p/12011800.html
$ docker pull taskrabbit/elasticsearch-dump
下面还是例子:通过镜像导出数据到本地
创建一个文件夹用于保存导出数据
$ mkdir -p /root/data
第一种方式:也是本次在线迁移方式
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/index_usr
--output=http://188.116.31.49:9200/index_usr
--type=mapping
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/index_usr
--output=http://188.116.31.49:9200/index_usr
--type=data
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/sjzt_userinfo_index
--output=http://188.116.31.49:9200/sjzt_userinfo_index
--type=mapping
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/sjzt_userinfo_index
--output=http://188.116.31.49:9200/sjzt_userinfo_index
--type=data
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/index_event_all
--output=http://188.116.31.49:9200/index_event_all
--type=mapping
docker run --rm -ti taskrabbit/elasticsearch-dump
--limit=20000
--input=http://192.168.0.3:9200/index_event_all
--output=http://188.116.31.49:9200/index_event_all
--concurrency=2
--type=data
第二种方式:
也可以先dump成json文件,再传到目标es上,再导入
导出mapping
$ docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump
--input=http://production.es.com:9200/my_index
--output=/tmp/my_index_mapping.json
--type=mapping
导出(data)
$ docker run --rm -ti -v /root/data:/tmp taskrabbit/elasticsearch-dump
--input=http://192.168.56.104:9200/test_index
--output=/tmp/elasticdump_export.json
--type=data
导入目标es数据
创建索引
$ curl -XPUT http:192.168.56.104:9200/test_index
因为导入的是mapping,所以设置type为mapping
$ docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump \
--input ./test_index_mapping.json \
--output http://192.168.56.105:9200/ \
--type=mapping
因为导入的是data(真实数据)所以设置type为data
$ docker run --rm -ti -v /data:/tmp taskrabbit/elasticsearch-dump \
--input ./test_index.json \
--output http://192.168.56.105:9200/ \
--type=data