Chinaunix首页 | 论坛 | 博客
  • 博客访问: 507526
  • 博文数量: 158
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 904
  • 用 户 组: 普通用户
  • 注册时间: 2016-10-10 11:17
文章分类

全部博文(158)

文章存档

2018年(74)

2017年(84)

我的朋友

分类: 架构设计与优化

2018-05-29 13:58:52

CMDB存储与管理企业 IT 架构中设备的各种配置信息,为运维场景提供配置数据服务,它与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值。好的CMDB建设可以发挥很大的价值,本文提供一种新的建设思路,供大家参考。

       本文来源于——学领未来

一     传统CMDB的痛点

image002.jpg

  • 覆盖不足:配置对象、对象属性和关联关系无法自定义扩展;

  • 管理复杂:要求纳管的配置项过多,配置管理流程复杂,需要有专职的配置人员(配置经理、配置管理员)来维护CMDB,而配置数据价值难以体现,企业一般难以单独投入这些资源;

  • 数据质量:数据的准确性与一致性较低;

  • 配置孤岛:配置数据仅仅存储静态资产信息,没有把配置消费起来

二     新的CMDB建设思路

2.1       视角的转变

首先是视角的转变,传统CMDB是围绕IT资产为核心进行建设的,无法与业务进行挂钩,体现不出多大的价值。而新思路视角则是以应用为中心进行,围绕应用来设计模型、配置项、模型关联等,以及建设配置数据消费场景,充分体现CMDB的价值。

2.2       建设流程

image003.jpg

  • 第一步是建立业务场景,必须想清楚建设CMDB是为了什么,仅仅是把数据存放起来以便需要用的时候查看?配置数据应当发挥更大的价值,如基于CMDB建设自动化运维场景、结合监控做可视化大屏等;

  • 第二步是建立模型蓝图,即CMDB中需要包含哪些内容。其中包括模型设计,如应用、中间件、数据库、虚拟机、物理机、网络设备等,关联设计,如应用与中间件的关联性、虚拟机与物理机的关联性;

  •  第三步是建设CMDB工具,需要有一个高度灵活、高性能的CMDB工具,可以进行模型的动态扩展、配置项的动态扩展、模型关系的动态设置,以便适应企业的发展带来的变更;

  • 第四步是建立模型以及数据梳理和录入,也就是要把之前设计好的模型蓝图,在CMDB工具中落地,并梳理好实例数据进行初始化录入;

  • 最后一步是将CMDB与各个系统打通集成,落地规划的业务场景,让CMDB充分扮演好它的角色,持续的驱动配置数据的价值;

2.3       模型设计

模型设计中,模型对象一般包含:应用、集群、模块、进程、软件包、中间件、数据库、虚拟机、物理机、存储、机柜、机房等。模型对应的CI不宜过多,原则是业务上必须用到的保留、可自动化采集的保留、可有可无的尽量舍弃。

关联设计中,以应用为出发点去进行设计,如下图所示,自下而上,直接或间接影响业务应用的因素一目了然。

image004.jpg

 

2.4       数据的质量

CMDB工具建设好了,配置数据也落地了。但配置数据的维护是一个很有挑战的事情,因为我们不仅需要维护频繁变更的配置数据,还须保证数据的准确性和一致性。这里提供几种方法来改善这个问题。

image005.jpg

  • 数据的规则校验,这种方法可以在一定程度上提高数据的准确性,防止误操作或不规范的录入行为造成数据质量问题。比如正则校验、类型校验、必填和唯一性校验等;

  • 自动采集,利用脚本、接口、协议等方式自动采集配置信息,降低人工维护成本的同时,可以极大提高数据的准确性;

  • 外部系统集成,如与流程平台、资产系统、网管系统等做集成,将无法自动采集的配置信息通过接口同步的方式自动录入;

  • 周期性的与基准信息进行对比,分析出差异并进行告警;

三     配置自动采集

配置的自动采集依赖于采集工具,可以采用第三方的采集工具,但更灵活可控的方式是自己开发一个采集工具。如果是一种扩展性较好的一种采集工具的架构方案。

image006.jpg

1.       在CMDB的旁侧,建立配置自动采集工具,通过接口的方式与CMDB进行集成;

2.       同步原理是每次从两边分别获取全量数据进行对比分析,这样可以保证同步的一致性。防止因为初始化或工具的问题导致同步误差;

3.       采集工具拥有配置采集器、数据获取和上报、数据对比分析等核心模块,通过任务调度模块的周期性驱动,让各个模块协调工作,定期的完成数据的采集、对比分析,将增量(增加、改动)的数据同步至CMDB仓库;

4.       配置采集器的设计,可以让工具扩展性更加良好。针对不同的采集对象,定制开发不同的采集器来进行横向扩展;

5.       通常采集的方式有脚本执行、接口对接、通用协议、数据视图等方式;

四     消费场景的建设

前面说到,配置数据消费非常关键,是一个CMDB项目成败的关键。那么基于CMDB我们可以做一些什么事情?

image007.jpg

       举些例子:

l  做应用的故障分析时,需要用到应用的拓扑信息;

l  做服务器资源自动交付时,需要用到应用、集群、模块等配置信息;

l  做巡检需要用到巡检对象的配置信息;

l  结合监控可以做业务的可视化大屏展示;

l  应用的发布、扩缩容等,需要知道应用部署在哪些服务器以及相应服务器的配置信息;

l  自动化运维工具的建设,也需要用到各种配置信息。如数据库的操作管理,需要知道有哪些数据库以及它的IP地址、数据库类型、实例名等配置信息;

五     小结

本文提供的建设思路,其关键点是视角的转变,将传统以资产为中心的大而全的CMDB,转变为以应用为中心,更自动、更轻量的方式来进行建设,将更多的精力关注在数据的消费和价值的体现,从而让CMDB在企业的IT架构中发挥更重要作用。


阅读(2996) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~