如何将所有保存的数据和日志迁移到新的服务器的Graylog2?

我需要将我的graylog2服务器更改为包含所有数据的新服务器。 我已经安装了新版本,mongodb,elasticsearch和graylog2-web-interface。

我也复制所有elasticsearch_data到新的服务器,并检查所有的configuration文件:

graylog2.conf graylog2-elasticsearch.yml indexer.yml mongoid.yml general.yml email.yml 

有人有下一步的想法? 还有什么我需要做的是在我的新的graylog2服务器中拥有所有以前的日志和数据?

不仅是你需要的configuration文件。 转储elasticsearch和mongodb数据并在新服务器上恢复它们​​。 我不知道是否复制elasticsearch的数据会做弹性search工作,但是dump和restore就会正常工作。

我个人使用es_dump_restore进行弹性search,使用mongodb进行mongodb。

毕竟,停止新的服务器(graylog rails接口)并恢复转储,并且只有在启动之后才能启动graylog接口。

我假设你有很多关于graylog2的数据,但是你想避免大的停机时间。 这样,你需要复制config(/ etc / graylog和/ etc / elasticsearch)。

那么首先,您需要将新的elasticsearchjoin到您现有的elasticsearch集群中。 然后,您需要启动数据迁移到新节点。 它可以通过设置:

 # old node /etc/elasticsearch/elasticsearch.yml cluster.routing.allocation.disk.threshold_enabled: true cluster.routing.allocation.disk.watermark.low=0% cluster.routing.allocation.disk.watermark.high=0% 

或者,您可以使用以下方法启动数据迁移

 curl -XPUT localhost:9200/_cluster/settings -d '{ "transient" : { "cluster.routing.allocation.exclude._ip" : "10.0.0.1" } }' 

这里“排除”是指应该排除存储现有数据(即排除旧节点)的节点。

确认数据移动后(即新节点上的所有碎片),可以停止旧节点上的所有内容,并在新节点上启动Graylog。