Я ищу инструменты для переноса данных с 1.x на 2.x elasticsearch. Подскажите, есть ли что-нибудь в наличии?
Инструменты для переноса индекса с elasticsearch 1.x на elasticsearch 2.x
Ответы (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_index
с old-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
person
Val
schedule
22.07.2016
Большое спасибо @val .. вы потрясающие .. :) Я использовал elasticdump, так как оба моих сервера находятся в разных сетях и маршрута нет, поэтому я не могу использовать logstash. С помощью elasticdumnp я взял дамп в файл, а затем перенес файл в новый экземпляр и поместил дамп на новый сервер. Это сработало отлично .. Еще раз спасибо
- person user1819071; 25.07.2016
Круто, рад, что помогло!
- person Val; 25.07.2016