以消费场景为驱动的 CMDB 要怎么建?
构建 CMDB 价值所在
目前云计算服务已成为企业数字化新型信息基础设施。前期云的建设重点都偏向于云能力服务上,在运营支撑层面欠缺考虑及重视,随着云计算发展趋势及规模日渐庞大,业务需求场景范围递增,企业在管理 IT 环境时,经常会遇到部署变更多、监控管理难,服务运维杂等问题。
构建数字化技术支撑,从架构上可以分为三个部分,分别是基础设施架构、应用开发架构和运维支撑体系,三者相辅相成,缺一不可。而在三大组成部分之中,最容易被忽视的往往是运维支撑体系。如何对各类资源进行高效组织管理,提升运维服务效率,快速适应支撑运维场景需要、最大化利用资源数据成为了企业使用云计算服务的首要问题。
而在运维数字化的发展路径上,CMDB 的建设是一切的起点。
CMDB 的定义为配置管理数据库(Configuration Management Database),通过识别、控制、维护,检查企业的 IT 基础设施资源,从而高效控制与管理不断变化的 IT 基础架构与 IT 服务,并为其它流程,例如自动化运维、监控告警、故障定位、资源变更、服务发布、应急响应、VIP 重保等流程提供准确的配置信息。随着信息技术的进步与发展,企业的 IT 环境越来越复杂。数量庞大、品种繁多的云网设备、云服务很难被有效的管理,只有将 IT 架构中每一个对象数字化,实现其可观测、可操作、可服务,进而保障客户业务的连续性和敏捷性,全面支撑企业数字化实现成功。
多云管理中的 CMDB 设计
多云管理平台以消费驱动的 CMDB 建设方法作为核心,以敏捷、灵活、可扩展、可持续维护、可充分自定义管理客户云网基础设施元数据、云服务资源实例等信息,并提供丰富的模型管理、标签管理、资源拓扑等功能,可自动发现各种主机、网络设备、应用,持续提升数据准确性。将所有碎片化的配置信息进行整合,形成配置数据交换枢纽,为企业配置信息管理提供了一套完整的解决方案,帮助解决运营和运维管理中的痛点。
01
面向业务的动态建模
在明确资源配置数据消费支撑场景后,对所需管理的 IT 资源进行灵活建模。允许用户根据需求创建配置模型,定义属性。对属性提供丰富的控制选项,可定义属性的数据类型、数据范围、数据格式。
CMDB 需要对不同设备种类、不同类型的云服务、技术\应用组件上的资源进行统一管理,因此需要资源配置管理库模型定义具备足够的灵活性,能够根据场景需要灵活配置 CI、CI 项和关联关系。
根据支撑场景灵活的动态扩展管理对象,动态自定义模型主要对元数据进行管理,提供灵活自定义配置 CI 模型,可管理模型分组、模型属性、模型之间关系的配置与定义。比如在云业务的使用过程中或运维设备时,通常会存在至少有上千个维度信息、每个维度信息都我们都可以认为是一个对象。通过对象进行属性定义,并提供关系管理,从而形成一个完整的模型分组。并提供了灵活的资源标签用于对资源的分组管理。
在实际使用中,用户可根据系统内部预置常用模型进行属性设置使用,也可以对预置资源模型进行补充完善。可根据场景、业务需要,自由新增资源模型,对资源模型对像、属性、关系进行动态管理。打破传统 CMDB 资产管理的局限,将硬件、软件以及 IT 服务之间的物理和逻辑关系映射可视化。使得 IT 人员可以看到其互相之间的依赖关系,并确定该 IT 组件对客户带来的潜在影响。若 IT 人员可以实时看到其对公司或客户业务的影响,将大大有助于提高 IT 服务水平。
从业务视角对企业的云网基础设施进行分类组织与管理,通过跨层级构建模型的业务拓扑关系,复杂异构的多云环境、业务需求也能轻松满足;提供灵活、可视化的配置建模能力,承接配置模型、管理视图的落地,并适应业务发展所带来的模型变更要求。
02
多样化数据自动发现
我们在 CMDB 中内置了多种设备厂商型号、云平台、中间件采集解析适配器,支持 SNMP、IPMI、SSH 等命令及多种协议,实现监控采集获取资源相关数据,同时提供异常处理、多通道接入任务机制,可根据配置信息实现自动化采集和维护,提高对接的稳定性及效率。
提供配置采集策略和部署 agent 来实现自发现能力,首先对已获取的内部网络 ip 地址实施盲扫行动,根据发现的存活设备来获取更多信息,其次是对已知的 IP 主机,执行 ps、crontab、fin 等命令来发现垂直部署的应用、中间件、数据组件、进程、定时任务、未启动应用等配置信息,获取当前主机与其他网络对象的互联关系,根据应用端口的关系可以找到应用之间的联系。使用自动化稽核脚本对资源数据进行比对校验,通过自动稽核+人工审核确认来保证数据准确性,提升数据质量。
将零散分布在不同环境中的配置信息自动抓取,并在抓取过程中对数据进行识别、筛选、整合、格式化,整个过程完全可配。将使用者从配置信息录入的繁重工作中完全解放,并最大程度地提高了配置信息的准确性和及时性。
在同步数据时,采用的是资源模型同步优先于资源关联关系同步措施,通过提前发现配置与关系数据,解决同一个模型或关联关系的数据存在于同一个报文中的复杂问题,避免同步错误数据。
在完成基础验证清洗后,根据资源模型对其实例化,与已保存配置数据合并、建立关联。然后对实例数据更新索引,对实例数据的变化情况进行分析(包括实例增删、属性变化等情况),并将变化情况推送至资源所属管理域、业务域的相关干系人或使用方。
关键问题分析与实践
基于 CMDB 在天翼混合云管理的应用,向客户提供公有云、私有云、专属云、混合云、边缘云全栈云服务来满足政务云、医疗云、大中小企业数字化转型需求。赋能企业 IT 管理及运维人员掌控基础设施及应用负载情况的变化,提升云环境下的运维效率和质量。
建设 CMDB 的核心重点需求是为了能够及时掌握日常运维服务、应用、资源、基础设施等对象信息及运行态势,在出现量级故障、异常停机、重大事故等异常问题时,能准确定位资源实时情况,识别影响范围。同时向企业提供适应行业架构及业务特点的服务应用,根据支撑场景灵活的动态扩展管理对象,可按需管理云环境中各类资源配置数据与资源间关系数据。保障 CMDB 建设后能够快速适配多类运维场景使用。本文中主要就资源建模管理、运维服务构建方面进行关键实践。
01
分层、简洁、弹性的配置模型
通过聚焦解决私有云/混合云上规模的堵点、难点,全力支撑私有云/混合云业务发展,目标实现物理资源、IaaS、PaaS、SaaS 的全专业、全产品纳管覆盖,形成全局拓扑,做到一点看全;在混合云平台支持应用及资源种类型已高达 100 余种。
在该项目上,需要对接私有云/混合云的所有资源服务,并呈现实时情况,我们从建设 CMBD 时就对资源类型、资源对象、资源关系进行考量。以全局可视化的视角管理资源,目的是把数据中心、服务器、交换机、防火墙、负载均衡、磁盘阵列、路由器、云主机、云硬盘、对象存储、中间件、容器、应用等资源实例等信息进行汇聚,根据支撑场景灵活的动态扩展管理对象,可按需管理云环境中各类资源配置数据与资源间关系数据,比如硬件配置规格、部件、业务数据、设备间连接关系等。实现对模型分组、模型、模型属性、模型间关系的配置定义,集中呈现,提供资源动态可视管理。
资源模型组管理:从功能或是形态上对相近资源模型进行分组,一般属于同一分组的资源模型对象是具备大部分相同的属性,并且与其他分组内的资源模型对象关联。随着业务的发展需要,资源模型对象也会变得越来越多、越来越细。通过资源模型对象分组,可以方便以分组为单位对资源模型对象进行管理。
自定义模型对象:可对应用、中间件、数据库、虚拟机、物理机、网络设备、数据中心基础设施等进行模型、关联设计,灵活自定义配置 CI 模型。设计完成后,能够根据资源模型分组与资源模型对象的关系对资源模型对象进行展示。
属性动态配置:相比以往在数据库设置属性老旧操作,CDMB 把配置属性直接转移迁到页面上实现灵活动态配置属性。通过定义模型对象初次建立的基础信息及配置信息,通过模型分组的方式进行展示,能清晰的展示模型下的属性信息。为方便用户快速得添加资源模型对象属性,我们对分类相近的属性进行了分组管理,用户可以将分类相近的属性通过模板进行管理配置,在新增资源模型对象时,通过选择属性模板,自动应用模板上面的属性,从而大幅度地减轻运维配置、维护的工作。
资源模型关联:通过建立对各类模型间的关联关系,形成关联分类,抽象定义各类模型间可能存在关联关系。关联类型在建立时,不需要指定关联两端具体的资源类型,可通过构建 CMDB 模型之间的分类关联关系,实现模型关联的便捷创建、修改、查询同类关联信息、查看已配置的模型关系拓扑图。实现模型对象间关系的管理及关系定义。
通过资源模型管理实践,内置基于业务视角的分层弹性模型,通过可视化建模,灵活动态扩展模型,满足用户的实际个性化管理需求。CMDB 统一模型可以很好的屏蔽底层云平台架构上的差异,解决了混合云前后端资源池概念不统一,厂商之间关系数据匹配差异、匹配处理等问题。结合资源划小管理要求对资源池模型进行梳理建设,准确建立起前后端资源池之间的关联关系,明确基础设施、云资源的归属关系,并使用自动化稽核手段+人工审核确认来保证数据有效性,提升混合云资源实例配置信息与网络关系数据的准确性、实时性及运维支撑效率。
02
链接运维场景、打通业务壁垒
多云项目在对接公有云、私有云、专属云、混合云、边缘云、全栈云服务的管理过程中经常会面对着大量的基础设施和软件服务的运维支撑管理、在面对缺乏私有化部署的运维工具、运维和监控数据分散,不能及时发现并定位问题、各资源池运维手段参差不齐、缺乏统一标准、资源对象的生命周期管理信息部分缺失等问题,成为了系统建设后的运维痛点。
如何打破运维之间壁垒,统一构建运维支撑体系成为了运维支撑焦点。
多云 CMDB 以应用场景为驱动,构建符合多云架构,建立高效化的云运维的数据枢纽。提供 ITSM 流程管理、资源交维闭环流程管控,实现云网基础设施从上架、上线、监控、转维、变更、下线到下架的全生命周期管理。通过对接管理设备、云管、云平台提供的 API 来实时监控进程、设备、端口、CPU、内存等资源使用情况,并依托视图、拓扑、报表等组件功能对已建设模型对象进行关联展示,以面向不同用户建立可视化视图呈现,为各种常日应用场景提供资源管理服务。
资源全生命周期管理:可通过 CDMB 管理界面或是对外提供操作控制能力的接口实现资源自动化交维录入,对其属性、配置信息、各类关系提供维护变更能力,可与外部系统对接嵌入与资源相关的各类事件流程,实现数据消费闭环,并全程详细跟踪记录日志。
数据自动采集:全量自动化的采集配置,能够自动采集和发现数据,实时获取精准的配置数据,降低因手工维护带来的错误和低效率,并且能够利用自动采集的数据进行数据稽核,及时发现问题数据自动纠正,提升数据质量。
资源标签:资源实例或设备可通过标签绑定建立服务树,并将应用服务与资源进行关联标记,在服务树上使用标签就可以查询出不同业务类型的资源,并且可以通过标签定向监控资源,对资源进行重保、自动化作业管理。利用实例的业务关系,包括所属产品线、维护人等信息,进行告警精准通知派单。
资源拓扑视图:以实际使用的业务场景建设各设备、网络、资源实例拓扑,对承载云平台的物理资源、云资源、业务应用、资源实例之间的关联关系进行展现,从不同视角帮助相关专业使用、监控、运维,管理人员清晰直观的掌握 IT 运营中的有效信息(如:云主机自动关联所属服务器信息,其发生过事故、告警、配置变更),对云服务管控、对监控告警收敛、根因分析都提供了有效的支撑。
云业务运行视图:通过 CMDB 底层建模的数据关联关系,依托视图、报表、表单等组件形成资源关键指标、态势信息,呈现全网资源、全网客户业务情况、资源总体概况,资源使用情况、优化建议、业务发展态势、业务排名、网络状态等信息。
实现监控自动接入,性能数据、告警数据自动采集。提供资源池等维度监控的可视化呈现。可以利用资源实例间网络关系、设备与部件的关系等,实现告警的自动处理,同时建立维护资源之间的关联关系,形成全局拓扑,一点看全。在 CMDB 中会存在非常多的业务变更或硬件组件更换信息,通过自动发现更新机制,校准更新存在 CMDB 中的数据信息与实际线上运行的进程、端口、CPU、内存等数据信息,确保资源数据及信息的准确性和一致性。
对已建立的各类模型自身关系信息进行抽象,抽象关系时会存在一对多或多对多的关系情况。通过从上往下梳理模型之间的所有关系,形成映射资源模型或类型,拉通集成→交付→交维各个环节的核心数据流,根据未来运维场景需求快速进行调整,打造混合云运维支撑数据底座,提升用户体验。
结语
CMDB 主要价值一方面是管理主数据,企业 IT 环境是动态的,在不断引入或报废新的基础设施、云服务时,需要实时更新 CMDB 来反应这些变化实现闭环管控;另一方面侧是消费场景,场景就是动力,常见有价值的场景包括自动化运维、交维验收、告警收敛、故障定位、故障影响分析、应急管理、VIP 重保、云资源容量分析、服务发布、安全内控(账号、漏洞扫描、合规检测、端口封堵、安全加固)等。
与实际的应用场景结合并落地才能发挥出最大的使用价值。
版权声明: 本文为 InfoQ 作者【鲸品堂】的原创文章。
原文链接:【http://xie.infoq.cn/article/2a84e03d5f3f569c9da46dd2a】。文章转载请联系作者。
评论