1 需求
关于CMDB使用过程中的一次总结,通过CMDB的认识、进化、流程规范支撑、运维场景驱动等方面的介绍,让我们快速了解
- 如何通过CMDB管理基础设施;
- CMDB为上层应用如何提供数据支撑;
2 认识CMDB
2.1 CMDB定义
- CMDB(Configuration Management Database)配置管理数据库,它包含了一个组织的IT服务使用的信息系统组件的所有相关信息以及这些组件之间的关系。
- CMDB用于存储和管理企业IT架构中各种设备的配置信息,其中包括主机、业务、用户、机房、网络等。其被认为是ITIL服务管理的核心,所有流程所需要使用的配置信息都将通过CMDB来进行获取。
2.2 CMDB常用名词
- 配置项CI( Configuration Item ) 物理机、交换机、路由器、虚拟机、MySQL、Redis、Tomcat等。
- CI模型 CI模型可以理解为一个关系型数据库中的表,它由CI属性组成。
- CI属性 CI属性可以理解为表中的字段。例如虚拟机这个CI,有以下属性:IP地址、主机名、CPU、内存、创建时间、操作系统等。
- CI属性类型 每个CI属性都有其数据类型,可以理解为表中的字段类型。例如:符串、整数、下拉菜单、浮点数等。
- CI实例 CI实例可以理解为一个具体的资源对象。例如mysql-node1这个MySQL数据库。
3 CMDB演进
3.1 传统CMDB建设失败教训
- 传统CMDB建设由数据中心发起,面向资产管理,面向运维,缺乏业务视角;
- 传统CMDB消费场景单薄,仅面向ITIL服务,数据/开放性接口不足;
- 过于关注CI广度和深度,模型不标准,模型拓展难;
- 技术架构落后,常使用关系型数据库带来能力限制;
3.2 新一代面向应用的CMDB
- 面向应用,按业务、集群、应用分层管理
- 可视化的业务拓扑
- 自定义配置模型(CI)管理
- 资源自动发现,保证数据一致性
- 全面的API服务
- 为自动化运维和DevOps提供数据支撑
4 流程规范
对于CMDB的管理可能会涉及到基础运维和应用运维等多个岗位,其中:
- 基础运维负责物理机等硬件设备的管理IP、资源基础信息的录入
- 应用运维负责业务IP、业务、应用、模块等信息的分配
由于业务IP关联至管理IP及分配至业务/模块都是依赖基础运维已经将服务器资源录入,因此我们需要一个通用的流程规范来保证此项工作按序展开。
5 场景驱动
当我们已经将业务IP分配至业务/模块后,剩下的就是我们通过CMDB全面的API服务为不同的运维场景提供数据支撑了。
场景如下:
- 事件推送网关,实现CMDB、JumpServer、Zabbix 等不同平台的联动;
- 标准运维,实现Vsphere虚拟机分钟级上架;
- 应用启停管理,结合pipeline实现应用优雅的启停管理;
- 应用自动上线,结合pipeline实现应用分钟级自动上线;
- 应用版本发布,结合pipeline实现应用的版本发布;
- 故障自愈,实现和Zabbix监控系统的告警联动;
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/notes/303290.html