随着自动化运维的火热,CMDB建设项目不断的涌现,正是因为CMDB就是自动化运维的基石。关于CMDB的概念、定位、价值、与周边的关系、企业面临的痛点等,这里不做阐述,总结来说就是CMDB很基础、很重要又很复杂。本文直入主题,主要讲述CMDB具体应该如何建设,内容包括建设目标、框架和指引。
CMDB的建设目标
CMDB的本质是建数据,而数据就必须是准确和可用的才有价值。因此CMDB最核心的建设目标是建立一套高质量的IT资源配置主数据。
CMDB的建设框架
我们利用一个分层框架,来对整个CMDB的实施过程进行思考和分析。如下图:
- 框架从纵向来看分为五层,包括管理域、管理协同、制品协调、生产域和工具,管理域定义了CMDB相关的管理工作。生产域定义了CMDB相关的执行工作,底层工具是对执行的支撑,管理和制品协同是管理和执行之间的衔接扭转;
- 横向是一个时间维度,可以清晰的看到整个CMDB的生产过程是怎么样的。其中模型设计、数据梳理及初始化、CMDB维护体系的建立和推行是过程的重点环节,完整准确的数据是后续做数据分析和可视化、外部系统集成消费的前提。
CMDB的建设指引
一、模型设计
模型设计CMDB建设的重要环节,是CMDB的骨架。它是一个抽象建模的过程,并且应该基于企业IT资源现状以及消费诉求而进行抽象。具体过程如下:
1)环境调研:对企业的组织架构、IT资源类型和规模、IT流程等进行调研,充分了解企业IT资源的现状。
2)模型设计:根据调研的情况进行设计,内容包含模型的对象、模型的属性、模型的关系,这些我们称之为元数据。在构建元数据的过程中,我们遵循以下原则:
- 以应用为中心原则,围绕应用自上而下的进行详细设计;
- 最小化设计原则,即只实现当前运维场景所需要的最小模型集合,避免建模的颗粒度失去控制(强调没有消费场景的对象/属性/关系,不应该存储);
3)模型评审:模型设计好后,需形成规范文档。以便和领导、各个领域的运维管理员进行最终沟通评审,目的是形成一份大家都认可的模型设计,为后续CMDB推行打下基础。
4)模型建立:模型设计评审通过后,我们就可以在CMDB工具中进行建模。因此,CMDB的工具必须具备足够的灵活性,能够根据企业不同的环境灵活定义模型对象、属性及关系。
二、 数据的梳理及初始化
设计好的模型在CMDB工具中建立之后,下一步就是进行数据的梳理和初始化。注意的是数据梳理应该以应用为单位进行,即每次梳理一个或多个应用系统相关的配置数据进行录入,同时沉淀梳理的过程方法,以便扩展到其它应用,是一个1到N的过程。以应用为单位梳理的好处在于:
- 可以快速的沉淀出整体的梳理方法,一个应用弄好,其它应用都可以参考复制;
- 可以快速验证模型的设计是否合理;
- 可以快速的产出效果,易于展示和汇报;
三、维护体系建立
数据质量的保证关键在于数据维护体系的建立、数据的消费,自动化和数据校验等技术手段仅是辅助作用。数据维护体系主要包含两方面:
a)角色定义
指定一个配置经理角色,配置经理是对CMDB的整体负责。包括流程、模型、角色权限的定义和维护。
b)流程定义
各配置项的入库流程;
各配置项的变更流程,配置项的每个属性值都必须理清楚其来源及流程;
各配置项的删除流程。
数据维护体系的是CMDB建设的重点和难点,是配置数据质量的重要保证手段。此环节因涉及到企业各方的参与,单纯由乙方实施人员推动是比较困难的,需要和甲乙双方一起设计好,并推动落实。
四、系统集成
系统集成是CMDB的最后一个环节,依赖CMDB工具提供良好的开放接口。因为CMDB核心价值是将配置数据供给外部系统集成消费,所以必须提供丰富、易用的API接口,方便与第三方系统低成本的集成。
高质量的数据是CMDB建设的终极目标,而只有把其骨架(模型)构建好,并注入灵魂(维护与消费),才能让CMDB真正的活起来