8 月 27 日晚上八点,七牛云高级解决方案架构师程雪松在 IT 大咖说进行了题为《挖掘传统行业日志大数据的无限价值》的直播,对传统行业运维常见困境和统一日志管理的必要性进行了深入解析,并通过 Pandora 的一些真实用户案例和大家详细阐述了如何挖掘传统行业日志大数据的无限价值。本文是对直播内容的整理。
下篇主要剖析了日志管理平台建设关注的要点以及分享了 Pandora 的一些真实用户案例,并针对听众的提问进行了解答。
监控与告警
数据分析过后,需要形成相关的数据的监控和告警。比如把一些我关心的重要的指标监控固化下来,定期地对这些数据进行监控,一旦它出现问题,我需要及时地反映出来,形成一些告警方面的通知。最好是能够把搜索结果直接保存为告警设置。比如说我搜索出一个结果出来之后,我觉得这个结果很重要,这个分析出来的结果,我不仅只是想查这一次,需要它一直能够被监控起来。一旦这个监控值出现问题,我就能够报警。那么就可以另存为报警以后去设置相关的一些策略,比如说我要去监控这个指标的最大值、最小值、平均值等等,然后这个值一旦突破了某个阈值,就能够通过短信或者邮件的方式,来进行及时的报警,这就是监控报警的一个功能,它是必须要有的。
开箱即用的报表
 然后就是可视化的展现,能够支持各种各样的图表,把一些比较难懂的文本型的日志,或者数据型的日志,变成更易读更直观的一些报表,制作成一些大家比较能够理解的比如说饼图,柱状图,折线图,甚至你可能会遇到像中国地图,世界地图等等。我预先要支持这样的图表,能够很方便的去定义这些报表的功能,把数据输入进去,选择相关的图表的格式,自动去生成这样的一些报表。这样的话你就能够很方便地去体现你的日志分析结果和相关参数的监控。
大屏展示
 而且最终也能支持大屏展示,能够投射到指挥台或者监控大屏。让我们的 IT 运维人员或者 IT 部门的领导,或者甚至是公司的老板,能够方便看到信息化平台的情况,内部系统是如何运行的,现在的状态是什么样,这就是一个大屏的展示。
机器学习(异常检测)
现在对于日志分析,仅仅是对已有的数据进行固化分析或是已有的一些策略进行分析已经无法满足运维日新月异的要求,其实很多 IT 的问题,最开始的时候都是未知的。甚至在一开始对业务进行监控的时候,我可能都很难去预想到监控策略应该怎么样去设计,或者很难在一开始就提出来监控指标的阈值应该是多少。
历史数据分析
 所以如果说日志分析平台能够引入现在一些新的大数据的技术,比如说深度学习或者机器学习,就能够很方便的去对历史数据进行分析,告诉我中间的异常值。举一个例子,下面的这一个截图其实是一个企业的数据流量的变化情况,然后我们会发现,代表实际数据的蓝色线其实并不是平缓的,而是呈现一个周期变化的规律。传统的我们对于流量的监控就是画两条平行线,把所有的流量夹在里面,这样的话一旦出现流量的实时值超过我的阈值的时候就会报警。然后会推送相对应的邮件或者短信的方式去告知我的运维人员。但是我们会发现,类似中间小箭头的地方就会出现漏报,就是说,看起来它其实并没有突破整个所有历史周期里面的峰值和最低值,但是我们看到它其实是不符合历史数据的变化规律的。 那么这个时候如果我们能够基于不同时段,灵活动态的去调整阈值,这样的话就能够很方便的发现这些虽然没有突破历史阈值但是并不符合周期性变化规律的一个数据。这样其实是能够很方便的去找到原来可能遗漏的一些数据异常点。而且这些漏报的异常点很可能会成为未来很大的风险,那么我们如果能够在这个时候及时地发现这些异常点,及时地去介入,把这样的风险,甚至是未来的一些故障防患于未然。这是一个历史数据分析的比较经典的一个场景。
预测未来
我们既然能够基于历史数据做全面的学习和分析,那么我们也希望能够去配合实时数据的增量学习,去准确预测未来的趋势,去支持更多的一些智能的特性。这个在什么场景会用到呢? 比如说我们在未来的几天之内想做一个业务的变更或者升级,但是我不知道哪个时间点最合适影响最小,那往常可能我们都会选择深夜例如半夜十二点来做系统交割或者新系统上线,这个对于大家来讲熬夜的压力很大。但如果我们能够通过机器学习预测未来的整个流量变化情况,我们就能够很方便的去找到一个流量低,又不需要给大家带来太多身体负担的时间点来做我们的系统变更。
极简使用
 机器学习固然好,但大家很多时候会认为机器学习是一个特别高大上的东西,觉得算法模型是个特别复杂的东西。那么会想我有没有能力玩,能不能玩得转,能不能很方便地去使用这样一些机器学习的功能和特性。那能否自动化的、灵活化的、智能化的选择算法,自动生成相关的模型,让我们的运维人员能够低门槛甚至零门槛来使用这个机器学习的功能就变得很重要。机器学习也是现在大家在选择日志管理平台的时候可能需要去考虑的一个方向。
