将索引从elasticsearch 1.x迁移到elasticsearch 2.x的工具

时间:2016-07-22 03:25:29

标签: elasticsearch elasticsearch-plugin elasticsearch-2.0

我正在寻找将数据从1.x迁移到2.x elasticsearch的工具。如果有空的话请建议吗?

1 个答案:

答案 0 :(得分:1)

您有几个选择。您可以使用Logstash将索引从旧的1.x ES复制到新的2.x ES:

input {
  elasticsearch {
   hosts => ["old-es:9200"]                     <--- source ES host
   index => "source_index"                      <--- source index to copy
   docinfo => true
  }
}
filter {
 mutate {
  remove_field => [ "@version", "@timestamp" ]  <--- remove added junk
 }
}
output {
 elasticsearch {
   hosts => ["new-es:9200]"                     <--- target ES host
   index => "%{[@metadata][_index]}"
   document_type => "%{[@metadata][_type]}"
   document_id => "%{[@metadata][_id]}"
 }
}

您还可以使用elasticdump并使用以下命令将source_indexold-es:9200复制到new-es:9200主机:

elasticdump \
  --input=http://old-es:9200/source_index \
  --output=http://new-es:9200/source_index \
  --type=analyzer
elasticdump \
  --input=http://old-es:9200/source_index \
  --output=http://new-es:9200/source_index \
  --type=mapping
elasticdump \
  --input=http://old-es:9200/source_index \
  --output=http://new-es:9200/source_index \
  --type=data