E往无前 | 腾讯云大数据ES日志轻接入和免运维最佳实践

导语

日志的采集、检索和分析是每个业务在架构设计上都需要考虑的重要一环,同时也是痛点较多、人力成本较高的一环。如何降低日志接入和后续运维成本,腾讯云大数据ES告诉你答案。

日志的采集、检索和分析是每个业务在架构设计上都需要考虑的重要一环,同时也是痛点较多、人力成本较高的一环。本文将从日志的生命周期开始,分析业界最成熟的ELKB解决方案在接入时和接入后的痛点,并通过在腾讯云大数据ES上接入日志和运维索引的体验,分享腾讯云大数据ES是如何解决这些痛点,来降低日志接入和运维成本,让业务能专注于日志数据价值的挖掘。

一、日志的生命周期

通常情况下,日志的整个生命周期可以分为:日志生成、日志采集、日志处理、日志存储、日志分析和查询。

1.日志生成。业界成熟开源的组件一般有自己规范的日志格式和日志存储路径,而业务开发的程序输入的日志则可能五花八门。在K8S中,日志一般由POD中的业务程序输出到标准输出或标准错误输出中,并最终落盘在K8S规定的日志路径中(例如/var/log/containers),为日志采集提供了便利。

2.日志采集。确定日志文件的路径后,可以通过常用的日志采集的工具进行采集(例如Filebeat、Fluentd、Flume等),采集过程一般较为轻量,不对日志文件的原始内容进行处理。采集的日志根据业务需求或业务量大小,可以直接进入存储,也可以先进入消息队列,再由其他组件消费。

3.日志处理。日志的原始内容一般是一个大的文本,里面包含日志时间、错误等级、详细内容等可按正则表达式或JSON等格式分割的字段。一般情况下,可以以原始的大文本存储,但是对于有过滤、聚合、排序需求的场景,则需要事先将大文本中各字段分割开。这个操作比较消耗资源,一般是独立于采集进行,例如通过Logstash、Flink等工具对原始日志文件进行处理,当然也可以在采集端如Filebeat的processors或存储端如Elasticsearch的pipeline中进行。

4.日志存储。处理后的日志最后需要存储到检索引擎中,供后续分析和查询使用。业界常用的日志检索引擎有Elasticsearch、Clickhouse和Loki等。日志的存储一般具有明显的冷热属性,在最近几天的日志查询量最大,近几星期的日志查询量较小,而一个月以前的历史日志基本没有查询,因此在日志存储时需要根据这个特性考虑日志的存储生命周期,提高热数据的查询性能、节约冷数据的存储成本。

5.日志分析和查询。一般日志的存储端都具备日志的分析和查询能力,根据不同引擎的实现方式,有些擅长全文检索,有些擅长排序聚合,但是都必须具备实时处理大量数据、支持任意关键词检索、低成本等特性,同时对于分析和查询结果,需要有一个可视化界面用于展示或绘制图表(例如Kibana、Prometheus等)。

这几个生命周期中,业务侧关注的是日志的生成和最终日志的分析查询;运维侧则需要关注日志采集、处理和存储的组件管理。

二、ELKB解决方案痛点

对应日志的生命周期中各阶段的需求,业界已经形成了一套成熟的并且广泛使用的开源日志采集和分析架构——ELKB(Elasticsearch+Logstash+Kibana+Beats),提供了日志从采集到最后可视化展示分析结果的全链路解决方案。因为都同属于Elastic生态的产品,因此各个产品间在协议、规范、使用上都具有很好的兼容和一致性,并且Elastic社区活跃度高,产

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值