统一化与服务化
2022-06-21张文
张文
摘 要: 配置管理、监控等运维工具软件是数据中心运维管理工作的基础,传统商业运维工具软件各自独立,数据与流程不统一,难以满足企业内部流程、个性化场景对运维工具的需求。本文探讨自主规划和研发新型运维工具体系,在对现有工具优化和提升的基础上,通过API网关等技术实现运维工具的统一,并通过流程引擎技术促进运维服务化的落地。新型运维工具提升了运维管理工作效能与用户体验。
关键词: 配置管理; 监控; API; 流程引擎; 运维服务化
中图分类号:TP391 文献标识码:A 文章编号:1006-8228(2022)06-130-04
Unionization and servitization
——the construction of a new operation tool system
Zhang Wen
(Shanghai Pudong Development Bank, Shanghai 200233, China)
Abstract: Software such as CMDB and monitoring is the basis of management of the data center. The data and processes of the traditional commercial software are not unified, which is difficult to meet the needs of the enterprise's internal requests. In this paper, a new operation and maintenance tool system is planned and developed. Base on the optimization and improvement of existing tools, the unification of tools is realized through API gateway and other technologies. On the other hand, the implementation of operation servitization is promoted through workflow engine technology. The new tool system improves the management efficiency and user experiences.
Key words: CMDB; monitoring; API; workflow engine; operation servitization
0 引言
現阶段运维工具种类丰富,在单一运维场景下能够发挥较好的效果,但各运维工具相互独立,在数据、功能、流程等方面存在壁垒,难以形成合力来适配多样化的运维管理需求。鉴于上述情况,笔者从统一化、服务化的视角出发,完成了运维工具体系的规划、设计和建设,通过构建新型的运维工具体系,各运维工具形成合力,发挥出了“1+1>2”的效果,提升了运维工具的服务能力和用户体验。
1 运维工具体系总体设计
统一化与服务化的运维工具体系总体架构设计如下:
从图1可知,服务型运维工具体系自底向上分为资源池、能力层、枢纽层、服务层,各层级的定位和用途如下。
l 资源层表示被运维工具体系管理的运维对象。
l 能力层包含基础运维工具,向下管理实际的运维对象,向上提供标准的服务接口。
l 枢纽层是新型运维工具体系的核心,枢纽层通过建设API网关实现了运维工具的治理,通过流程引擎降低了运维服务建设的复杂程度。
l 服务层是服务型运维工具体系的关键,通过统一运维门户实现了运维服务的整合,通过运维服务目录和运维开发平台的建设推进服务型运维工具体系的落地。
下文围绕图1进一步阐述运维工具体系统一化与服务化的落地方式。
2 统一化运维工具体系设计与实现
运维工具体系的统一化主要是通过整体的规划、设计与建设,提升运维工具体系的服务能力,降低运维工具体系的建设成本。运维工具体系的统一化主要包含如下三方面内容。
2.1 底层管理统一
在“烟囱式”的运维工具建设模式下,众多工具都需要在客户端安装自己的Agent,每一种Agent都需要部署、维护和管理,成本非常高。本文采取如下方式解决了上述问题。
l 运维工具的Agent数量控制在两个,两套Agent相互管理,进一步实现了Agent级别的高可用。
l Agent通过两(多)级代理的方式,适配了银行生产环境严格的网络管理的要求。
l 通过基于现有Agent开发框架自主研发,有效满足了现阶段的各项需求。
2.2 运维数据统一
2.2.1 配置数据
配置数据是数据中心的“数据孪生”,也是运维工具体系的核心[1],配置数据的统一性与准确性对运维工具体系至关重要。
⑴ 配置数据大集中,完整描绘运维对象。
配置数据不仅需要展现运维对象的技术特点,还应兼顾运维对象的管理要求。另外,传统的配置模型聚焦系统软硬件配置,为适配技术发展趋势,应拓展至应用、云平台等方面。本文基于腾讯公司蓝鲸智云软件[2],完成了一体化配置模型设计。
从图2可知,数据中心的主要运维对象组织成了一个整体,通过配置数据的大集中,有效消除了配置数据的手工台账,为日常运维工作及其他工具建设夯实了基础。
⑵ “生产”与“消费”双轮驱动,提升配置数据准确性。
配置数据在系统建设初期往往较为准确,而随着时间的推移,数据的质量不断下降。结合实战经验,一是通过自动化方式采集技术类配置数据,二是通过对接运维流程来采集管理类配置数据,三是推广配置数据的使用,反向促进配置数据质量的提升。目前,实际配置模型近120个,配置实例超100万条,关联关系超过40万条,主要运维对象配置数据时效性保持在分钟级。配置数据已成为运维工具体系的数据标准,对运维服务化建设起到了关键作用。
2.2.2 监控告警数据
监控告警数据包含监测采集数据、告警通知数据两类,前者主要指CPU使用率等指标类、系统/应用日志等日志类数据,后者是指命中监控策略与规则后需要处置的告警事件。监控告警数据的处理流程如图3所示。
⑴ 建设分布式数据采集平台,满足海量数据处理需求。
监测采集数据体量大,时效性要求高,数据处理需求不断增长。本文采用分布式数据处理架构[3],有效应对海量数据处理场景。
l 不同区域的Agent将监测采集数据上报至Proxy节点,Proxy服务器支持横向扩展。
l Proxy服务器上报数据至管理服务器,管理服务器再根据数据种类等特征将数据发送至数据缓存节点。
l 數据缓存服务通过多套Kafka集群承载不同的数据流,可通过设置Partition数量增加单数据流的吞吐量。
l 数据处理服务根据不同的数据用途进行清洗、处理、存放。
上述架构已支撑生产环境2万节点的监控数据采集功能,实际数据处理能力已达到400MB/s(含日志类数据),从数据采集到存储控制用时在10s以内,且平台具备进一步的扩展能力。
⑵ 打造统一告警中心,提升告警有效性。
告警的有效性是衡量监控告警能力的关键指标之一。通过自研告警中心:一是广泛接入软硬件、机房、网络等各类告警事件,实现告警事件的统一管理;二是告警通知人统一从CMDB查询获取,便于人员信息的统一维护管理;三是告警聚合与重复计数,提升告警有效性;四是通过基线阈值智能算法替代固定阈值算法,提升告警准确率;五是对接自动化平台、事件平台等,提升告警处置效率,实现告警的闭环管理。
除配置及监控两类主要数据外,用户数据等数据也需要统一维护管理,各运维工具统一同步获取和使用。该类数据处理方式较为简单,本文不再赘述。
2.3 标准功能统一
传统架构下,运维工具“烟囱式”建设,工具之间相互独立,存在数据不统一、功能重复等问题,本文通过建设运维API网关[4],实现了运维工具的有效整合与治理的目标。一方面,运维工具将标准服务以API方式接入运维API网关(如图1所示),另一方面,各个运维工具保持其API向下的兼容性,从而避免了工具自身升级换代等问题导致的与周边工具的适配性等问题。运维API网关提供完善的管理功能,包括权限控制、流量控制、运行视图等功能,便于API的管理和维护。目前各类运维工具接入的标准API近600个,范围覆盖各运维工具,已经形成了较为完善的运维API生态,为上层运维服务化建设夯实了基础。
3 服务化运维工具体系设计与实现
运维服务主要是指针对特定的运维场景,利用运维工具体系的各项能力,快速构建的线上化、自动化、自助式的SaaS应用,以提升运维管理工作效率和工作体验。本文将运维服务目录整体划分为三级,具体90余项具体运维服务,摘录如图4所示。
服务和服务之间不是孤立的,而是可以有机的整合在一起,提供组合式服务[5]。以信息系统投产上线类变更为例,其涉及众多部门及人员的参与,内容多,耗时长,项目组往往并不能正确提出系统集成相关需求。针对此类通道,笔者组织研发了“集成需求”服务,如图5所示。
该服务一是通过对系统集成工作的梳理,明确了“用户知道哪些”和“管理员需要哪些”,通过集成需求的向导式填报,将用户方和实施方进行了解耦。二是充分利用运维流程引擎[6]能力,将内部管理流程从线下搬到线上,工作效率得到有效提升。三是通过与自动化相关API的结合,将集成需求转换为对自动化API的驱动,变更耗时大幅降低,为应用快速投产起到了显著的促进作用。
运维服务建设通过组合各运维工具的基础能力,实际发挥除了“1+1>2”的效果,降低了运维工具的使用门槛,实现了服务化运维工具体系的建设目标。
4 总结
通过运维工具体系统一化与服务化的建设,改变了运维工具的建设模式,打通了运维工具的壁垒,盘活了运维工具的活力,充分发挥了运维工具的效能,为运维人员乃至总分行科技人员提供了良好的用户体验。后续将进一步围绕统一化、服务化的建设思想,推进生产与开发测试环境的运维服务能力统一,全面提升运维服务化的广度与深度,为传统运维向智能化运维夯实基础。
参考文献(References):
[1] 陈根.以配置管理为中心的运维工具体系建设研究[J].中国金融电脑,2021(4):75
[2] 腾讯.蓝鲸智云PaaS平台[EB/OL].https://github.com/tencent/bk-paas/,2021
[3] 戴炳荣,宋俊典,钱俊玲.云计算环境下海量分布式数据处理协同机制的研究[J].计算机应用与软件,2013,30(1):107
[4] 邵欢庆,康建初.企业服务总线的研究与应用[J].计算机工程,2007,33(2):220
[5] 刘慧敏.以ITIL为基础的IT服务管理应用研究[J].计算机技术与发展,2012,22(5):195
[6] 葛秀豪.基于SaaS模式的流程引擎和规则引擎服务模型研究[D].南京邮电大学硕士学位论文,2011