01 日志服务面临的挑战
随着中美摩擦的升级,国内开源文化的兴起,各大互联网公司以及各行业头部企业,纷纷走向开源、安全、自主、可控的发展路线。基于开源引擎 Kafka/ElasticSearch,构建了日志基础设施的基础架构共识:
- 日志采集能力:服务端、客户端、Web、数据库的日志搜集工作;
- 日志ETL能力:日志实时ETL、ETL链路监控,ETL链路质量度量;
- 日志检索能力:全文搜索能力、日志上下文还原能力;
- 日志分析能力:Adhoc的日志OLAP能力。
随着日志流量、日志任务持续增加,使得“日志时效性、运维友好性、服务稳定性、数据安全性”问题变得非常棘手,如:
1)日志采集阶段面临的挑战
- 需要支持物理机、虚拟机、容器化场景,以服务粒度进行日志采集;支持弹性动态扩缩容;
- 需要支持海量、数十万Agent监控、运维、多版本管理;
- 需要支持共享多租户分级保障模型;
- 需要针对任务级别提供丰富的指标,故障诊断和自愈能力。
2)日志ETL阶段面临的挑战
- ETL语义表达要简单清晰可运维,同时与底层基础设施解耦,对SQL表达方式是强需求;
- ETL链路涉及多个环节,各自有自己的指标体系,口径不统一,问题定位与排查成本很高;
- ETL链路涉及日志存储与计算,在Quota内端到端弹性扩缩能力充满了技术挑战。
3)日志存储面临的挑战
- Kafka磁盘IO热点导致的集群生产消费雪崩;
- Topic资源隔离差,流量突增、回溯消费,影响集群稳定性;
- Kafka有大量的集群和topic的操作需要平台来承接社区Kafka-Manager能力缺失。
4)日志检索面临的挑战
- ElasticSearch受制于元信息瓶颈,集群Shard数无法突破数十万级,需要解决扩展性问题;
- ElasticSearch集群资源多租户与查询隔离体系的缺失,是稳定性的最大杀手;
- ElasticSearch端到端立体化监控体系缺失,运维保障能力不足,需要解决运维友好性问题。
5)日志分析面临的挑战
- 亿级明细数据级的Adhoc查询分析能力;
- 亿级基数维度列高精去重场景能力的支撑;
- 端到端立体化监控体系的缺失,运维保障能力不足,需要解决运维友好性问题。
02 滴滴Logi日志服务套件
伴随着企业数字化转型、业务全面上云的进程,微服务、容器化等技术的快速发展,业务对稳定、易用的日志基础设施提出了三大迫切需求:
- 服务保障的需要:全链路追踪是稳定性保障的重要抓手;
- 业务运营的需要:A/B TEST、活动运营分析、端上用户行为分析、精准营销,对百MB/S日志的秒级收容能力,TB级日志的秒级搜索能力强烈诉求;
- 业务安全的需要:识别攻击源进行资产止损,安全审计与溯源,TB级别日志Adhoc分析能力。
滴滴Logi日志服务套件在滴滴内部经过7年多的沉淀打磨,针对日志采集、日志存储、日志计算、日志检索、日志分析各个环节,在组件能力上PAAS化建设、在引擎稳定性与扩展性上进行针对性的优化,架构如下:
具有如下优势:
- 开源自主可控:Logi-Agent、Logi-LogX、Logi-KafkaManager、 Logi-ElasticSearchManager 各PAAS套件计划全开源;
- 引擎稳定可靠:Agent 40MB/S的单任务采集性能,可控资源的隔离能力;LogX采集任务的实时ETL秒级延迟、计算性能的极致优化;滴滴kafka百GB/S的实时流量;滴滴ElasticSearch数十PB的索引存储集群稳定性99.95%;
- 服务运营沉淀:数十万日志服务任务端到端全链路保障日志数据的及时性、完整性、可观察性、运维友好性;资源的弹性调度与分级保障能力的产品化沉淀;
- 平台专业易用:分钟级完成日志全链路的端到端自助接入;SQL模板+UDF的个性化清洗能力支持;百TB级数据秒级的检索体验。
》Logi-Agent介绍
Logi-Agent致力于打造企业级的数据采集平台,负责公司多端、多态数据的采集,架构如下:
滴滴Logi-Agent线上规模10W部署节点,130GB/s的日志采集量,20000+日志采集任务,单任务最大采集能力40MB/S。
》Logi-Kafka介绍
基于用户、研发、运维不同视角的高频场景PAAS化,提升运维友好性、引擎可观察性、用户便利性,已开源https://github.com/didi/kafka... 500+免费用户,体验地址: http://117.51.146.109:8080/ ,账号密码:admin/admin
滴滴Kafka集群规模500+,60GB/S的流量,共享多租户大集群场景的历练(CPU利用率峰值30%,磁盘50%),SLA承诺99.95%,引擎基于2.5版本进行了40+特性增强,磁盘过载保护,分区动态迁移,业务线程隔离是滴滴特色功能,稳定性的重要抓手!
》Logi-LogX介绍
LogX面向服务以MB/S作为Quota的单位,以SreamingSQL+UDF作为ETL表达载体,支持以Quota为单位的动态扩、缩容能力,以任务为单位,构建通道端到端性能、及时性、完整性指标体系。
滴滴20000+StreamingSQL ETL 任务,单任务最大流量500MB/S,端到端ETL延迟90分位小于2Min,具备分钟级动态扩缩容能力。
》Logi-ElasticSearch介绍
业界最专业的ElasticSearch-Manager,基于用户、研发、运维不同视角的高频场景PAAS化,沉淀了全托管特色的索引服务。
提供了基于索引模板的容量规划特性,集群磁盘利用率30%→65%,开源准备中。
自研ElasticSearch-GateWay,提供跨集群访问,多版本兼容,租户定义与安全,DSL审核与分析等重大拓展实用特性,支撑了滴滴50亿次/天的数据读取,1200W/S的数据写入,是ES引擎平滑升级2.3.3->6.6.1->7.6.1的基石组件。
滴滴ElasticSearch集群规模3500+,8PB存储,共享多租户大集群(1000+实例,60W Shard,CPU利用率峰值45%,磁盘60% )场景的历练。
SLA承诺99.95%,引擎基于7.6.1版本进行了150+特性增强,写入性能是社区版本2倍。
FastIndex 50TB索引1小时完成构建,已开源(https://github.com/didi/ES-Fastloader)。
自研DCDR,提供了集群间索引高可用的能力,为线上50+主搜场景提供了异地多活的能力,累积向ES社区贡献 30+PR。
03 滴滴Logi应用案例
滴滴Logi在滴滴内部服务的场景非常丰富,在故障定位、日志分析、日志服务、业务运营、安全审计、日志资产、日志大屏等场景都有深度实践。
限于篇幅接下来会围绕着日志服务LogInsight和业务运营魔镜这两个方面详细展开,分析基于滴滴Logi能够产生的业务价值。
》LogInsight
LogInsight基于滴滴Logi的能力,主打云端日志存储解决方案,针对云化和容器化后面临的日志存储与分析的诉求,提供了日志冷备、资源管理、日志检索等能力。
- 显著降低日志使用、存储成本 全托管、弹性伸缩,免运维 冷备存储,约0.02元/GB/月,显著降低存储开销,支持1-365天自定义存储时间;
- 快速发现、定位问题,提高业务稳定 基于大数据流式计算实现接口性能与错误日志的统计分析,提供接口调用关系、拓扑关系、上下游流量分析、服务错误定位、错误聚类等功能;安全可靠
- 安全可靠 可用性不低于99.9%,每天可处理上百TB日志量 数据实时采集,分钟级落盘,日志存储不丢失满足日志审计需求。
》魔镜
魔镜是专业的场景化用户行为智能分析平台,提供从数据采集、存储、计算、分析到运营推广的全流程解决方案。
- 场景化分析模型 用户留存分析,用户轨迹分析,用户画像分析;
- 基础服务能力 核心指标可实时查当日数据,实时计算,秒级产生数据,大盘支持集成报表;
- 数据分析能力 非研发人员可自建指标,支持多类型可视化报表,支持数据导出随心分析,支持omega数据上报数据;
- 多产品满意度调研 支持多组织多产品结构,支持线上自动化配置,支持抽奖,提高参与度。
基于滴滴Logi日志服务套件,滴滴Logi不仅能够更好的满足日志场景企业普遍的运维可观察性、应用可观察性诉求,也能够更好的满足业务运营、安全审计、日志分析、日志挖掘等不同场景全方位的需求。
滴滴Logi的整体开源计划如下,欢迎大家关注。
在生产环节使用开源版的企业用户,可以加入OCE,我们会额外给予更好的支持,比如专属的技术沙龙、企业一对一的交流机会、专属的答疑群等。OCE申请入口在Obsuite公众号的菜单里,点击【OCE认证】也可直接申请。