【发布时间】:2015-11-04 18:32:39
【问题描述】:
我的一台机器上有一些索引。我需要将它们复制到另一台机器上,我该如何在弹性搜索中做到这一点。 我确实得到了一些很好的文档here,但由于我是 elasticsearch 生态系统的新手,而且由于我玩弄较少的数据索引,所以我想我会使用一些插件或方法来减少耗时。
【问题讨论】:
标签: elasticsearch elasticsearch-plugin
我的一台机器上有一些索引。我需要将它们复制到另一台机器上,我该如何在弹性搜索中做到这一点。 我确实得到了一些很好的文档here,但由于我是 elasticsearch 生态系统的新手,而且由于我玩弄较少的数据索引,所以我想我会使用一些插件或方法来减少耗时。
【问题讨论】:
标签: elasticsearch elasticsearch-plugin
我会将Logstash 与elasticsearch input 插件和elasticsearch output 插件一起使用。
在installing Logstash之后,您可以创建一个配置文件copy.conf,如下所示:
input {
elasticsearch {
hosts => "localhost:9200" <--- source ES host
index => "source_index"
}
}
filter {
mutate {
remove_field => [ "@version", "@timestamp" ] <--- remove added junk
}
}
output {
elasticsearch {
host => "localhost" <--- target ES host
port => 9200
protocol => "http"
manage_template => false
index => "target_index"
document_id => "%{id}" <--- name of your ID field
workers => 1
}
}
然后在设置正确的值(源/目标主机 + 源/目标索引)之后,您可以使用 bin/logstash -f copy.conf 运行它
【讨论】:
我可以在这里看到 3 个选项
【讨论】:
您也可以使用快照和恢复功能,您可以在其中拍摄一个索引的快照(备份),然后可以恢复到其他地方。
看看 https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-snapshots.html
【讨论】: