ELK 的好架构是啥?
Posted
技术标签:
【中文标题】ELK 的好架构是啥?【英文标题】:What's the good architecture for ELK?ELK 的好架构是什么? 【发布时间】:2015-07-22 14:20:16 【问题描述】:我正在尝试使用 ELK 构建日志分析系统。我看到很多以不同方式使用 ELK 的架构。其中之一是
Logstash->Redis->Logstash->Elasticseach->Kibana
第一个 Logstash 用于收集日志,第二个 Logstash 用于过滤日志。
我对Redis不是很清楚,我们必须使用它吗?为什么不使用 Kafka?
【问题讨论】:
【参考方案1】:两个 logstash 实例之间的 redis 是一个缓冲区,以防弹性搜索或 logstash 索引器出现故障。
根据您使用 logstash 处理的内容,您可能不需要它。如果您正在阅读日志文件,则当 logstash(索引器)不堪重负时,logstash(托运人)将停止发送日志。这样,您可以获得分布式缓存(在您的日志文件中!)。
如果您使用一次性事件(例如,来自网络设备的陷阱或系统日志),那么在 logstash(索引器)可用之前,像 redis 或 rabbitmq 这样的缓冲区对于存储它们很重要。
【讨论】:
【参考方案2】:第二个 logstash 用于标记日志并将它们从日志行转换为解析的 JSON。
关于架构,您可能还需要考虑其他几件事,例如安全性、映射、可扩展性。你可以看看我写的一篇关于如何在生产中部署 ELK 的博文 (http://logz.io/blog/deploy-elk-production/)
HTH
【讨论】:
【参考方案3】:您可以找到简单的ELK 设置 (if doesn't need of Redis
)。您可以通过以下链接进行完整设置以及如何使用 logstash 加载日志并使用 elsticsearch 搜索日志并在 Kibana 中进行可视化强>
ELK Setup Installation
【讨论】:
以上是关于ELK 的好架构是啥?的主要内容,如果未能解决你的问题,请参考以下文章