elasticsearch - ELK堆栈和缩放

标签 elasticsearch logstash kibana

在这里忍受我。我花了最后一周的时间来熟悉ELK Stack。

我有一个运行ELK堆栈的有效的单盒解决方案,并且我对如何转发不止一种类型的日志以及如何将它们放入不同的ES索引有基本的了解。

一切工作都很好,我想扩大规模。

我的问题是更多如何扩展解决方案以满足更多数据需求/要求。

当前的解决方案正在处理较小的数据子集,并且工作正常,但是我想聚合很多更多数据。例如,我目前正在推送来自4个邮箱服务器的邮件跟踪日志,我想这样做,但是要配置40个邮箱服务器,还有很多繁忙的服务器。

我还想从客户端访问服务器推送IIS日志文件,有18台CAS服务器,并且在高峰时间每个服务器大约30分钟的IIS日志大小为120MB,有近100万条记录。

这种数据量很可能会使运行ELK的单个框崩溃。

我还没有真正研究过它,但是我读到ES允许某种形式的集群来添加更多实例,这对Logstash同样适用吗? Kibana是否应在多台服务器上运行?还是Logstash和ES的服务器不同?

最佳答案

如果您对记录进行大量处理(例如黑眼症,条件病等),则将使用logstash达到限制。请注意机器的CPU使用率以获取提示。

对于Elasticsearch本身,它与RAM和磁盘IO有关。在群集中拥有更多节点应同时提供这两个方面。

使用两个elasticsearch节点,您将获得冗余(两台计算机上都有一个副本)。添加第三个,您就可以开始实现IO的好处(将两个副本写入三台计算机可扩展IO)。

最终的数据节点将在计算机上具有64GB的RAM,其中31GB分配给elasticsearch。

您可能需要添加非数据节点,这些节点将在运行查询时处理要编制索引的数据的路由以及“减少”阶段。将其中两个放在负载均衡器后面。

关于elasticsearch - ELK堆栈和缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29753159/

相关文章:

elasticsearch - Logstash 代理不再编制索引

java - Elasticsearch 提高查询性能

logstash - 用于 IBM Integration Bus 10 (IIB) 的 ELK

macos - Apple 系统日志到 ELK

elasticsearch - 在自定义应用程序中集成 kibana

elasticsearch - Elasticsearch:使用正则表达式搜索包含破折号或减号的文本

elasticsearch - Elasticsearch - search_after 参数

elasticsearch - 使用 Logstash 建立索引时如何修复 Elasticsearch 中的重复文档?

redis - 多个 Logstash 实例导致行重复

elasticsearch - 聚合中发现的Elasticsearch返回命中数