Elasticsearch必備技能之索引遷移
將ES中的索引拷貝到其他ES中,是不是很重要呢?
長話短說,推薦一個工具:
一、elasticsearch-dump
安裝:
#yum install epel-release
#yum install nodejs
#yum install npm
#npm install elasticdump
#cd node_modules/elasticdump/bin
# pwd
/home/tp/node_modules/elasticdump
# ls -al
total 388
drwxr-xr-x 2 root root 4096 Mar 21 15:46 bin
-rw-r--r-- 1 root root 174 Mar 18 2016 Dockerfile
-rw-r--r-- 1 root root 299251 Mar 15 2014 elasticdump.jpg
-rw-r--r-- 1 root root 6172 Feb 2 23:47 elasticdump.js
drwxr-xr-x 2 root root 4096 Jul 13 2016 .github
drwxr-xr-x 3 root root 4096 Mar 21 15:46 lib
-rw-r--r-- 1 root root 11356 May 22 2014 LICENSE.txt
drwxr-xr-x 10 root root 4096 Mar 21 15:46 node_modules
-rw-r--r-- 1 root root 44 May 22 2014 .npmignore
-rw-r--r-- 1 root root 15135 Mar 21 15:46 package.json
-rw-r--r-- 1 root root 13335 Dec 14 06:20 README.md
drwxr-xr-x 3 root root 4096 Mar 21 15:46 test
-rw-r--r-- 1 root root 1150 Dec 2 07:54 .travis.yml
使用:
#拷貝analyzer如分詞
elasticdump \
--input=http://production.es.com:9200/old_index \
--output=http://staging.es.com:9200/new_index \
--type=analyzer
#拷貝對映
elasticdump \
--input=http://production.es.com:9200/old_index \
--output=http://staging.es.com:9200/new_index \
--type=mapping
#拷貝資料
elasticdump \
--input=http://production.es.com:9200/lod_index \
--output=http://staging.es.com:9200/new_index \
--type=data
OK ! 遷移成功。
推薦閱讀: