2014-11-08 64 views
2

我有多个logstash实例将日志直接发送到中央elasticsearch服务器(使用output-> elasticsearch)。logstash如何从Elasticsearch恢复下去

目前为止工作正常,但是当elasticsearch正在关闭时(例如整个服务器重启),一旦elasticsearch重新启动,logstash不会重新发送日志。

我必须手动重新启动logstash。此外,所有从elasticsearch开始直到logstash重启的日志都会丢失。

如何更改我的设置以使其更容错?

+0

Logstash应该算出来,即使集群中有一个节点。 – 2014-11-12 00:58:02

回答

0

添加另一台服务器并启动elasticsearch集群。 Elasticsearch的构建是为了扩展到多个节点,而logstash客户端将自动加入集群并进行故障切换。

了解更多关于the distributed nature of elasticsearch

2

您应该考虑使用代理并将所有日志发送到消息队列(例如rabbitMQ),从那里Logstash将提取消息并将数据发送到Elasticsearch。如果Elasticsearch将会下降,Logstash将停止拉动消息,并且它们将累积到经纪商中。一旦连接重新建立你的消息将被写入。