5 款顶级 Kubernetes 日志监控工具

Kubernetes在容器编排市场中占主导地位,推进企业向微服务演进。微服务的每一个实例都会生成大量日志事件,这些事件很快就变得难以管理。但更复杂的是当出现问题时,因为服务之间复杂的交互做用,以及可能的故障模式,致使很难找到根本缘由。潜在的问题使得Kubernetes日志管理工具变得十分重要。算法

企业老是设法寻找适用的工具知足需求,并让监控,日志记录和故障分析尽量高效和快速。服务器

Zebrium

你可能会优先考虑Prometheus(普罗米修斯)或ELK?但Zebrium却也能做为优先选项。架构

这家新成立的初创公司最近入选了“Gartner 2020年值得关注的25家企业软件初创企业”。谈到最佳实践,Zebrium最近还帮助Sweetwater将事件跟踪时间从3小时减小到只有几分钟。Zebrium甚至能够发现之前未发现的隐藏问题。这是一项出色的功能,由于它能够帮助在问题影响客户以前发现问题。app

那么,什么使Zebrium在竞争中脱颖而出?Zebrium使用人工智能来发现问题以及自动发现根本缘由,而全部其余工具都依赖于用户手动添加规则。Zebrium也能够用做独立的日志管理平台,也能够与ELK Stack或其余日志管理器集成。机器学习

优势:易于启动;只需复制/粘贴自定义的HELM或kubectl命令;自动检测问题和根本缘由,无需手动规则;能够用做独立的日志管理工具,也能够用做现有日志管理工具(例如ELK Stack)的机器学习附件。ide

缺点:免费计划限制为天天500 MB,保留3天;支持Kubernetes,Docker和大多数常见平台,但不支持Windows。微服务

Sematext

用于日志管理和应用程序性能监控的解决方案。Sematex提供了系统状态的全栈可见性。Sematext不只限于Kubernetes日志,还能够监控和Kubernetes(基于度量标准和日志)。收集到的日志会自动针对几种不一样的已知日志格式进行解析/结构化,而且用户还能够提供自定义日志的模式。它还公开了Elasticsearch API,所以也可使用任何与Elasticsearch配合使用的工具,例如Filebeat和Logstash与Sematex。能够将其用做ELK的变体或与本机Sematext生态系统一块儿使用。该工具备助于建立特定规则,来监控特定状况并捕获异常。借助Sematex全面的实时仪表板,客户能够控制和监控全部服务。关注民工哥技术之路公众号,回复1024获取2TB资料一份,助力你们更好的学习技术。工具

优势:与其余Sematext云工具集成;可配置超限来阻止日志被接受从而控制成本;具备ELK的灵活性。性能

缺点:Sematext小部件和Kibana不能在一个仪表板上混合使用;自定义解析须要在日志传送器中完成,Sematext仅在服务器端解析Syslog和JSON;跟踪功能较弱,但已经在计划进行改进。学习

Loki

Loki是一个受Prometheus启发的多租户和高度可用的日志聚合工具。这款工具备助于收集日志,可是用户将须要为其创建手动规则。Loki与Grafana,Prometheus和Kubernetes合做。Loki可让内部流程更有效率。如,它节省了Paytm Insider 75%的日志记录和监控成本。Loki不会索引你的日志内容,而是仅索引每一个事件流的一组标签,所以效率很高。优势:拥有大型的生态系统;丰富的可视化功能;因为未索引日志内容而提升了效率。

缺点:未针对Kubernetes日志管理进行优化;大量的架构规则手工工做;缺乏内容索引可能会限制搜索性能。

ELK Stack

ELK是最著名的日志管理开源工具。ELK是Elasticsearch,Logstash和Kibana的首字母缩写。每一个组件负责日志记录过程的不一样部分。Elasticsearch是一个功能强大且可扩展的搜索系统,Logstash聚合并处理日志,而Kibana提供了一个分析和可视化界面,可帮助用户理解数据。它们共同为Kubernetes提供了全面的日志记录解决方案。但ELK Stack还有许多其余变体,如EFK Stack,即Elasticsearch,Fluentd和Kibana组成。ELK被Adobe,T-Mobile和沃尔玛等许多大公司使用,所以能够证实它的可生产性。因此ELK是一个可靠且通过验证的工具。但他会带来复杂性和工做所需的大量资源。

优势:ELK是众所周知的,而且拥有庞大的社区;很是普遍的平台支持;Kibana中丰富的分析和可视化功能;须要对日志和手动定义的警报规则进行复杂的分析。

缺点:维持规模难度大;须要不少调整,特别是对于大型环境;大量的资源需求;某些功能须要付费许可证。

Fluentd

Fluentd是一个跨平台的开源数据收集器,提供了统一的日志记录层,但它不是独立的日志管理器。做为颇受欢迎的工具,拥有Atlassian,微软和亚马逊等5000多个客户。看到这些大型客户,可印证其可靠性和性能。此外,Fluentd还建立了一个统一的日志记录层,可帮助更有效地使用数据并在软件上快速迭代数据。它能够帮助你每秒处理120000条记录。优势:大型社区和插件生态系统;统一日志记录层;通过验证的可靠性和性能。能够在不到10分钟的时间内安装完毕。

缺点:难以配置;对转换数据的支持有限;不是完整的日志记录解决方案。

结语

你可能会问,为何没有将Prometheus列入名单,由于本文专一于日志监控工具,而Prometheus处理指标不支持日志。

因此,若是你对手动搜索日志的不擅长,或者不肯意构建和管理警报规则,则应尝试使用基于机器学习算法的Zebrium。这可能会节省大量时间,并摆脱建立大量规则的繁琐任务。

若是你正在寻找更主流的东西,而且知道要建立哪些规则,可尝试使用Loki或Sematext,它们将是很是适合的高效工具。

此外,你但愿在公有云中使用日志监控,则不妨使用云提供商提供的服务,好比AWS的CloudWatch,而他们仅对自家云中的业务的提供支持。

若是你的日志有多个或特殊的来源,则可尝试使用Fluentd及其统一的日志记录层,可是你仍然须要一个日志记录工具。

原文:https://www.toutiao.com/i6889... 做者:云智时代

image

相关文章
相关标签/搜索