使用logstash迁移elasticsearch数据

支持同集群复制和跨集群复制

优点:通过简单配置即可实现、零编码。

缺点:logstash 单点运行迁移,速度一般。

 

以es2.2.1  logstash2.2.1 为例

以下logstash 配置功能为迁移同一个集群 索引 hottest_20170805_bak2 到  hottest_20170805_bak3

如果是跨集群修改ip即可

 1 #logstash 输入插件
 2 input {
 3   elasticsearch {
 4     hosts => [ "192.168.126.132:9200", "192.168.126.134:9200", "192.168.126.135:9200" ] #来源集群
 5     index => "hottest_20170805_bak2"
 6     size => 1000
 7     scroll => "5m"
 8     docinfo => true
 9     scan => true
10   }
11 }
12 
13 filter {
14   mutate {
15     remove_field => ["@timestamp", "@version"]  #过滤掉logstash 自己加上的字段
16   }
17 }
18 
19 #logstash 输出插件
20 output {
21   elasticsearch {
22     hosts => [ "192.168.126.132:9200", "192.168.126.134:9200", "192.168.126.135:9200" ] #目标集群
23     index => "hottest_20170805_bak3"  
24     #index => "%{[@metadata][_index]}"  和来源索引相同
25     document_type => "%{[@metadata][_type]}"  #和来源索引相同
26     document_id => "%{[@metadata][_id]}"
27     flush_size => 100 #批量提交数量
28     workers => 4 #并行数量
29   }
30 }

 

启动logstash,-f 指向配置文件地址。

 

logstash 配置参考

官网
input 插件参数
https://www.elastic.co/guide/en/logstash/2.2/plugins-inputs-elasticsearch.html
output 插件参数
https://www.elastic.co/guide/en/logstash/2.2/plugins-outputs-elasticsearch.html

 

posted on 2017-08-06 09:42  yaoqingyuan  阅读(4340)  评论(0编辑  收藏  举报

导航