构建运维智能化的三大关键技术

本文涉及的产品
云拨测,每月3000次拨测额度
简介: 落地智能化的运维算法难度较大,解决实际应用场景问题,要求应用运维团队不但要有应用性能工程、APM、应用链路追踪、日志分析等传统运维技术,还要有大数据存储、索引、清洗、统计等方面的经验,能够熟练使用机器学习和人工智能算法。企业需要在建设前期积累的三大关键技术能力。

应用智能运维是在现有的应用性能管理系统、日志分析系统等的基础上,围绕用户场景和业务目标自动融合数据、智能化提取信息的过程。其通过规则积累指定应用运维经验,通过算法替代运维专家的逻辑思考,为发现风险、定位风险和处理风险提供了决策支持。

落地智能化的运维算法难度较大,解决实际应用场景问题,要求应用运维团队不但要有应用性能工程、APM、应用链路追踪、日志分析等传统运维技术,还要有大数据存储、索引、清洗、统计等方面的经验,能够熟练使用机器学习和人工智能算法。企业需要在建设前期积累的关键技术能力有以下三部分。

1、数据采集

数据是实现精准预测、异常检测和根源问题定位分析算法的基础,没有覆盖全面、高质量、高精度的监控数据,再精妙的算法也很难发挥作用。围绕业务部门对服务质量目标保障的需求,要覆盖应用全链路的监控数据,就需要更丰富的监控数据采集手段。要达到监控范围涵盖应用从用户端到服务端的运行期状态、数据采集能力支持从基础设施到上层应用全栈软硬件的效果,需要解决用户数字体验与终端设备监控、业务流程及系统可用性检测、网络状态监控、代码执行链路追踪、日志分析及标准化协议/接口对接等技术问题。目前,常用的覆盖从用户端到服务端的软件及基础设施的数据采集技术主要有以下几种。

  • 用户数字体验与终端设备监控。采集B/S架构下的应用Web页面与用户交互的用户数字体验指标数据,主要利用页面植入JavaScript探针技术实现。对于移动终端应用,需要在开发阶段通过SDK代码埋点的方式,在关键代码执行链路上插入监控代码,监控用户的使用习惯和指定业务流程。目前,主流的APM产品和工具均能提供这种能力。
  • 业务流程及系统可用性检测。通过配置脚本定时或随机拨测关键业务流程、页面和接口的方式来主动检测应用的可用性。在系统没有用户使用或系统上线初期,这样做能够主动发现服务假死、应用或独立部署的服务节点意外宕机、接口调用性能异常等问题。常用工具有用于模拟用户操作以检测业务流程可用性的Selenium、拨测页面和接口的SaaS云服务“site 24x7”、开源项目Blackbox等。
  • 网络状态监控。这是一种基于旁路镜像网络流量、通过探针被动侦听网络包原理分析应用在网络层交互动作的监控方式。其通过拆包分析网络数据包,可以获得网络交互性能、网络协议类型和应用业务操作过程等信息。由于是被动侦听,当遇到应用异常或网络信道加密时,其很难拿到有用信息。这类工具和产品统称为网络性能管理工具。
  • 代码执行链路追踪。获取分布式事务执行过程和应用服务器的代码执行链路数据是APM平台的核心能力,其主要原理是采用独立于程序外的代理(Agent)来监听程序执行过程。对分布式系统的代码执行链路追踪监控的原理,来自Google大规模分布式系统的跟踪系统Dapper。
  • 日志分析。应用运行期日志是定位分析故障的重要信息来源相比之下,监听分析日志文件中的数据是获取应用运行期状态更简单、直接的方式。近几年,Splunk、Elastic、Sumologic等用于日志提取、分析的产品/服务厂商推动了海量日志采集、存储、分析及可视化技术的快速发展。
  • 标准先协议/接口对接。通过标准化协议/接口采集监控数据是最基本的监控数据获取方式,常用协议有面向Windows操作系统的WMI和JMX Java虚拟机的运行状态监控管理协议、简单网络管理协议(SNMP),以及网络监测导出协议sFlow、NetFlow等。
2、数据存储

常用的监控数据分析技术处理的数据量较小,类型单一。例如,对于时间序列指标数据,常用RRD数据库或时间序列数据库对数据进行统计计算。计算类型大多是求最大值、最小值,求平均,找标准差及多指标聚合等。

对于日志、用户操作行为等半结构化的文本数据,可以用ElasticSearch等文本索引工具对海量文本数据进行索引,利用类SQL语句提取关键信息字段。

对于代码调用链路,尤其是分布式事务处理的代码链路,需要对海量数据按预先注入的TraceID、SpanID进行关联,由于链路层级深度不确定,用关系数据库连接处理就是灾难。采用Apache Solr、ElasticSearch这类文本索引检索引擎,需要占用大量的内存来创建索引,对计算和内存的压力将非常大,也不合适。最适合的数据库是HBase、Cassandra等,其能够由指定ID快速检索出相关数据,并拼接出完整的链路。

不同数据存储方式的实现原理不同,核心能力也有差别。为了支撑上层多样化数据的统计分析、检索,需要综合利用各数据库的优势。

3、数据分析

海量运维大数据分析是实现应用智能运维的关键。如果把监控数据比作石油,数据分析就是从石油中提炼适用于不同应用场景的汽油、柴油、重油、沥青、润滑油的过程。需求不同,对石油提炼的过程和工艺大相径庭。同样,监控数据采集上来,未经加工,本着发现风险和异常的原则来看,这些数据大部分都是正常状态的无用数据,价值密度很低,可读性很差,因此称为“状态裸数据”。

