elasticsearch-migration 跨集羣數據遷移

這個工具正好srcoll+bulk原理,進行數據遷移,該工具安裝簡單,解壓即可使用。
scroll查詢:es深度分頁查詢,基於http請求,可以查詢索引下所有數據,不會有from+size不能大於1w的問題。
bulk請求:可以批量插入數據,是http請求。

1、下載文件 elasticsearch-migration
https://github.com/medcl/esm-abandoned/tree/v0.4.1

2、插入數據;

 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane Doe" }';

 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane wang" }'; 
 
 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane he" }'; 
 
 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane lv" }';  
 
 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane wang" }'; 
 
 curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane peng" }'; 


3、查看建立的索引的情況;

1)、低版本索引1.4.1;

[root@dmp9 logs]# curl dmp9:9200/_cat/indices?v
health status index    pri rep docs.count docs.deleted store.size pri.store.size 
green  open   wzp_test   5   1          6            0     30.4kb         15.3kb 

2)、高版本索引2.4.1;

[root@dmp9 logs]#  curl dmp9:9200/_cat/indices?v
health status index                                 pri rep docs.count docs.deleted store.size pri.store.size 
green  open   dmp-toutiao-allfields-20170410          5   1    4470231            0     21.8gb         10.9gb 
green  open   dmp-toutiao-allfields-20170411          5   1    5483217            0     26.8gb         13.4gb 
green  open   dmp-toutiao-allfields-20170412          5   1    1291251            0      6.5gb          3.2gb 
green  open   dmp-toutiao-allfields-20170413          5   1    3692841            0     17.9gb          8.9gb 
green  open   dmp-toutiao-allfields-20170414          5   1    5683632            0     26.9gb         13.4gb 
green  open   dmp-toutiao-allfields-20170415          5   1    5558394           99     26.4gb         13.2gb 
green  open   dmp-toutiao-allfields-20170416          5   1    5249961            0     24.9gb         12.4gb 
green  open   dmp-toutiao-allfields2                 15   3    1862685       274944     22.9gb          5.7gb 
green  open   dmp-toutiao-allfields-20170417          5   1    4502766            0     21.4gb         10.7gb 
green  open   dmp-toutiao-allfields-20170418          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170419          5   1          0            0      1.5kb           795b 
green  open   mobilemalware_event_test_all_20180110   6   1      22538            1    109.7mb         54.8mb 
green  open   dmp-toutiao-allfields                  15   3      27132            0    309.8mb         77.4mb 
green  open   test-index                              5   1          0            0      1.5kb           795b 
green  open   twitter                                 5   1          2            0     13.9kb          6.9kb 
green  open   .kibana                                 1   1         41            3    160.3kb         80.1kb 
green  open   dmp-toutiao-allfields5                 15   3   38828040       195705    389.5gb         97.3gb 
green  open   dmp-toutiao-allfields4                 15   3     576123        12036      6.3gb          1.5gb 
green  open   analysers_test_all                      6   1       3843            0    715.6kb        355.1kb 
green  open   dmp-toutiao-allfields6                 15   3   12136407            0      122gb         30.5gb 
green  open   dmp-toutiao-allfields-20170421          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170422          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170423          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170401          5   1    1326999            0      6.8gb          3.4gb 
green  open   dmp-toutiao-allfields-20170402          5   1    1286769            0      6.4gb          3.2gb 
green  open   dmp-toutiao-allfields-20170424          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170425          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170403          5   1     356676            0      1.8gb        930.6mb 
green  open   dmp-toutiao-allfields-20170426          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170404          5   1     331578            0      1.6gb        870.2mb 
green  open   dmp-toutiao-allfields-20170405          5   1    1000051            0     14.5gb          7.2gb 
green  open   dmp-toutiao-allfields-20170427          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170428          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170406          5   1    4616148          216     22.9gb         11.4gb 
green  open   dmp-toutiao-allfields-20170407          5   1     772956            0      3.9gb          1.9gb 
green  open   dmp-toutiao-allfields-20170429          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170408          5   1     412638            0      2.2gb          1.1gb 
green  open   dmp-toutiao-allfields-20170409          5   1    4491483            0     22.2gb         11.1gb 
green  open   wherehows                               5   1          0            0      1.5kb           795b 
green  open   plugin                                  5   1          6            0     37.7kb         18.8kb 
green  open   fz_external_table_all                   6   1         37            0    234.1kb          117kb 
green  open   dmp-toutiao-allfields-20170420          5   1          0            0      1.5kb           795b 
[root@dmp9 logs]# 

