• 快捷搜索
  • 全站搜索

配置管理系统建设实践与探索

2018-08-13 10:45:39作者:中国外汇交易中心工程运行部总经理 姜才康编辑:金融咨询网
CMDB系统不仅只是交易中心的一个配置管理系统,更是交易中心运维工作转型的示范窗口,它集成了人员、流程、数据、技术和业务系统等各类数据,对交易中心基础设施层及应用业务层进行了有机结合,是其他运维系统及日常运维工作不可或缺的一个重要数据源头。

CMDB项目建设背景

  近年来,随着中国外汇交易中心(以下简称“交易中心”)国际化布局的步伐进一步加快,交易中心的业务发展突飞猛进,业务规模不断增大,系统架构演变越来越灵活多样,这对应用系统以及基础设施的性能、稳定性、建设速度等方面均提出了很高要求。如何有效地管理大规模系统集群,迅速处理各种突发状况,保证系统稳定运行,快速响应业务需求,是交易中心运维团队面临的一个挑战。系统的配置部署、监控、故障切换等工作,都需要从传统的手动运维模式逐渐向自动化、智能化的方向发展。

  为此,交易中心专门组建了运维研发团队,逐步建设能够提高运维自动化、智能化以及精细化程度,提升运维效率的统一运维管理平台。该平台包括运维大数据平台、流程管理平台、统一监控平台、作业管理平台、基础设施管理平台以及运维公共服务平台(如图所示)。这六大平台能够稳定运行且快速提供各类运维功能的一个重要前提是有一个具有数据准确、维护方便、数据接口丰富以及数据传输性能高的配置管理系统(以下简称CMDB系统)。

2-1.jpg

  除了作为各平台的重要数据源和对各平台提供数据支持之外,CMDB系统本身也在交易中心的信息管理工作中有着举重若轻的地位。交易中心的运维环境具有业务场景丰富、IT资源类型多等特点,在CMDB系统完成建设之前,我们主要通过文本等传统载体进行维护配置管理。该方式存在诸多弊端:如无法展现不同配置类型之间复杂的映射关系;做任何数据修改,都可能会牵涉关联文件的修改,牵一发则动全身,如某配置项数据错误或需要更新,其他所有引用此配置项文件都要更新,工作量大、效率低、出错率高。此外,传统的信息管理方式也无法提供信息的自动发现、数据准确性检查以及关联性可视化展示等功能,无法满足日益精细化的运维管理需求。

  综上所述,交易中心的运维工作要向自动化、高效化、标准化发展,一个稳定好用、数据准确的CMDB系统是重要前提。CMDB系统建设工作在统一运维管理平台里的优先级最高,是支撑运维系统以及运维工作的重要基石。

开源CMDB的落地之路

  CMDB项目的整体建设过程始于2015年5月,历经两年多的发展,逐步形成了“初创—迭代改进—价值输出”的全生命周期过程。

  CMDB第一阶段的建设,结合交易中心金融业务的具体场景及实际数据管理中所遇到的问题,聚焦于应用和业务层面,定制了相比传统配置管理更侧重于应用和业务层面的配置模型。项目伊始,团队在CMDB平台产品的选型上遇到阻碍,现有市场在用的商业化产品可定制化能力差,无法满足交易中心多样化的业务需求,而纯自主研发模式需要投入较多的研发成本,且短期内也无法快速建成系统,无法快速上线。最终,我们确定对开源软件CMDBuild进行定制开发的建设方案。我们克服了开源工具CMDBuild中文支持差、数据模型复杂建模困难等问题,在短短两个月时间里,建立了既包含服务器、网络、安全设备以及存储等众多基础设施信息。同时又包含应用系统、业务数据流等应用信息的全方位覆盖的配置模型;制订了完全符合运维人员管理需求的配置模型颗粒度;并使用交易中心的本币、外汇两大核心交易系统的真实数据进行验证,确保配置模型设计合理并符合实际运维需求。不仅节省了软件花费成本,而且具备可高度定制化并灵活应对运维场景变化的优势。

  在配置模型建立完成后,随即开始对用户需求进行集中梳理。初期用户需求很多,并且存在部分需求间相互冲突等情况,如何有效甄别需求优劣并排序优先次序亟需解决。为此,我们配备了专业的需求收集人员,进行统一需求管理。首先明确复杂外部环境下的完整需求不可一蹴而就。相比于传统瀑布式开发流程,决定采用互联网公司常用的敏捷式开发模式,通过一个个2~4周的上线周期迭代,持续不断地进行需求收集和完善,确保定制开发的方向;通过实现一个个不同运维需求的“微版本”,切实解决运维人员在实际工作中遇到的痛点,逐步推进CMDB系统的建设。最后,根据实际运维需求及CMDB系统试用反馈,逐渐梳理出CMDB系统各类使用场景(见表1),并不断优化改进CMDB系统的使用功能,改善用户体验。