开放性(API)
 最后是开放性 api,其实很多时候运维人员在日常使用日志管理平台的过程当中不只是简单的登录到平台上面通过你的可视化界面去使用你的功能。日志分析平台是需要和业务系统,分析系统或者用户已有的监控平台进行对接的。甚至很多时候对日志分析平台的使用,并不是直接点进你的界面,而是要通过接口的方式来去使用你的能力。所以整个日志分析平台的开放性会是大家在日常使用过程中必须要考虑的一个问题。考虑到我们会去对接非常多的,不同的应用开发商开发的不同的业务系统,甚至说不同的监控软件,所以开放性的 api 的丰富程度其实是一个非常重要的指标。那现在基本上主流的语言包括像 Java,php,python,C,C++,JavaScript,Go 等等这样的一些语言,最好都需要支持到。所以开放性也是大家在去对日志分析平台进行选择时必须考虑的一个问题。
七牛云日志分析平台 Pandora
那么有没有这样一个平台能够解决之前提到的所有问题呢?有,就是七牛的日志分析平台 Pandora。它能够实现对于日志的全生命周期的智能管理,比如之前提到的数据的收集、清洗、存储、搜索、监控告警、分析、报表、开放等等相关方面,我们都有相关的技术和产品能够去满足用户的需求。Pandora 能够实现对于日志全生命周期的智能管理,适用于像运维分析,安全审计,业务数据分析等等各种场景,针对像互联网,智能硬件,智能制造等行业,都能够提供良好的支撑和价值。  这张图是现在 Pandora 能力的全景图,对应之前提到的八个方面,能够发现其实 Pandora 已经覆盖了用户对于日志分析平台的所有要求。 logkit 是我们的数据采集平台,能够支持数据的采集、解析、转换、发送,然后 pipeline 就是基于大数据的技术,能够帮助用户进行实时和离线分析的一个大数据平台。insight 就是数据分析平台,支持对日志统一的存储,搜索,报表,监控告警,api,分析与预测,包括机器学习等等相关的功能。 总结一下 Pandora 的优势就是六点:数据规模大,处理速度快,开放接口巧,生态支持多,用户体验爽,公有云经验足。Pandora 不仅支持公有云的服务,我们也可以做私有化的部署。这个可以根据用户实际的情况来灵活选择。 数据规模大 Pandora 现在支持在公有云上完全横向扩展的存储和计算设计。现在累计在云上的存储数据超过了 40 个 pb,累计的计算数据超过 500 个 pb,传统的 ELK 的方式是无法满足这么大体量的数据的要求。 处理速度快 Pandora 支持实时计算能够做到毫秒到秒级的响应。所有的日志能够做到入库打点毫秒级的响应。例如说系统端或者数据源端能够实时产生的日志,我们就能够实时把这些日志采集到我们的平台上来,而且保证数据不丢失不冗余。 开放接口巧 我们所有的操作都有对应的 api 的支持,能够很容易的去跟第三方的系统进行结合,这是我们的第三个优势叫做开放接口巧。 生态支持多 我们支持现在业界主流的绝大多数的关系型数据库,非关系型数据库,消息队列及一些大数据相关组件。具体的列表大家可以在我们的官网上看到。 用户体验爽 比如刚刚我们提到的字段自动统计、划词分析、联合搜索、机器学习等等细节功能。我们都为用户预先考虑到了,这些所有的易用性细节我们超过 200 项,我们所有的开发的目标和要求就是降低用户的心智负担,不要把日志分析看成是特别复杂的一个事情,让大家能够低门槛甚至零门槛的来使用我们的日志分析产品。简单的把你的日志导入平台,然后方便的得到日志分析的结果,能够给用户带来业务方面的价值和提升。这个是 Pandora 希望能够去实现的事情。 公有云经验足 最后一个优势,我们通过一些数据来证明我们的能力。第一个是现在每天向公有云上流入的数据超过 250 个 tb,超过 3650 亿条日志。现在我们服务的客户超过 200 家,每天参与的日志的计算量能够达到 3.2 个 pb。我们每天也能够对外提供超过一万次的有效报警,这是一个非常健壮的平台。所有的功能我们在公有云上完全向用户开放,而且用户也可以选择将我们的平台以私有化的方式部署在你本地的机房里面。
案例分享
最后还有一些时间我给大家分享一些案例。然后再来回答刚刚大家提到的一些问题。
七牛云
第一个案例就是七牛云,七牛云所有产品线产生的日志都会导入我们的日志分析平台里面来,统一的汇聚、清洗、存储、搜索等等,然后支撑我们内部的不同部门去使用这些日志。比如说商业运营部会去针对用户日常的使用消费行为,去做用户的画像;产品研发部用来排查线上错误;技术支持部用来客服;质量保障部用来做质量分析与复盘;运维部用来做运维监控告警与成本分析。
银行
第二个是一个大型银行,该银行拥有多个大型数据中心,且每个数据中心既有物理机提供服务,也有虚拟机提供服务,他们碰到的痛点是针对物理机和虚拟机、不同的网络设备、不同的操作系统及不断增加的海量业务数据,无法做到统一的收集、存储与分析。 该银行最后采用 Pandora 平台,利用 logkit 统一收集各种设备的 metric,最后在平台上做监控告警;同时也采用 logkit 让业务方来收集业务日志,供业务方相关人员对这些日志进行检索与分析,从而更快的定位问题,并且持续挖掘数据价值。
制造企业
第三个是华东的一个大型制造企业,也是我们刚才提到的物联网的一个场景代表。客户会把很多生产线上部署的传感器的数据导入 Pandora。客户整个车间和厂房非常大,所有的传感器每秒钟能产生百万级别的数据。这样百万级别的数据需要实时地传送到我的平台上面来,然后对数据进行实时处理,在做实时监控的同时,也会生成一些多维度的报表,方便用户对整个生产线的实时工作情况,包括生产线一段时间内的整体表现,进行一个精确分析。
互联网公司
第四个案例是一个大型互联网公司,主要业务是对外提供视频点播类的服务。他们购买了七牛云的 cdn 服务,因此产生大量的 cdn 的日志,包括用户来源于哪个地方,他访问了哪些资源,他的整个访问情况,和他平均打开视频的时长等等。这样的一些数据其实都在我们的 cdn 日志里面并且蕴含了很大的价值。该用户基于我们的 cdn 日志,再结合我们的日志分析平台,能够分析出非常多的应用质量以及运营的指标,来对后续的业务进行支撑和决策分析。 大家如果有兴趣的话可以去我们的官方网站上面看我们的产品介绍。下方有两个网站,一个是七牛云的官网,上面可以去免费申请注册账户来试用我们的平台。第二个是我们的文档站,大家在里面可以看到所有产品的具体介绍,而且他们也会提供典型的产品的场景描述和分析,能够帮助大家更好地去理解对我们平台的使用。 · 免费注册: http://www.qiniu.com · 快速了解: https://developer.qiniu.com/insight/  最后 one more thing,我们预计会在 9 月份推出这三个功能,第一个是多维分析,我们叫它 datacube。它能够对用户很多日常的关键运营指标做预计算,当你去查询一些你关心的关键指标时,能够更快地去输出相关的结果。第二个是针对日常的运维监控,全链路的监控分析解决方案。第三个是我们针对具体故障做的一个根因分析。这个我们也会都在 9 月份推出来。请大家关注七牛云的官网,我们一有相关的消息就会及时通知大家。 感谢大家来聆听我的一个简单的分享。 Q&A Q 有私有化部署案例吗? 答:私有化部署案例是有的,我们遇到的很多传统行业的客户都是采用私有化部署方式来使用 Pandora 平台,包括我们一些银行案例,也是私有化部署的。事实上从 Pandora 诞生的第一天起,私有部署场景就是我们最关注的点之一。 Q 对于容器模块的负载,能够定位到某一个具体的进程吗? 答:可以的,我们现在支持针对 k8s 的容器日志采集,可以针对容器模块进行负载监控,能够定位到具体的进程。 Q 可以自定义日志分析规则吗? 答:可以的,我们支持非常灵活的日志分析的规则,你可以采用划词的方式来做日志的解析,并且将解析结果保存为规则,后续可以方便的为日志配置这些规则。 Q 如果使用云空间,日志量又很大,如何解决流量问题? 答:一些用户在使用日志分析平台的时候,会遇到类似担心,如果日常业务和日志管理分析服务不在一个云上,会不会产生很多中间的流量费用。针对性这样的情况我们有两种解决方案: 一、七牛 Pandora 所有的日志采集传输都是有压缩加密的,压缩率在 10 倍以上,极大降低流量负担; 二、如果有空闲的计算资源,可以是本地虚拟机或者云主机,我们也支持将日志分析服务以私有化部署的方式部署在本地或是第三方云平台上,这样在一个统一平台里面,日志传输流量可以变成内部流量,一般来说内部流量的成本是很低的。 Q Pandora 和 ELK 有什么区别? 答:
- 我们全托管,开箱即用,按需付费,成本低
- Pandora 的数据收集产品 logkit 无论是从体验还是性能看,都远好于 logstash/filebeat
- 我们支持灵活的企业级数据总线
- 我们在 「采集」的稳定性及功能丰富性上的表现远好于 ES
- 在大规模数据量(十亿条日志以上、TB 级别以上)的情况下系统稳定性及性能的表现好于 ES
- ES 不支持数据脱敏
- ES 不支持多租户
- ES 不支持用户权限,安全审计等关键功能
- ES 无内置机器学习支持
- ES 无各种丰富解决方案的支持 总结来说,用 ELK 的场景都可以使用 Pandora 来完成,Pandora 提供了优秀的产品体验。 而从功能集的角度考虑,Pandora 是 ELK 的超集,如可以轻松完成流式计算与多维分析等场景。 牛人说 「牛人说」专栏致力于技术人思想的发现,其中包括技术实践、技术干货、技术见解、成长心得,还有一切值得被发现的内容。我们希望集合最优秀的技术人,挖掘独到、犀利、具有时代感的声音。