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

编译好的工具:https://github.com/medcl/esm-abandoned/releases/tag/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查询结构进行调整,回归业务测试时需要注意。

发布了32 篇原创文章 · 获赞 8 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/jeffiny/article/details/84567720