行业挑战
互联网时代,社交网络、电子商务与移动通信将人类社会带入 PB 级别以上的结构与非结构信息并存的大数据时代。数据量的爆发性增长,使企业 IT 架构不断扩展,服务器、存储设备的数量越来越多,网络也变得更加复杂。而大数据的 4V 特征,数据量大(Volume)、 类型繁多(Variety) 、价值密度低(Value)、时效高(Velocity) 也使得传统的技术架构和路线难以高效地处理如此海量的数据。可以说,大数据时代对企业的数据驾驭能力提出了新的挑战。尤其是大数据平台往往支撑着公司的搜索、推荐、广告等核心业务,为了保障良好的用户体验和业务效果,运维工作显得十分艰巨。相比于传统的运维方式,大数据时代的运维面临着集群规模更大、业务组件更多、监控可视化与智能化等更为复杂的难题。
Gartner 在 2016 年第一次提出 AIOps 概念时,AI 代表了 Algorithmic(算法),算法的基石正是海量的数据,在 2017 年将 AI 含义改为 Artificial Intelligence(人工智能)后,同样需要海量的数据进行处理和学习。我们从下文的 Gartner 描绘的 AIOps 平台架构中同样能看到数据对于 AIOps、对于运维、对于监控的重要性。
智能运维的基础建立在大规模数据分析和计算之上,当数据量很小时,甚至可以人工判断和决策,而一旦数据量达到一定规模,大数据涉及的所有技术就都会成为智能运维所依赖的技术。一方面,可以说智能运维是一种新型技术, 因为它从另一个视角去看待运维,对传统运维进行了创新和升华; 另一方面,也可以说智能运维是一种经典技术,它是一系列成熟技术的结合体, 融入了运维、大数据、机器学习、深度学习等方方面面的技术。在大数据时代,需要从如下领域做好运维平台的建设:
- 基础设施平台化,大数据的 4V 特性,相比于传统的系统运维,数据的处理框架变得更为多样化和复杂化,比如多源异构海量数据的分布式存储、离线批处理、高性能索引、大规模流数据处理,以及可视化监控与报警平台等。
- 集群管理自动化,降低运维复杂度。自动化能够提升稳定性,将固化的操作交给机器去做,可以降低人为操作失误,提高线上的稳定性; 自动化还能极大地提高效率,将运维人员从日常烦琐的操作中解放出来,把更多的时间投入到运维平台的迭代优化上,从而更好地为业务服务。
- 运维决策智能化,充分利用大数据分析技术提升预测、发现和自动检测的能力,实现智能预警,自动修复,动态伸缩集群,最大化利用资源的能力,减少用户成本,提高系统的稳定性。
解决方案
实时数据收集
在实时数据收集层中,具体包括大数据平台各服务日志数据的抓取上报、服务及主机指标数据的抓取上报、服务及主机可用性数据抓取、配置信息收集和第三方相关数据接入。其中:
- 大数据平台各服务的日志数据由各服务(如 HDFS、HBase 等)按照设计的标准格式进行收集,然后汇总上报到 DataHub/Kafka 的日志 Topic 中。
- 服务及主机的指标数据通过命令获取、日志数据提取、调用服务接口三种方式获取后上报到 DataHub/Kafka 中对应的原始数据 Topic 中。
- 配置信息通过人工收集后直接入 MySQL 的配置表中,并在系统页面上提供对配置信息的增删改查。
- 第三方相关数据由第三方系统提供,通过 HTTP 加载方式上报到 DataHub/Kafka 中对应的 Topic。
实时数据接入&计算
在实时数据接入&计算层,对于 DataHub/Kafka 中的实时指标 Topic 中的服务数据,由 Flink 的服务指标计算任务消费后经过计算存储到 HBase/OTS 的指标表中;同时对于 DataHub/Kafka 中的实时指标 Topic 中的数据按照分钟级、小时级、天级依次进行汇聚后返回到 DataHub/Kafka 中对应的分钟级 Topic、小时级 Topic、天级 Topic 中,最后将各个 Topic 存储到 ES 对应的 Index 中,供上层数据展示检索查询使用;同时部分数据还根据业务需要归档到 EMR 离线计算集群或者 MaxCompute 之中,进行离线深度分析、数据备份提供数据来源。
方案优势
- 系统具有高可靠性和高实时性,且不会对底层服务造成影响。本系统底层数据的收集和上层页面展示是独立的两个部分,底层数据不断收集、处理、存储以供上层页面展示使用,上层页面展示直接从存储的 HBase/OTS 和 ES 中获取数据,当大量用户访问时不会对底层服务造成影响。
- 系统支持对大数据平台历史数据的查询。本监控系统在服务在线业务告警,同时归档部分数据到离线大数据系统,所以使得本系统可以支持对大数据平台历史数据的查询,同时支持根据时间区间来动态的展示分钟级、小时级、天级等不同粒度的历史数据。
- 系统支持实时监控告警。本监控系统在底层数据收集上来后,对原始数据进行解析增加了告警计算后将告警信息持久化并实时的向预留的责任人联系方式发送短信或者邮件。
成功案例
阿里云
阿里云计算平台体系承载着阿里巴巴集团几乎全部的数据存储以及计算能力,如服务器规模上 10W+ 的大数据离线计算平台(MaxCompute),以及支撑阿里双 11 晚会现场交易大屏每秒处理 25 亿条实时日志,作业运行接近上万台物理机上的实时计算平台。
随着数据规模的不断扩大,业务需求日益增长,大数据平台及大数据应用业务飞速发展,围绕阿里大数据平台和应用的稳定性、成本、效率及安全有了更大的挑战及更高的要求。阿里云大数据运维团队基于阿里云计算平台现有的基础设施构建出完整的全域大数据运维体系,为最终实现 AIOps 服务。
实时计算 Flink 版产品交流群阿里云实时计算Flink - 解决方案:
https://developer.aliyun.com/article/765097
阿里云实时计算Flink - 场景案例:
https://ververica.cn/corporate-practice
阿里云实时计算Flink - 产品详情页:
https://www.aliyun.com/product/bigdata/product/sc