如何理解CMDB的套路

CMDB成功和失败,关于掌握的CMDB套路的多与少、深与浅!

前几天在对一个项目进行总结,编写CMDB的配置管理规范,发现还是有很多套路,本文就是老王总结的CMDB套路!

套路1:CMDB名字应该改一下了,叫IT资源管理

什么叫配置?的确现在很多配置管理的工具,这些东西也是沿袭下来,但我更喜欢puppet里面提到的资源概念。资源几乎可以和对象的概念对等,对象有属性,资源也有属性;对象有方法,资源也有动作,额外增加一点,资源还有状态。记住一些,可以把一切对象当成资源来看。

我为什么坚持要改名?从现实的情况来说,大家一说CMDB都是那些传统的讨论,自动发现、配置项、配置属性。另外动不动就是一些一些表单的设计和管理,而忽略一个真正的CMDB是什么?

真正的CMDB就是要把内部所有的IT资源管理起来!

套路2:CMDB模型有层次

在下图的模型中,CMDB的模型是有层次的,我把他定义成核心模型和扩展模型。

核心模型。核心模型是记录了业务、应用和主机Host的关系,其他的关系都可以不记录。有了这个模型基本上可以运转后续的自动化和监控系统了;其次还可以有效的管理公有云上的主机信息。

核心模型绝不是基础设施级的资源模型!

扩展模型。扩展模型就是依赖核心模型扩展出来的,比如说基于应用需要找到关联的一些资源信息;基于主机找到它关联的一些依赖设备信息,比如说机柜、存储和交换机等等,不断的扩展对象模型。

坚持核心模型的导入,逐步驱动周边的配套资源完善,这是 应用驱动CMDB的最核心切入点。

套路3:CMDB的对象关系要简化

从上图中,你可以看到CMDB模型中只有三种关系,三种关系如下:

主从关系。这种关系是一种强父子关系,主不存在了,则从就不存在了。用明细表来表达,属于对象级别的关系。可以通过明细表来表达,在easyops平台中用内联表来表达。

依赖关系。是一种对象属性级之间的关联关系,比如说服务器放在机柜上,机柜摆在某个机房内,这是对象级别的关系。通过对象的属性关联来表达。

连接关系。主机和存储、主机和网络设备的关系,是连接关系。这种关系是动态生成的,是一种实例级的关系。

依赖关系和连接关系有什么不同?

依赖是一对多的关系,并且这个关系是靠人维护的,比如说机柜上放了很多服务器。

连接是多对多关系,并且这个关系是因为某种“连接”产生的,比如说服务器连接了交换机。可以通过自动发现来实现,如果是人来维护,基本上不可能。

套路4:不要太迷信自动发现

自动发现在一定成都上能降低维护的成本和代价,但我不迷信这个能力。一则自动发现的能力一定有需要人工介入的过程,比如说网卡速率的自动发现,出现异常的时候,肯定不能进入CMDB;其次自动发现在某种场景是不能直接生效的,举个例子,比如说某个机器内的进程和端口信息需要做自动监控,此时如果通过自动发现来实现主机上的进程和端口信息维护(其实简单),但这个就需要监控系统适应变更期内进程被暂停的情况,暂停导致机器的进程信息自动发现不全。

仔细思考过自动发现和人工维护的边界?

第一、涉及到资源状态的变更划分,其实都应该需要人为参与的。比如说IP/服务器资源从资源池进出的过程;状态的变更会涉及到监控策略自动变化的。从状态这个维度进去,很容易找到人工和自动的边界,而非状态属性的填充则无所谓了。

第二、跨组的资源管理则需要流程驱动,目前来看比如说防火墙、IP地址、服务器是典型的跨组/部门管理的资源。资源的管理方和使用方需要一些流程管控。当然这个地方有改进的地方啊,如果是管理平台完善,是可以通过平台来简化流程的哈。DNS、负载均衡资源的管理也是一个典型的例子。

 图中的每条线上都是一个CMDB管理流程,【初始化完成】除外!

套路5:CMDB要领导参与,团队理解一致

领导非常重要,领导参与加上团队的一致理解,这个CMDB不成功都难。很多CMDB项目的失败,不是技术层面上导致的,而是和人有关。

说到一致理解,我觉得CMDB的概念、模型、流程、场景、实施方法要足够的简单。CMDB的导入最好开始能带一个场景进去,无论是对事件的支撑、还是对监控的支撑。

套路6:云计算的概念层次就是CMDB的层次

在CMDB系统中其实有很深的层次,云计算的概念层次就是CMDB的模型层次。在你构建模型的时候也需要构建这样的一个分层能力,这个能力划分开来之后,对持续部署的影响也是在的。我们的实践检验出来是持续部署标准化的规范也需要这样的分层思路,越界导致系统管理不清楚,监控也是如此!

有一点我没想清楚的是,PaaS的资源到底是应用附属资源管理,还是作为独立资源管理?特别是公有云的模式下。

套路7:CMDB是你的IT资源和组织的快照

这句话说起来好简单,CMDB不仅仅映射出你管理的IT资源模型,其实更是你组织管理模型的映照。当一个对象找不到Owner的时候,你需要思考到底什么问题?当一个流程无法推行的时候,你同样要去思考组织的管理是复杂了还是执行力不够?

CMDB背后有着很多的套路,它和自动化系统有一些不同,做一个管理信息系统比做一个工具系统会更难,理解这些套路,也就接近了成功!

作者:老王

来源:51CTO

时间: 2024-10-25 01:22:05

如何理解CMDB的套路的相关文章

优云运维经验分享之 – 剖析CMDB的设计过程