4、移動數據;
./esm -s http://192.168.91.9:9201 -d http://192.168.91.9:9200 -x wzp_test -w=5 -b=10 -c 10000;
wzp_test
-w 表示線程數
-b 表示一次bulk請求數據大小,單位MB默認 5M
-c 一次scroll請求數量

5、移動過程

[root@dmp9 bin]# ./esm -s http://192.168.91.9:9201 -d http://192.168.91.9:9200 -x wzp_test -w=5 -b=10 -c 10000;
[11-26 00:01:43] [INF] [main.go:401,main] start data migration..
Scroll 6 / 6 [=============================================================================================] 100.00% 0s
Bulk 6 / 6 [===============================================================================================] 100.00% 9s
[11-26 00:01:52] [INF] [main.go:424,main] data migration finished.
[root@dmp9 bin]# 

6、移動後數據檢查;

[root@dmp9 bin]# curl dmp9:9200/_cat/indices?v
health status index                                 pri rep docs.count docs.deleted store.size pri.store.size 
green  open   dmp-toutiao-allfields-20170410          5   1    4470231            0     21.8gb         10.9gb 
green  open   dmp-toutiao-allfields-20170411          5   1    5483217            0     26.8gb         13.4gb 
green  open   dmp-toutiao-allfields-20170412          5   1    1291251            0      6.5gb          3.2gb 
green  open   dmp-toutiao-allfields-20170413          5   1    3692841            0     17.9gb          8.9gb 
green  open   dmp-toutiao-allfields-20170414          5   1    5683632            0     26.9gb         13.4gb 
green  open   dmp-toutiao-allfields-20170415          5   1    5558394           99     26.4gb         13.2gb 
green  open   dmp-toutiao-allfields-20170416          5   1    5249961            0     24.9gb         12.4gb 
green  open   dmp-toutiao-allfields2                 15   3    1862685       274944     22.9gb          5.7gb 
green  open   dmp-toutiao-allfields-20170417          5   1    4502766            0     21.4gb         10.7gb 
green  open   dmp-toutiao-allfields-20170418          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170419          5   1          0            0      1.5kb           795b 
green  open   mobilemalware_event_test_all_20180110   6   1      22538            1    109.7mb         54.8mb 
green  open   dmp-toutiao-allfields                  15   3      27132            0    309.8mb         77.4mb 
green  open   test-index                              5   1          0            0      1.5kb           795b 
green  open   twitter                                 5   1          2            0     13.9kb          6.9kb 
green  open   .kibana                                 1   1         41            3    160.3kb         80.1kb 
green  open   wzp_test                                5   1          6            0     30.5kb         18.1kb 
green  open   dmp-toutiao-allfields5                 15   3   38828040       195705    389.5gb         97.3gb 
green  open   dmp-toutiao-allfields4                 15   3     576123        12036      6.3gb          1.5gb 
green  open   analysers_test_all                      6   1       3843            0    715.6kb        355.1kb 
green  open   dmp-toutiao-allfields6                 15   3   12136407            0      122gb         30.5gb 
green  open   dmp-toutiao-allfields-20170421          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170422          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170401          5   1    1326999            0      6.8gb          3.4gb 
green  open   dmp-toutiao-allfields-20170423          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170402          5   1    1286769            0      6.4gb          3.2gb 
green  open   dmp-toutiao-allfields-20170424          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170425          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170403          5   1     356676            0      1.8gb        930.6mb 
green  open   dmp-toutiao-allfields-20170426          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170404          5   1     331578            0      1.6gb        870.2mb 
green  open   dmp-toutiao-allfields-20170405          5   1    1000051            0     14.5gb          7.2gb 
green  open   dmp-toutiao-allfields-20170427          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170406          5   1    4616148          216     22.9gb         11.4gb 
green  open   dmp-toutiao-allfields-20170428          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170407          5   1     772956            0      3.9gb          1.9gb 
green  open   dmp-toutiao-allfields-20170429          5   1          0            0      1.5kb           795b 
green  open   dmp-toutiao-allfields-20170408          5   1     412638            0      2.2gb          1.1gb 
green  open   dmp-toutiao-allfields-20170409          5   1    4491483            0     22.2gb         11.1gb 
green  open   wherehows                               5   1          0            0      1.5kb           795b 
green  open   plugin                                  5   1          6            0     37.7kb         18.8kb 
green  open   fz_external_table_all                   6   1         37            0    234.1kb          117kb 
green  open   dmp-toutiao-allfields-20170420          5   1          0            0      1.5kb           795b 
[root@dmp9 bin]# 

