CMDB在中国联通IT运营平台应用方案研究
2020-08-15杨洁艳中国联合网络通信集团有限公司北京100033
杨洁艳,李 衡,莫 穹(中国联合网络通信集团有限公司,北京 100033)
0 前言
配置管理数据库(CMDB)是一个逻辑数据库,用于支撑IT运营管理活动中,统一管理全量IT资源配置项全生命周期配置信息以及配置项之间关系并将信息共享给其他功能组件的核心技术组件。
IT 运营的核心即通过技术的手段促进企业IT 系统运行稳定、容量事宜、成本优化并最终体现在核心业务系统价值提升的目的。CMDB 能够帮助企业摸清IT 资源家底,辅助故障定位,规范化企业IT 资源全生命周期闭环管理,容量统一规划,成本计算准确,提升企业IT 资源效率,提升日常IT 运营效率和准确性,进而帮助提升企业业务应用系统的高效性和稳定性,为企业带来核心竞争力的提升。
本文主要针对中国联通IT 运营平台CMDB 模块建设模式进行研究,从CMDB 发展历程回顾、核心功能、应用价值入手,提高中国联通IT 运营平台CMDB模块的建设需求、目标、系统定位、功能需求,并对CMDB的使用场景进行探讨。
1 CMDB技术及网络IT运营平台建设要求
1.1 CMDB技术简介
1.1.1 CMDB发展历程回顾
1999 年,CMDB 伴随ITIL V2 发布而诞生。这时CMDB的典型场景是资产信息的电子化,侧重流程。
2007年,CMDB伴随ITIL V3 发布而整体提升。强调IT 资源信息闭环管理,同时自动化发现工具的引入帮助企业极大简化了配置数据初始化及维护工作。
近几年,伴随着全球范围内“数字化转型”的浪潮,云技术、容器技术、DevOps、AIOps的发展,越来越多的IT资源需要进行统一管理。CMDB技术作为企业IT运维标准化、自动化、数据化和智能化的基石,逐渐被IT从业人员重新认可,并提出了更高的要求。
1.1.2 CMDB核心功能
a)作为企业资产管理的基础,为资产管理提供统一的配置数据。
b)与企业ITSM 流程深度集成,为流程提供统一的配置数据,实现IT资源全量,全生命周期闭环管理。
c)与企业的自动化运维平台和工具集成,为IT运维场景提供统一的配置管理数据库,供运维场景进行消费以及执行数据的回写。
d)企业的监控系统集成,提供配置数据供监控系统消费等。
1.1.3 CMDB主要应用价值
CMDB主要应用价值包括以下3个方面:
a)面向业务、IT基础设施。
(a)层次化业务管理:层次化展现业务系统结构,建立自上而下的从业务到资源的管理机制,实现业务隐患早发现的管理目标。
(b)全面的系统资源管理:提供对网络、主机、存储设备、安全设备、数据库、中间件及应用软件、机房环境等IT资源的全面管理。
b)面向维护管理者。运维服务管理:将人、技术与流程进行有效融合,实现日常运维工作的自动化、信息化和标准化。
c)面向领导决策者。
(a)综合报表:对系统运行状况的信息进行汇总,帮助领导更全面了解网络系统的运行状况和趋势,为领导决策提供科学依据。
(b)规范运维过程:实现对运维工作的可查询、可跟踪、可掌控,提升运维人员解决事故隐患的能力,规范化管理,降低运维成本。
1.2 网络IT运营平台建设要求
中国联通网络IT 运营平台通过大数据、云计算技术整合网络IT 运营资源,系统采用微服务架构、容器化部署,针对中国联通总部运营支撑自身系统及运维部OSS2.0 相关业务系统(主要包括智能监控、沃运维、资源管理、客服支撑、统一采集与指令适配、数据共享、沃网络、统一流程平台与省分平台系统等),实现对各业务系统自动化、智能化、可视化的运营,面向各级管理单位与建设商提供统一的IT运营与运维服务能力。
2 建设思路
2.1 IT运营平台对全量IT资源管理的需求
2.1.1 全量资源图谱需求
随着IT 技术的迅猛发展,云、微服务、大数据等技术的大量应用,IT 架构日趋复杂,传统清单式的资源管理模式已经无法满足IT 运营日常生产活动中对于IT 资源信息准确性以及关联性的消费需求。本文所述项目通过“图技术”建立数据项之间的“关系”并且可以在“关系”上增加属性,大大降低了关系的维护复杂度,使得以业务中心、故障定位、变更影响分析、应用架构拓扑自动生成等运营场景的落地成为可能。将IT资源管理从“平面”的单表维护使用转变为面向日常生产运营场景的“立体化”维护与消费。
2.1.2 全生命周期闭环管理需求
中国联通IT 运营平台采用一体化设计分布式应用,包括智能监控、沃运维、资源管理、客服支撑、统一采集与指令适配、数据共享、沃网络、统一流程平台等多个能力模块,为改变以往烟囱式孤立运维模式,通过CMDB 系统建立统一IT 资源数据源,建立全量统一资源台账避免多平台重复操作,降低IT 数据维护复杂性,提升维护效率以及准确率。通过与流程系统对接,实现流程系统覆盖IT 资源从到货、分配、变更、回收、报废等全生命周期,使全过程变更可追溯及审计。
2.1.3 自动化能力提升IT资源管理效率
为提升IT 资源信息的准确性、降低维护工作量,CMDB需采用自动化手段提升IT资源管理效率。支持IPMI、SNMP、iLO、SSH、Restful 安全脚本等多种配置数据采集途径。发现对象不仅包括标准的硬件和软件,对于自行开发的应用可以提供脚本配置功能,实现对自行开发的应用系统的配置发现。数据采集除发现资源项的属性信息外,还可以发现资源项之间的关联关系、组成关系和依赖关系。数据采集可以对服务器、网络、存储、软件等属性和关联关系实现集中发现,全网发现、指定子网、指定配置项3 种发现方式,能够基于多种协议快速进行有条件的拓扑结构自动发现,并生成各种拓扑视图进行展现,并保持网络拓扑视图自动更新,适应网络结构的变化。
2.2 IT运营平台对CMDB建设目标
2.2.1 以应用为中心
IT 运维管理本身是以应用为中心进行的管理,因此优秀的CMDB 建设应该是以业务和应用为中心,如此两者才能匹配起来。
配置数据的入库和存储,配置数据的展示和查询,配置数据的消费和数据回写都是以应用为中心的。
2.2.2 从场景出发
基于企业日常运维工作以及下一步运维提升的目标梳理CMDB 消费场景,并在此基础上确定需要在CMDB 中涵盖哪些应用、业务、CI、CI 项、关联关系;确保录入的数据最终能在场景中得到使用和消费,而不是静止的死数据;通过工具和流程将实现配置数据的读写闭环之后,数据的一致性、完整性和准确性是必然的结果。
2.2.3 “活”起来的数据
能将CMDB 与运维流程本身集成和打通,这样CMDB 的数据一致性、准确性和完整性才有了保障。配置管理的生命周期是随着IT 对象生命周期而运行的。
2.2.4 统一运维数据源
自动化运维以CMDB 为基础,实现运维操作的自动化执行和配置数据的统一读写;全栈监控以CMDB为核心,调用自身的采集器和接入的采集对象,实现对象的运行信息、性能信息和安全信息等的统一采集、分析和告警服务。
2.2.5 自动化发现提升数据维护准确率与效率
CMDB 能够实现自动化采集和维护绝大部分的配置信息,减轻维护工作量,提升效率和准确性。
2.2.6 开放式能力
CMDB 是IT 运维核心功能组件,需要对外提供数据并接受数据的写入,因此需要CMDB 提供足够丰富的API接口。
2.2.7 跨云环境资源支持
随着企业的发展和IT 规模的持续扩展,CMDB 中入库的对象和数据会越来越多。因此要求CMDB具备纳管海量配置的能力,并且经受过实体的业务环境的检测。
2.2.8 全方位可视化展示
由于业务系统众多,IT 环境复杂,迫切需要在CMDB中能够看到企业整体的业务运维情况和IT环境情况。
2.3 CMDB在IT运营平台中的定位
CMDB是中国联通网络IT运营平台的核心系统组件,在日常生产运营活动以及DevOps 与AIOps 发展的路径中都处于核心地位。基于IT 运维与技术运营需求和项目实践,打破传统资产管理的局限,从业务服务、应用运维、持续交付与IT 基础设施管理视角出发,管理应用软件生命周期中一切软硬件IT 资源,提供准确信息供上层平台及周边系统场景消费的核心能力。
2.4 CMDB建设功能要求
2.4.1 对于图技术的支持
为了适应CMDB 的数据结构的变化,新型“图”数据库采用nosql 数据结构,这使得“Matrix”系统在资源模拟管理以及资源实例数据管理中,不再受到“关系”型数据库字段定义的限制,资源管理更加灵活。
2.4.2 模型管理
提供配置管理维护工具,用来维护已有的或增加新的CI 类型与实例。配置项类型需要支持预置和自定义类型,并可以进行更新或扩展。可创建和修改配置数据模型,对配置数据对象、属性、关系的定义进行增删改查。按配置数据对象继承关系树状浏览配置数据等对象的模型定义,可按照配置数据名称模糊查询。查看和维护(增删改)某个配置数据对象(如路由器)的定义,包括名称、描述、父类等。查看和维护(增删改)某个配置数据的各属性定义,包括名称、描述、属性编码、属性值类型、属性单位等信息。
2.4.3 关系管理
资源关系管理是CMDB 的核心功能之一,通过其上的数据视图层,资源关系可以实现故障的根因分析和变更影响分析。查看和维护(增删改)某个资源的各关系定义,包括名称、描述、方向、对端资源对象等信息。可以呈现某资源所有相关资源拓扑,也可指定关系类型,只呈现存在这种关系的资源拓扑,保证拓扑清晰。提供配置关系拓扑图,动态展示各种配置之间多级关联关系,协助分析变动影响范围。例如:根据故障的主机,查询出相关的系统、相关的业务等信息。支持配置项间关系定义和拓朴视图,支持配置项之间的父子、关联关系及关系属性的定义,并生成拓扑关系视图。提供CI关联关系的展现,至少提供依赖、属于、安装、连接、使用等关联关系(基于配置关系梳理结果)。
2.4.4 数据管理
数据维护指对资源管理数据库中保存数据的增删改维护操作,所有的增删改操作要求必须符合资源管理流程和变更管理流程的管理要求。主要包括下述几个方面。
a)新增数据功能:支持通过EXCEL批量导入配置项信息,可将标准格式的EXCEL 配置项数据表直接导入系统。支持批量录入配置项信息,可通过手工批量录入的方式建立配置项信息。支持批量导出EXCEL数据,可将配置项信息批量导出标准格式的EXCEL 表格。
b)修改数据功能:具备配置项分类和统一管理功能,可根据分类、地理位置、部门、使用状态查询和汇总。支持记录配置项的变化情况,记录配置项发生的新建、维修、调配、延期、报废的变化情况。支持配置项属性的自定义扩展功能,自定义字段包括输入框、单/复选项按钮、时间型输入框、输入文本区、下拉框,可定义必填项和非必填项;并可对自定义属性信息进行查询、变更。支持配置项属性变更记录功能,实现配置项及属性变更的版本记录。配置项与事件、问题、变更管理的关联,即在事件、变更、问题管理流程中实现对配置项的关联和变动内容记录,并可查询该配置项关联的所有事件、问题、变更工单。
c)删除数据功能:支持数据逐条和批量删除功能,批量删除应该具备删除前提示功能;删除与其他资源项有关联关系的资源项时,系统应该有删除提示。
2.4.5 资源检索功能
系统提供资源搜索的能力,能够对所有配置信息通过模糊搜索的方式进行数据查询。全文检索支持对配置信息的附件信息进行检索,同时系统还提供了最近搜索记录功能,能将最近、常用的搜索的关键字进行记录,通过点击快速进行检索。支持高级检索功能。支持对配置项高级检索功能,可进行复杂的模糊查询,并可将自定义字段作为查询条件。提供对某一CI 资源(配置项)的关联工单(历史事件记录、问题记录、变更记录等)信息查询。
2.4.6 自动发现
自动发现是以自动化采集为手段,以控制、规范和优化为目的,并为配置数据管理提供准确配置数据信息的配置数据属性和关系获取手段。配置自动发现是通过与被管对象接口进行配置数据采集,将数据采集到的原始数据整合为对象型配置数据,通过数据整合功能,将实际采集到的数据信息与配置数据管理定义的数据模型进行映射,并根据预先设定的规则,自动更新或人工确认后更新配置数据管理数据库,以提高配置数据的准确性,降低人工录入的工作量和人为错误。
2.4.7 变更审计
可对设备、软件等资源配置数据进行基本维护。查看配置项数据的变更历史。可对多个配置项的属性进行比对,呈现差异;复合配置项比对时同时比对所含部件。配置项数据能够通过属性变更记录进行查看和搜索相关变更信息。可以对配置项各字段进行变更,变更的字段信息提供审计功能,显示增加、修改、删除等字段变更信息审计。
2.4.8 准确性对比
对设备、软件等资源配置数据进行基本维护。查看配置项数据的变更历史。可对多个配置项的属性进行比对,呈现差异;复合配置项比对时同时比对所含部件。支持资产信息的一致性能力对比。其中也包含业务信息的一致性对比能力,例如不遵循变更过程的人为应用变更行为;另外一方面包含资产的变更对比情况,例如服务器的配置。
2.4.9 能力开放
系统遵循CMDBf标准为周边系统提供开放式API接口,平台的所有资源数据可以通过Webservice、Restful等标准接口输入输出,并与服务管理过程中的配置消费和配置维护进行有效联动,供外部应用调用;提供基于JSON 数据格式的标准的API接口,可以方便地和第三方系统进行对接。
2.4.10 全生命周期闭环
系统借助开放式API接口与周边数据生产与消费产品模块实现打通,实现以CMDB 为核心的统一资源管理,建立全量统一资源台账避免多平台重复操作,降低IT数据维护复杂性,提升维护效率以及准确率。
2.4.11 状态采集
具备自主的采集能力,能够实现CI 配置项状态的主动周期性采集,确保各种资源管理视图中可见的资源状态为实时状态,为资源运营管理人员了解资源现状以及DevOps的持续集成与持续发布提供管理基础。
2.5 CMDB应用场景及技术实现简析
2.5.1 应用场景
2.5.1.1 云资源联动管理
a)资源模型整合——依据企业云平台管理云资源类型,现有资源管理平台拓展并支持云资源,包括云资源池、物理主机、存储、虚拟机、虚拟网络、MySQL 集群、Redis集群、Hadoop等。
b)云资源联动——物理资源在纳管与分配过程中将信息同步发送给云平台;虚拟资源新增、变更与删除,联动自动化监控与自动化通知安全系统。
c)云资源纳管——以云平台数据为基础数据纳入CMDB、监控与安全,确保数据准确、完整。
2.5.1.2 监控全面覆盖
监控覆盖物理设施层、资源池、云服务、服务实例与租户应用各层,进行集中监控,主动监控云数据中心的运行状况,及时发现故障并产生告警,系统管理员进行快速故障恢复来最小化故障的业务影响。
2.5.1.3 运维管理流程闭环
中国联通网络IT 运营平台面向集团与省分各中心/部门提供IT 资源的运营支撑与运维支撑服务。在原有的运维服务体系中如何更好地提供运维服务支撑,实现运维生产活动闭环管理,实现对于运维管理活动中支撑人员与代维厂家的支撑服务质量进行科学全面的计量管理,提出了更高的要求。
a)完善企业私有云平台上线后的运维服务体系,补充与新增相关流程,完善相关管理制度与维护职责,效率更高、质量更好地支撑运维工作。
b)实现对支撑人员与代维厂家的支撑服务质量进行科学全面的计量管理。
c)建立“运维工作台”,集成日常运维工作中的所有活动,促使运维人员可以在一个页面中实现全部运维工作,提升运维工作的效率。
图1 示出的是云资源联动管理场景下CMDB 应用模式。
2.5.2 技术实现
CMDB 产品采用开放式微服务架构,支持无状态事务化处理,能够独立运行且灵活横向扩展,支持当下新技术的应用,具有持续迭代发展能力,能够不断满足未来建设发展需要(见图2)。
此技术架构具有以下特点。
a)数据层采用关系数据库+NoSQL 型数据库,数据结构多元化、灵活。
b)基础平台服务层提供TCP、HTTP 等市场主流协议的即时通信能力,同时采用开源、免费的轻量级应用框架,支持所有应用的分布式结构,可实现负载均衡。
c)应用层提供了灵活开放的与其他厂家平台对接的能力。可通过容器将业务逻辑发布出去,表现形式主要为restful形式的接口、移动端的SDK。
d)展现层采用成熟、互联网化的jQuery、html、D3JS、CSS 等渲染用户界面,支持IE7+以及Chrome、Firefox等主流浏览器。
e)利用Nginx 的能力,符合内部的规范要求,将服务通过接口统一发布出去,实现平台网络安全策略。
3 结束语
中国联通网络IT 运营平台CMDB 系统采用图数据库技术,以应用为中心,打造全面支撑技术运营所需的全量资源图谱。依托自动化手段主动采集配置数据,借助流程实现资源闭环管理,面向自动化、持续交付、ITSM 流程、监控与故障定位、根因分析等场景提供一体化数据消费,是全栈智能运维的基石。
图1 云资源联动管理场景下CMDB应用模式
图2 CMDB技术架构示意图