多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] ## **一、CMDB简介** **CMDB (Configuration Management Database)配置管理数据库**: <br /> CMDB用于存储与管理企业IT架构中设备的各种配置信息,它与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值,同时依赖于相关流程保证数据的准确性。 <br /> CMDB是ITIL(Information Technology Infrastructure Library,信息技术基础架构库)的基础,常常被认为是构建其它ITIL流程的先决条件而优先考虑,ITIL项目的成败与是否成功建立CMDB有非常大的关系。 <br /> CMDB的核心是对整个公司的IT硬件/软件资源进行自动/手动收集、变更操作,说白了也就是对IT资产进行自动化管理,这也是本项目的重点。 <br /> ## **二、项目需求分析** **本项目不是一个完整的的CMDB系统,重点针对服务器资产的自动数据收集、报告、接收、审批、更新和展示,搭建一个基础的面向运维的主机管理平台。** 下面是项目需求的总结: * 尽可能存储所有的IT资产数据,但不包括鼠标键盘外设、优盘、显示器这种属于行政部门管理的设备; * 硬件信息可自动收集、报告、分析、存储和展示; * 具有后台管理人员的工作界面; * 具有前端可视化展示的界面; * 具有日志记录功能; * 数据可手动添加、修改和删除。 当然,实际的CMDB项目需求绝对不止这些,还有诸如用户管理、权限管理、API安全认证、REST设计等等。 <br /> ## **三、资产分类** 资产种类众多,不是所有的都需要CMDB管理,也不是什么都是CMDB能管理的。 下面是一个大致的分类,不一定准确、全面: 资产类型包括: * 服务器 * 存储设备 * 安全设备 * 网络设备 * 软件资产 服务器又可分为: * 刀片服务器 * PC服务器 * 小型机 * 大型机 * 其它 存储设备包括: * 磁盘阵列 * 网络存储器 * 磁带库 * 磁带机 * 其它 安全设备包括: * 防火墙 * 入侵检测设备 * 互联网网关 * 漏洞扫描设备 * 数字签名设备 * 上网行为管理设备 * 运维审计设备 * 加密机 * 其它 网络设备包括: * 路由器 * 交换器 * 负载均衡 * VPN * 流量分析 * 其它 软件资产包括: * 操作系统授权 * 大型软件授权 * 数据库授权 * 其它 其中,服务器是运维部门最关心的,也是CMDB中最主要、最方便进行自动化管理的资产。 服务器又可以包含下面的部件: * CPU * 硬盘 * 内存 * 网卡 除此之外,我们还要考虑下面的一些内容: * 机房 * 业务线 * 合同 * 管理员 * 审批员 * 资产标签 * 其它未尽事宜 * * * 大概对资产进行了分类之后,就要详细考虑各细分数据条目了。 <br /> **共有数据条目:** 有一些数据条目是所有资产都应该有的,比如: * 资产名称 * 资产sn * 所属业务线 * 设备状态 * 制造商 * 管理IP * 所在机房 * 资产管理员 * 资产标签 * 合同 * 价格 * 购买日期 * 过保日期 * 批准人 * 批准日期 * 数据更新日期 * 备注 另外,不同类型的资产还有各自不同的数据条目,例如服务器: **服务器:** * 服务器类型 * 添加方式 * 宿主机 * 服务器型号 * Raid类型 * 操作系统类型 * 发行版本 * 操作系统版本 <br /> **其实,在开始正式编写CMDB项目代码之前,对项目的需求分析准确与否,数据条目的安排是否合理,是决定整个CMDB项目成败的关键。这一部分工作看似简单其实复杂,看似无用其实关键,做好了,项目基础就牢固,没做好,推到重来好几遍很正常!**