2-2.jpg

  CMDB配置管理系统于2015年11月在生产环境上线,实现了对配置管理信息进行统一、可控的管理,总计完成了18万条配置项条目和17万条配置关系条目的初始化录入,并得到了有效推广和使用。通过CMDB来配置管理数据的次数逐步提升,逐渐摆脱了原先通过传统方式维护配置信息所带来的种种不便(如图所示)。

2-3.jpg

CMDB自动化发展之道

  CMDB的上线有效解决了数据利用率低、数据分散无法集中管理、数据整合分析难等问题。但随着CMDB系统中数据量不断增大,通过人工对CMDB的各类数据进行收集和维护的方式仍然存在维护工作量较大、无法实时更新数据以及数据录入易出错等问题。对此,我们着手开展CMDB配置信息维护的自动化工作。

  经过深入分析研究,发现CMDB中不同类型的配置信息自动获取方式存在较大差别,即使是同样类型的配置信息,在不同操作系统下(Linux/Solars/AIX)的获取方式也完全不同。所以单一的自动化解决方案显然已无法满足需求,导致实际CMDB维护自动化工作量比最初预估的大得多。我们提出多样化的自动化解决方案,主要分为两部分:一是对接交易中心已有可以产生配置信息各类运维系统,如监控、网管等平台,自动解析有价值的配置信息,避免数据重复采集;二是采用Ansible等开源运维工具并结合各类定制化脚本,自动抓取各类基础设置的配置信息。

  通过实施CMDB自动化维护(如图所示),即自动化抓取设备信息并更新到CMDB替代人工数据录入,打破传统数据维护单一模式,有利于变更审核透明度的提升。同时,提升了数据准确性也减少了人力修改数据的场景,使中心顺利通过了ISO20000的审计。此外,还能进一步细化CMDB配置管理模型的颗粒度,为各运维系统提供更详细的数据支撑,进而推进整体运维自动化进程。

2-4.jpg

CMDB完善与进阶之途

  1.线下运维场景支持。在实际使用场景中,除常规的线上场景应用外,运维人员在线下使用CMDB时会受到时空和物理设备等因素的影响。如运维人员无法快速在机房找到终端登录CMDB进行信息查看,导致CMDB系统无法发挥最大的价值。考虑到定制移动版CMDB成本较高,且实施周期较长,我们聚焦用户真实需求,针对数据中心的线下使用场景,开发了二维码扫码功能模块,帮助运维人员在数据中心直接利用手机扫描服务器、网络设备、机柜等线下物理对象,实时获取到对应的配置属性信息和关联配置信息。

  二维码功能模块为运维人员在数据中心访问配置信息提供了便利。机动灵活的查询方式,不仅加强数据的使用率,也利用移动終端的隨身性大幅简化了查看重要配置信息的步骤,缩短了故障通知的时效,生产保障能力得到大幅提升。线上线下场景的完美结合,为配置数据O2O开辟出新天地,减轻了运维工作复杂繁琐的操作过程,能灵活满足用户的个性化服务需求。

  2.配置信息可视化。CMDB系统是交易中心运维数据的汇聚地,经处理分析可以挖掘出大量有价值的信息。挖掘数据的一个重要手段是让数据可视化,但开源软件CMDBuild所提供的原生UI主要以列表形式来展示信息,没有额外的数据可视化展示模块,缺乏对数据分析和统计场景等实际应用的友好支持。为此我们定制开发了CMDB信息可视化模块,以简单、直观的方式,看到由CMDB中的复杂逻辑所提炼出的运维价值数据。在系统应用逻辑层面采用了桑葚图、树图、柱状图、饼图等图形,多维度呈现IT基础设施和应用组件间的依赖关系,并结合ECharts.js等开源可视化组件,自主打造了符合运维场景需求的Dashboard页面,提供对整体运维资源的统一视角管理。

  配置信息的可视化大幅提高了CMDB的使用效率,让相关人员能够聚焦视线在最核心、最重要的信息上,既提升了运维团队的整体工作效率,且为用户判断决策提供强有力的依据。

总结与展望

  CMDB系统不仅只是交易中心的一个配置管理系统,更是交易中心运维工作转型的示范窗口,它集成了人员、流程、数据、技术和业务系统等各类数据,对交易中心基础设施层及应用业务层进行了有机结合,是其他运维系统及日常运维工作不可或缺的一个重要数据源头。通过和统一监控平台对接,能够为监控告警丰富关联的业务影响信息,减少故障处理时间,更好地保障交易中心的业务连续性;通过和流程管理平台对接,每一次变更都能通过CMDB发现对应的影响清单,提升了变更风险的把控能力;通过和作业管理平台对接,作业平台执行所需信息均可从CMDB获取到实时准确的系统数据,保证了各类型作业的顺利运行。可以说,CMDB正逐步成为各类运维系统的基石。当然CMDB的成功建设及应用,除了项目本身研发工作外,也需要不断优化原有的运维流程和管理工作,不断和各团队沟通与合作,才能将CMDB真正落地并发挥其作用。我们将继续聚焦运维场景中的实际需求,持续不断优化CMDB,为交易中心运维工作创造更大的价值。

(文章来源:金融电子化杂志)

扫码即可手机
阅读转发此文

本文评论

相关文章