1)、索引數量沒問題;
2)、查看索引基本內容;

curl -XGET dmp9:9200/wzp_test
[root@dmp9 bin]# curl -XGET dmp9:9200/wzp_test
{"wzp_test":{"aliases":{},"mappings":{"just_test":{"properties":{"name":{"type":"string"}}}},"settings":{"index":{"creation_date":"1543161765737","number_of_shards":"5","number_of_replicas":"1","uuid":"osBa1LPYR_CJQCqCzn1kzA","version":{"created":"2040199"}}},"warmers":{}}}
[root@dmp9 bin]# 

3)、查看文檔;

curl -XGET dmp9:9200/wzp_test/just_test/_search;
{"took":5,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":6,"max_score":1.0,"hits":[
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgMctkUaRg-1cNRHJ","_score":1.0,"_source":{"name":"Jane wang"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgOWXkUaRg-1cNRHK","_score":1.0,"_source":{"name":"Jane he"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgP62kUaRg-1cNRHL","_score":1.0,"_source":{"name":"Jane lv"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgQwekUaRg-1cNRHM","_score":1.0,"_source":{"name":"Jane wang"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgJyOkUaRg-1cNRHI","_score":1.0,"_source":{"name":"Jane Doe"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgSIGkUaRg-1cNRHN","_score":1.0,"_source":{"name":"Jane peng"}}]}}
[root@dmp9 bin]# 


結論:數據都是完整的,因此數據遷移成功;

#######################ES升級過程的注意點問題(別人說的,自己看看需要不需要###########################

因爲ELK中Kibana版本依賴ES的版本的,在ES升級同時,Kibana 也需要升級。
有的時候可能不是最新的就是最合適的,在選擇新版本過程中需要進行評估:比如插件的支持,尤其是第三方插件。我們用了IK中文分詞插件,當時ES最新版的是5.6.2,而IK最新版的還只支持到5.6.1.
elasticsearch-migration只會插入數據,不會更新數據。所以在第四步做業務遷移時,若是遷移數據量較大,可以考慮先將遷移可能會被修改數據,對於其他確定不會被修改的數據,可以等業務遷移完成之後,再進行。
IK配置文件:2.3.3版本IK的配置是在ES安裝目錄plugin下面,5.6.1版本是在ES安裝目錄的config下。
5.x string分爲text和keyword兩種數據類型。
因爲5.x對一些查詢(比如filter查詢)和聚合查詢進行的調整,在業務應用遷移之前,需要在測試環境下先對原有業務進行迴歸測試。目前我發現的有:
5.x版本,term聚合查詢時,聚合中size不能爲0,否則會報錯。
5.x 對於filter查詢結構進行調整,迴歸業務測試時需要注意。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章