作为IT管理的核心,CMDB逐渐成为系统管理项目实施的热点.在很多的案例中,由于忽视了CMDB的因素,ITIL的深入应用受到了极大的挑战.同时,由于CMDB是IT管理信息的集中,CMDB也是一个重要的工具和手段. 在CMDB落地过程中需要注意的是,CMDB项目不是一个简单的软件安装过程,而是一个咨询.培训.实施.优化密切结合的综合过程,涉及到平台工具采购.咨询服务.实施服务.培训.甚至扩展开发等内容.同时,一个成功的CMDB项目不能一蹴而就,而是一个循序渐进.持续发展的过程,需要企业后续的投入和

django 快速实现文件上传

前言 对于web开来说,用户登陆.注册.文件上传等是最基础的功能,针对不同的web框架,相关的文章非常多,但搜索之后发现大多都不具有完整性,对于想学习web开发的新手来说就没办法一步一步的操作练习:对于web应用来说,包括数据库的创建,前端页面的开发,以及中间逻辑层的处理三部分. 本系列以可操作性为主,介绍如何通过django web框架来实现一些简单的功能.每一章都具有完整性和独立性.使用新手在动手做的过程中体会web开发的过程,过程中细节请参考相关文档. 本操作的环境: ==========

python+django快速实现文件上传_python

对于web开来说,用户登陆.注册.文件上传等是最基础的功能,针对不同的web框架,相关的文章非常多,但搜索之后发现大多都不具有完整性,对于想学习web开发的新手来说就没办法一步一步的操作练习:对于web应用来说,包括数据库的创建,前端页面的开发,以及中间逻辑层的处理三部分. 本系列以可操作性为主,介绍如何通过django web框架来实现一些简单的功能.每一章都具有完整性和独立性.使用新手在动手做的过程中体会web开发的过程,过程中细节请参考相关文档. 本操作的环境: =============

中国百亿元电影时代:二十六部片子的垄断

2010年的电影市场,中国导演们处在理想和现实的夹缝之中尴尬周旋,外来的大片不仅仅冲击着票房市场,也冲击着导演们已然不多的电影理想,无孔不入的广告也成为导演们无可避免的痛苦.是要收入,还是要理想,已经不得不选择了. 引进片的震动 2010年刚刚开始的时候,中国导演们便承受了一次引进片带来的地震.第一波冲击来自<阿凡达>,这部电影在2010年1月4日上映,短短时间便创造了票房奇迹,这部全球票房第一的大片,最终在中国同样也以13.5亿元人民币创造了票房奇迹,成为不可逾越的高峰(微博). 重要的是,

站被K-seo速成法:刺激+套路+稳定+相关性

一开始的时候,好多手下的人问我,小蒋seo该怎么做?难道真的就是每天找不同的博客和论坛发外链,每天不停的写一些漫无边际的所谓的原创吗?那么做seo真的就会像某些人比喻的一样成了"网络污染者"了,那么怎么摆脱这种困境呢?我自己思考了一下,首先想到的seo到底是什么,我理解的意思是网站的内部优化及外部优化,然后使自己的网站能够在百度,谷歌,搜狗等等搜索引擎中能够多个与网站的关键词排名靠前,让网民能够搜到自己.那么我们的网站怎么才能靠前呢,很多人会告诉我,网站内部优化,框架结构,关键词布局,

深入理解tomcat是中间件、正向代理、反向代理、透明代理以及IIS、Apache、Tomcat、Weblogic、WebSphere

       中间件(middleware)是基础软件的一大类,属于可复用软件的范畴.顾名思义,中间件处于操作系统软件与用户的应用软件的中间. 中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源.中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯.是连接两个独立应用程序或独立系统的软件.相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息.执行中间件的一个关键途径是信息传递.通过中间件,应用程序可以工作于多平台或OS环境.

关于高效开发的一些套路与实践

在开发中,编码我们有分层架构.设计模式做为套路来高效开发,但你也知道编码不是开发的全部,一个完全的开发流程用面向对象思想来概括,它分为OOA(面向对象分析).OOD(面向对象设计).OOP(面向对象编程).一个好的代码结构是需要需求分析,架构设计做为辅助的,Stay尝试向你描述一个理想高效的工作流程,有了这个套路,不仅能让你缩短编码时间,还能得到团队的认可. 关于高效开发,大多数人的第一反应就是成熟的分层架构.设计模式以及第三方lib.这些给了我们设计准则还有便利的工具更快的去做需求实现. 高效

深入理解学习Git工作流(转)

  个人在学习git工作流的过程中,从原有的 SVN 模式很难完全理解git的协作模式,直到有一天我看到了下面的文章,好多遗留在心中的困惑迎刃而解,于是我将这部分资料进行整理放到了github上,欢迎star查看最新更新内容, https://github.com/xirong/my-git/blob/master/git-workflow-tutorial.md 我们以使用SVN的工作流来使用git有什么不妥? git 方便的branch在哪里,团队多人如何协作?冲突了怎么办?如何进行发布控制

《社交媒体大数据分析——理解并影响消费者行为》一第1章 市场营销

第1章 市场营销 社交媒体大数据分析--理解并影响消费者行为 维基百科,其本身就是一种以众包形式存在的产品.它对市场营销的定义为:"以销售产品或服务为目的而向(潜在)客户宣传产品或者服务价值的过程."就像超级跑车在普通汽车中鹤立鸡群一样,市场营销一直以来都是大数据和社交媒体分析最美妙,也是最显而易见的应用领域,同时也是他们大肆宣传的最好样板:点击一下Twitterverse,或者发布一个不胫而走的视频,接着你的产品或者服务就变成了摇钱树. 市场营销并不是第一个使用数据分析学的领域.第一