提到CMDB相信很多人都是有爱有恨,爱的是他给我们提供了一个美好的未来,有了CMDB我们可以解决诸多运维中的难题。狠的是一旦进入了实施阶段像是开启了一个潘多拉的魔盒。各种问题随之而来。原因有很多种,但笔者认为最重要的一点是:没有对CMDB的应用有清晰的定位,建设内容过于理论化而脱离实际应用场景,导致CMDB项目仅是为了理想中的CMDB,而不是面对事实,解决实际工作中遇到的问题。根据笔者以前实施过的CMDB项目归,纳出CMDB建设中常见的本质应用场景,每一种场景都有对应的成熟产品,但在市场上还没有遇见过有哪一家的产品能够搞定所有的应用场景。期望我们在CMDB项目启动前,先抛开众多的实施方法论,而是聚焦于“要什么”的本质问题上。期望在建或未来计划建设CMDB的组织,能首先明确CDMB建设的本质应用场景,必将能事半功倍。
统一资源管理中的CMDB
使用目的:
CMDB源自于ITIL中的概念,ITIL最终给CMDB的定位是运维的基石,通过CMDB可以实现对IT资源的统一管理,实现各IT运维岗位的信息共享,以辅助日常故障处理、业务系统上线、业务系统变更等日常运维业务。由于ITIL 以流程为核心,因此,此时的CMDB需要能与流程进行强关联。通过流程来驱动CMDB中数据的生产与消费。最终确保CMDB中的数据实时、准确。
使用场景:
在统一资源管理目的下的CMDB主要用于运维规模较大,各IT岗位分工明确,有清晰的业务系统管理、应用软件管理、主机管理、网络管理、机房基础设施管理的中大型IT规模的运维机构。因为在此场景下每个岗位都有自己的管辖范围,且管理的深度深、管理颗粒度细,此时每个岗位都是运维数据的生产者,但面向客户的对外业务是统一的,因此一但有一个新业务上线或者一个业务出现故障,那么在没有信息共享的前提下,申请资源和故障排查就是一个大问题。因为分工的原因导致基本没有人能了解整个IT的架构或运维的全貌,这就需要有一个资源共享系统把各岗位的资源数据聚集在一起,岗位间协作的目标是:对外提供业务服务,并通过ITIL的各类流程协同在一起,流程运转的过程也是运维数据产生的过程,因此就出现“伴随是数据生产”。即在业务运维中实现CMDB数据的生产和消费。
解决的问题:
这种场景下CMDB能解决以下几类问题:
- 解决IT资信息源分散在各运维岗位手中形成的信息孤岛问题,此类项目可以将各岗位手中的IT资源信息表格个人信息,转化为团队信息。
- 解决IT资源信息的实时性问题,在没有流程与CDMB结合的场景下,运维人员在完成其他岗位的业务请求后,往往不会立刻记录下这个变更,通常先记在脑子里,有空再整理成文档。这就可能造成信息的更新不及时,甚至遗漏。
- 解决CMDB数据收集难,更新不及时问题;传统在ITIL理念下的CMDB信息收集,需要专门的角色去负责数据的收集与整理即配置管理员,但这些信息又分散各岗位,无形中增加了各岗位的工作量,其在完成业务的同时还要分精力完成信息的整理上报,这也是很多CMDB失败的重要原因。而业务流程一旦和CMDB强关联后,可以在业务流程办理过程中完成CMDB信息的收集。
关键系统功能要求:
- CI 模型的自定义功能; 此时CMDB应该有非常灵活的CI模型自定义功能,要能够支持CI分类创建、CI属性自定义、CI关系自定义等。需根据实际业务的管理深度不同对模型的要求也不同,比如数据库实例、中间件应用端口、IP地址都可能成为CI。因此如果使用传统的内置CI模型库的方式很满足CMDB数据模型构建的要求。
- CI属性间复用; 统一资源管理下的CMDB的建设核心是信息的共享,目标是保证信息的实时性和准确性,如果信息的正确性不能保证,那么也就失去信息共享的价值。因此为了描述一个完整的CI对象,需要多方的信息支持。比如描述一台服务器,必须要有操作系统信息、安装软件信息、IP地址信息,机房安装信息等,这些信息会有多个岗位负责和维护,一次按照“谁生产,谁维护”的原则,就相当于需要将生产这些信息的岗位共同维护服务器CI的信息。当发生更新是能实时反馈到这台服务器模型上。这就需要CMDB系统支持引用各CI分类的属性信息。
- 流程与CMDB的强联动; 为了能够达到在业务运行中完成CI实例信息的动态录入与收集,就需要业务流程能够与CMDB强联动。如:业务系统上线流程执行完成后,就涉及到新CI创建,IP地址、服务器、网络端口之类资源的占用等情况,这就需要流程中的录入信息能时刻牵动CMDB中的数据的更新。当然还有更加复杂的流程与CMDB的操作如下:
实施建议:
笔者认为,当前大部分的ITIL咨询机构、网络上CMDB建设经验分享,大多数都是在描述CMDB的统一资源管理应用场景,而这里场景又是CMDB建设中无论是应用单位的组织成熟度、项目管理控制力,还是CMDB软件供应商的产品灵活性、实施能力都有极高的要求。而起产生的业务价值往往很年再短期内呈现,因为涉及的岗位众多,一期的项目不可能满足所有岗位的需求、解决所有岗位的所有问题,但又要求所有岗位参与,因此遇到的阻力也是最大的,因此如果之前从没有实施过CMDB或没有迫切的统一资源诉求,切忌启动全员的统一资源管理定位的CMDB。
资产管理中的CMDB
资产管理的概念比较大,涉及的范围也比较多,有专门的管理办法和管理标准来对资产进行登记管理,如:GB/T 14885-2010(固定资产分类管理)、GB/T 31360-2015(固定资产核心元数据)、GB/T33172-2016 (资产管理 综述、原则和术语)、GB T 33173-2016(资产管理管理体系要求)等。一般意义上资产管理由设备管理部门和财务部门共同管理,财务部门负责管理资产的:编号、名称、原值、月折旧额、净值、月修理费等,为财务部门推行电算化管理固定资产奠定基础。设备管理部门从设备使用、保养、维修的角度管理固定资产。原则是要求设备管理部门与