数据采集层通过数据预处理和格式转换(通常预定义为XML Schema、JSON Schema等元数据格式)将这些数据转化为格式化数据,推送到数据存储平台存储。

集中存储的监控大数据经过清洗、过滤、预处理等操作进一步提升了价值密度,转换成信息输入数据,用于统计分析。常用的数据分析技术包括异常检测、指标关联分析、趋势预测、因果分析等,用这些技术对信息进行深度加工,可找出支持运维和运营决策及采取下一步动作的信息。

相关文章
|
23天前
|
机器学习/深度学习 运维 监控
智能监控系统在运维中的应用与优势
传统的运维管理方式在面对日益复杂的IT系统时显得力不从心,智能监控系统的出现为运维工作带来了新的机遇。本文将探讨智能监控系统在运维中的应用与优势,介绍其工作原理以及如何有效地利用智能监控系统提升运维效率和质量。
38 2
|
23天前
|
运维 监控
现代运维中的自动化技术应用与挑战
现代运维工作中,自动化技术的应用已成为提高效率、降低成本的重要手段。本文探讨了自动化技术在运维领域的应用现状和挑战,包括自动化工具的选择、实施过程中的注意事项以及未来发展趋势。通过深入分析,帮助读者更好地理解和应用自动化技术,提升运维工作效率。
12 2
|
9天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
10天前
|
人工智能 运维 监控
构建高效自动化运维体系的实践与思考
【4月更文挑战第14天】在数字化转型的浪潮中,自动化运维作为提升系统稳定性和效率的关键手段,受到了企业的广泛关注。本文将深入探讨如何构建一个高效的自动化运维体系,涵盖从基础设施的搭建到流程的优化等多个方面。通过分析当前自动化运维的挑战及解决方案,文章旨在为读者提供一套实用的策略框架,帮助企业实现运维工作的高效化、标准化和智能化。
|
14天前
|
机器学习/深度学习 存储 运维
构建高效自动化运维体系的五大策略
【4月更文挑战第10天】在数字化转型的浪潮中,企业IT基础设施的复杂性与日俱增,传统的手动运维模式已难以满足快速响应和高效率的需求。本文将探讨构建一个高效自动化运维体系的五大策略,包括监控与告警的智能化、配置管理自动化、故障自愈能力的提升、日志管理的优化以及持续集成和部署(CI/CD)的实践。这些策略将帮助企业减轻运维负担,提高系统稳定性和业务敏捷性。
|
16天前
|
运维 监控 Kubernetes
构建高效自动化运维体系的实践与思考
【4月更文挑战第8天】在数字化时代,IT基础设施的复杂性日益增加,传统的手工运维模式已经难以满足快速响应和高效率的需求。本文将探讨如何通过自动化工具和策略构建一个高效的自动化运维体系,旨在提高系统的稳定性、减少人为错误以及优化资源分配。文章首先分析了自动化运维的必要性,接着介绍了实现自动化的关键技术和工具,并通过案例分析展示自动化运维体系的实际效果。最后,对自动化运维的未来发展趋势进行了展望。
|
16天前
|
存储 运维 监控
构建高效自动化运维体系的关键步骤
【4月更文挑战第8天】 在快速发展的IT环境中,自动化已成为提升运维效率和可靠性的核心驱动力。本文将详细探讨构建一个高效自动化运维体系的必经之路,从基础设施的自动化部署到监控、故障响应与修复,再到持续的性能优化。通过分析具体的技术实现和最佳实践案例,揭示如何利用现代技术栈打造能够支撑复杂服务架构的自动化运维平台。
|
18天前
|
存储 运维 监控
构建高效自动化运维体系的五大关键策略
【4月更文挑战第6天】 在信息技术迅猛发展的今天,自动化已经成为了运维领域的核心竞争力。本文将探讨构建高效自动化运维体系的五大关键策略,包括基础设施即代码(IaC)的应用、持续集成与持续部署(CI/CD)的实践、监控与告警系统的优化、配置管理的重要性以及灾难恢复计划的自动化。通过分析每个策略的核心要素和实施步骤,旨在为读者提供一套全面的自动化运维解决方案,以提升系统的稳定性、效率和可扩展性。
17 1
|
18天前
|
机器学习/深度学习 传感器 运维
提升数据中心效能:智能运维策略与实践
【4月更文挑战第6天】在数字化时代,数据中心作为企业信息架构的核心,其稳定性和效率直接影响到业务连续性和客户满意度。随着技术的进步,传统的数据中心运维模式已经不能满足现代高效、智能化的需求。本文将探讨如何通过智能运维(AIOps)策略,结合大数据分析和机器学习技术,实现数据中心的自动化管理、故障预测及快速响应,以提升整体效能并降低运营成本。
|
22天前
|
存储 人工智能 运维
构建高效自动化运维体系的五大支柱
【4月更文挑战第2天】在数字化转型的浪潮中,企业IT基础设施的管理与维护日益复杂。传统的手动运维方式已无法满足快速迭代和高稳定性的需求,因此,构建一个高效的自动化运维体系成为提升IT效率的关键。本文将探讨构建自动化运维体系的五大支柱:标准化、自动化工具的选择与应用、监控与报警、日志管理以及持续集成与持续部署(CI/CD),并分析每个支柱的核心要素及其在整体运维体系中的作用。通过实践案例和最佳实践的分享,为读者提供构建和维护自动化运维体系的具体策略和方法。