繁体   English   中英

多个Logstash实例与Filebeats

[英]Multiple Logstash instances vs Filebeats

我正在尝试为我们的弹性堆栈实现建立最佳的体系结构。

我们在每个网络上都有两个不同的网络(分别称为内部和外部)和几个Web /数据库/应用程序服务器(大约10个)。

我想使用两个网络中机器的IIS日志,我们的RabbitMQ消息以及其他一些信息,然后将它们发送到我的弹性和kibana安装所在的内部网络中的单个服务器上。

对于内部和外部网络上的服务器,我可以看到两种将日志发送到elastic的主要方法。

  1. 在每台服务器上设置logstash,并将输出发送到内部网络上的弹性服务器。
  2. 在每台服务器上设置filebeat并将日志发送到运行logstash的单个服务器(这可能是托管弹性和kibana的盒子)

我目前不确定这些方法的利弊。 我相信正确的方法是使用Filebeats,但我不知道为什么我不只是将logstash放在多个位置,因为我似乎最好分配日志处理。 再说一次,也许一次输入20到30的logtash不是问题吗?

对这方面的任何想法或指导感兴趣。

根据我在文档中阅读的内容,Logstash在内存方面比Filebeat要求更高,尤其是如果您对日志进行某种处理(例如grok解析)的话。 Logstash至少代表一个JVM(使用JRuby)。 对于filebeat,我认为它的占用空间要小得多,因为它已针对运输日志进行了优化(我从未使用过,所以我不能说)。

此外,它还会使您想要对Logstash实例或其配置进行的任何更新变得复杂。

对于集中式Logstash,优点是可以很容易地更改Elasticsearch实例的地址,重定向到像redis这样的缓存或添加另一个输出。 我还发现Logstash(在2. +版中)需要频繁重启,因此如果您只需要处理一个实例,这会更容易。

我从未将Logstash与多个输入一起使用,所以我不能说。


在我负责日志集中系统的工作中,我们使用了beaver(等效于文件拍)将日志发送到Redis服务器,并且我们有两到三个Logstash服务器将所有内容发送到Elasticsearch。 以上所有评论均来自该时期。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM