logstash如何从Elasticsearch中恢复

时间:2014-11-08 10:15:30

标签: elasticsearch logstash

我有多个logstash实例将日志直接发送到中央弹性搜索服务器(使用output-> elasticsearch)。

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

我必须手动重启logstash。此外,来自elasticsearch的所有日志都将丢失,直到重新启动logstash。

如何更改设置以使其更具容错性?

2 个答案:

答案 0 :(得分:1)

您应该考虑使用代理并将所有日志发送到消息队列(例如rabbitMQ),然后Logstash将从中提取消息并将数据发送到Elasticsearch。如果Elasticsearch失败,Logstash将停止提取消息,它们将在代理中累积。一旦连接重新建立,您的消息将被写入。

答案 1 :(得分:0)

添加另一台服务器并启动elasticsearch集群。构建Elasticsearch以扩展到多个节点,logstash客户端将自动加入群集并进行故障转移。

详细了解the distributed nature of elasticsearch