引 言
在农业银行数字化转型背景下,对“以安全生产为第一要务”的数据中心而言,随着运维规模与体量的快速增长,对提升配置准确性、监控有效性、操作自动化、安全精细化有了更高要求。除了安全稳定外,高效运维、精细化运维、自动化与智能化运维早已成为提升运维质量的关键需求,需要构建敏捷研发和高效运维充分融合的创新机制,加速从IT运维向IT运营的转型,为农行的新时代变革发展提供“平稳、安全、快速、精准”的生产运行保障。
运维体量的快速增长、新技术的引入(如分布式架构、开源软件、云计算、大数据)给运维带来全新的挑战,对数据一致性、监控全景视图、资源快速交付、实时运行分析、安全快速变更、快速应急处置的需求也愈发迫切。面对新形势,科技人主动突围,2019年10月由科技与产品管理局牵头启动一体化生产运维平台体系建设工程,数据中心与研发中心分工建设一门户(统一门户)、一中心(配置中心)、四平台(监控平台、操作平台、管理平台、数据分析平台),在数字化转型背景下全面提升运维水平和运维能力。
结合近两年生产运维自动化与智能化实践,本文从打造运维中台基座、借助中台快速构建运维场景、探索智能化三个方面进行介绍。
运维中台:共享业务、数据与计算能力
一直以来,业内对中台的看法褒贬不一。支持的一方认为中台避免了重复造轮子,能快速上线产品。反对的一方则认为中台扼杀了创新,整套系统会变得复杂、维护性差。数据中心经过近几年的探索与实践,发现中台利远大于弊,运维中台可以共享运维业务能力、数据能力和计算能力,可以将运维活动进行抽象,依托中台实现IT运维全专业“监、管、控、析”一体化。
运维中台实现了统一采控、统一数据处理和管理、统一基础服务,解决了以往IT运维中烟囱式建设导致的数据孤岛问题,从根本上解决了运维基础数据和基础功能的管理和使用问题。
本节着重介绍运维中台如何采集数据、如何存储和处理数据,以及如何消费数据。
1.统一采控体系构建运维触角。农行针对操作系统、数据库、中间件、网络等自研或采购了不同监控、操作代理,这就造成了同一台机器上安装了不同采控代理,一方面对系统性能和稳定性带来风险隐患,另一方面也不便于数据统一管理。
运维中台针对采控代理种类繁杂的问题建立了分布式统一采控体系,通过统一代理框架实现各类资源的配置发现、指标采集、自动化操作,向上提供开箱即用的服务化接口。采控代理由采控服务端逐级指挥,实现大规模一体化采集和操作控制。同时,统一采控体系易于扩展,例如针对F5统一采控管理需求,开发采控代理插件进行功能扩充,快速实现统一管理。
目前通过采控平台统一管理总行服务器资源,有效支撑了总行监、管、控等运维活动。
2.配置中心:三分建、七分管。配置管理是一体化生产运维建设的基础和核心。配置中心围绕配置信息可采集、可操作、可验证、可消费的原则,标准化配置模型,将全行配置信息和配置关系统一纳管,目前已完成总行配置纳管,并逐步对外提供配置服务。
在配置中心建设过程中,深刻体会到管理的难度远大于建设难度,可以归纳为下述几个问题:配置管理范围、存量和增量配置如何保证完整准确、配置信息如何发挥作用。配置中心建设过程注重配置统一管控、配置生命周期与生产活动紧耦合、配置治理,建设应用视角资产视图,为监管控析平台提供配置服务,最大限度发挥数据资产的价值,为生产运行提供强有力的数据保障,主要体现在如下方面。
设计以应用为中心的模型,建立资产视图。确定核心模型、核心配置属性、核心配置关联关系,避免贪多、不分主次。模型和属性支持扩充,通过准入流程进行控制。
对配置生命周期进行统一管理。配置上下线、配置维护与生产变更紧密结合,朝着“无配置不投产”目标建立起配置管控规范,技术上逐步落地管配结合机制。
建立持续数据治理策略,提升配置准确性。采用分步走方式,确定配置核心“三要素”,即服务目录、分区、IP地址。首先对“三要素”进行人工确认,确保应用与基础设施关联准确。随后对通过自动验证+人工确认方式,对跨基础设施关联、配置属性完整度、核心配置属性准确性等进行确认。存量系统确认完毕后,最后严控增量数据入库形式,确保不关联变更不能入库。
丰富配置消费场景。配置中心作为唯一的消费渠道,出现生产异常时可以迅速查询受影响的应用系统,借助配置对各类告警进行归并,并通过配置关联操作进行快速处置。
3.流计算平台支撑的基础设施监控平台。针对传统监控平台告警丢失、告警堵塞等问题,基于Spark、Kafka、ES建设流计算监控平台,建立了一套标准化的监控采集、处理、存储和查询架构,对指标、告警、日志进行统一采集、处理与消费。
数据采集方面,建立了一套灵活、可扩展的监控采集代理及传输体系,支持shell、python、groovy、vbs各类监控采集脚本,方便不同部署环境的采集;支持自定义编写脚本,扩展了告警采集能力;适配各类操作系统,有力支持了基础设施建设。
数据处理方面,采用流计算进行监控数据的实时处理,突破了传统监控平台内存计算和数据库计算的瓶颈,极大提升了告警处理的性能,支持更大规模的监控接入;将传统封闭在数据库的监控数据通过流的方式提供出来;在流处理时支持联动配置、事件等第三方数据及算法,加强了告警分析的能力,提升了告警的有效性。
运维场景:打通运维最后一公里
运维中台提供了配置、监控、操作、流程、分析、展示等基础能力,但中台不是万能的,需要将各项功能进行串联才能满足运维需求。这个需求就是运维场景,根据各专业的业务特性在中台基座上快速开发、持续迭代交付,实现快速低成本构建。
借助运维中台,数据中心在2020年全年上线了22个运维场景,主机、开放、网络、环境、生产运行等条线在资源快速交付、监控全景视图、快速应急处置、批量健康检查、流程式生产变更等方面实现了运维自动化,突出表现在以下几个方面。
投产资源交付场景,实现快速交付。投产资源交付场景依托云平台,通过流程串联资源申请、资源评估、资源分配及变更、资源生产、配置采集、监控配置、资源交付各环节,实现了一键式提交、一站式交付。与传统虚拟机交付相比,运维人员参与度大幅下降,交付速度大幅上升。
系统画像与告警整合场景,辅助快速定位故障。告警整合通过汇聚应用监控和基础设施监控数据,借助配置库的关联和自动发现能力,对监控告警数据进行集中加工、整合,以应用系统为维度,全方位展示配置、应用核心指标、基础设施性能指标、告警等运行情况,建立起应用系统全景运维视图,帮助快速定位问题。
应急处置与切换场景,快速恢复生产。针对基础设施与应用系统总结沉淀应急处置和切换场景,形成应急处置预案与操作流程。应急处置触发后能够迅速启动操作流程,实现故障恢复。以网络条线为例,构建五维态势图,对告警、分区流量、ping检测、重要系统运行情况、近期变更操作进行综合展示,发现异常根据应急处置规则立即启动、执行应急处置,朝着“5分钟异常发现、10分钟故障定位、20分钟异常恢复”的目标迈进了一大步。
数据+算法=未来运维之路
运维自动化不是运维的终点。随着分布式架构、云计算、大数据深入应用,运维对象将呈指数级趋势增长,在整个数字化转型的浪潮中,“提质、增效”是运维人不断追求的目标,也是让我们不得不思考的运维转型之路。
数据中心沉淀了海量的配置数据、监控告警数据、性能指标数据、日志数据,如何发挥这些数据资产的价值,辅助运维人进行决策是运维发展的高阶目标,需要借助算法来挖掘蕴含其中的规律。数据中心在智能化运维上积极实践:建立健康度模型,展示系统全局运行状况,结合业务数据、监控数据、告警数据,实时评估系统整体健康情况,第一时间掌握系统运行状况。开展预测分析,对交易量、性能等时序数据进行预测,建立动态基线,为无阈值智能告警奠定基础。试点智能告警压缩,基于NLP对告警文本进行合并,降低告警数量。试点关键告警推荐,借助关联规则提升告警有效性。
经过实践我们发现,算法并不是万能的,经常会发现几条简单的告警规则比复杂的算法更精准有效。究其原因,这些规则依赖于运维人长期积累的经验,需要运维人持续的参与来挖掘这些规律,发现运维过程中闪光的点子,并借助算法来从数据中进行挖掘。在未来运维之路上,运维人将从台前走入幕后,通过知识图谱建设,将专家积累下来的运维经验和运维知识转化为智能化运维工具,为故障预测、定位、自愈提供决策基础。
CIO之家 www.ciozj.com 公众号:imciow