国家管网集团科学技术研究总院分公司 徐杰 高海康 吴志强 张正雄 王玉霞
信息化系统建设的业务需求越来越多,急需高效快捷的开发模式替代传统的低效开发模式,本文从数字化项目过程管理、开发测试资源管理、代码资产管理、DevOps 敏捷开发管理四个方面开展应用技术研究,探索建设数字化试验云平台的技术思路。云平台由计算服务、存储服务、网络服务、监控告警、平台管理和运维管理组成,以实现软硬件资源的高效利用和精准服务为目标,通过对IT 资源层的云化部署,实现高性能、高可靠、可扩展并服务于业务运行的信息基础设施云平台。
目前,大部分数字化项目不具备项目全过程管理及源代码的自主管控能力,数字化项目在大数据、人工智能方面应用需要大量的计算资源提供基础支撑,快速搭建数字化项目试验环境,及时响应数字化项目研发需求。如何在遵循统一基础设施建设和运维架构下,实现对数字化项目的自主可控和高效协同是目前面临的难题[1-3]。研究数字化试验云平台,完整覆盖数字化项目研发管理核心流程,实现数字化项目全生命周期管理的可视化、自动化,提供统一的计算、网络、存储等IT 基础设施资源,实现平台资源和管理服务能力向云计算服务模式转型升级,为数字化项目研发提供统一的基础设施资源与技术架构,搭建统一的开发测试环境,实现数字化项目研发过程管控与代码资产统一管理,打造数字化基础设施底座。
云网边端一体化是作为数字化云平台建设的核心架构。“云”指的是云平台,包括私有云或公有云,为核心数字化平台;“网”指的是实现各个组件相互连接的网络环境,网既是连接企业中心云和边缘云的广域网络,也是联通生产业务现场各种智能终端与边缘云节点的网络;“边”指的是边缘云平台,边缘云平台主要部署和承载生产端的物联网业务平台,同时提供数据计算和存储服务支持;“端”指的是用于生产业务场景的各类包含智能传感器的终端或无人机等,它是实际采集一线数据的核心组件。
数字化试验云平台可以概括为“一网、一云、一平台”。“一网”指为云平台提供连接和数据交换的网络环境;“一云”指架构统一、技术先进、功能完备的分布式云平台,支撑业务生产;“一平台”指的是在“一云”基础上构建的数字化业务平台,以云平台的IaaS 层提供资源,以PaaS 层为数字化业务提供功能组件支持,实现快速搭建和监控,服务业务场景。
如图1 所示为数字化试验云平台整体架构图,云平台在底层服务器硬件的基础上将IT 资源虚拟化,为业务系统提供近端的计算、存储、网络、安全和灾备服务支持,是实现AI、大数据分析等业务需求快速响应的基础。对于云平台而言,依靠网络架构实现稳定连接,实现数据快速收集使用。通过PaaS 容器平台提供数据库中间件、大数据、容器、AI 等业务系统服务组件,可以快速搭建信息化系统,也可以避免数据库、大数据、AI 等服务重复建设,提升开发和业务响应敏捷性、运维便利性。
图1 数字化试验云平台整体架构Fig.1 Overall architecture of digital test cloud platform
数字化试验工程云平台在保证稳定性的情况下完整实现业务系统功能,在规范业务及数据资源的同时,满足系统动态扩展要求,云平台具有良好的扩展性、灵活性、资源高可用性。在安全上平台软硬件系统在满足业务需求的基础上,以国家信息技术平台相关安全标准为指导,采用全分布式架构、虚拟化、分布式存储、云安全、应用迁移等技术。
数字化试验工程云平台总体架构包括物理设备层、中心云平台层、云平台统一服务门户层三部分。物理设备层为支撑云平台的六大系统,包括机房、网络、安全等,依托标准合规的数据中心,确保环境稳定可靠;中心云平台层是云平台核心部分,涵盖了硬件基础设施层、IaaS 层和PaaS 层功能,中心节点在云平台的整体架构下,实现业务、管理数据和资源的全面协同;云平台统一服务门户层面向用户提供门户,平台通过统一门户纳管现有虚拟平台,实现异构资源按需发布和获取、管理流程自定义化。云平台在硬件设备兼容性、扩展性等方面应具备灵活性,同一个平台内可以提供不同类型的计算(虚拟机、物理机)、存储(结构化、非结构化)和网络等服务,满足不同业务场景需求。集群物理部署拓扑示意图如图2 所示。
图2 数字化试验云平台物理部署拓扑示意图Fig.2 Physical deployment topology diagram of digital test cloud platform
数字化试验容器平台中的主集群与成员集群都是基于Kubernetes 的容器集群,如图3 所示。
图3 数字化试验云平台Fig.3 Digital test cloud platform
微服务架构会使用软件库,但是用来实现软件组件化的主要方式是将软件拆分成服务,微服务采用不同的分割方法,划分成围绕业务能力组织的服务[4]。目前,流行的微服务框架为Spring Cloud,但也存在Dubbo 等框架开发的微服务应用,以及下一代的Service Mesh 框架,Istio也会慢慢成为容器平台上构建微服务的首选。容器平台对三种微服务的架构进行支持:Spring Cloud、Dubbo、Istio。除Istio 是容器平台自身原生提供支持外,Spring Cloud 以及Dubbo 框架都通过PaaS 的形式为每个项目提供单独的相关组件安装。
容器平台采用Istio 作为微服务治理的底层框架。Istio 结合Kubernetes 内部的服务发现机制,来进行微服务的治理,从而提供完整的微服务方案而无须侵入代码。Istio 采用Envoy 作为网关来提供Ingress 服务,应用可通过编排来注册自己的API 到Ingress 上从而提供外部访问的能力。通过容器平台本身的ConfigMap 和Secret能够完成在基础设施层的配置管理。最外层利用容器平台的Ingress 配合API 网关通过Istio 的注册完成服务的API 向Ingress 的注册,再配置API 网关和Ingress 的联动完成服务向API 网关的发布和统一管理。
DevOps 通过工具的整合以及提供标准的规范建立开发运维体系,DevOps 首先通过自动化工具形成标准的自动化流程,并在流程之上形成统一标准。通过自动化工具,建立的研发运维规范体系主要围绕着四个重点展开:代码与发布版本的一致性、配置从代码中剥离、建立标准的构建与发布体系、构建依赖库。代码到构建物的构建通过CI 流水线完成自动化的构建,构建物的发布通过CD 流水线完成自动化的发布,减少人工干预提高效率以及保证正确性。通过标准的架构来规范应用的运行环境以及相关依赖,实现可视化CI/CD 流水线,从仓库、代码编译、镜像制作、镜像安全、推送到仓库、应用版本、到定时构建的端到端流水线设置,整体提升开发测试等工作效率。
基于本文关键技术包括IT 基础设施云平台架构技术、DevOps 敏捷开发运维技术、分布式存储、软件定义网络及容灾备份等技术,开发完成数字化试验容器云平台,在业务上实现IT 算力与业务进一步结合,通过云技术将资源进行整合,推动了信息系统整合程度和资源利用效率,有效减少了重复建设、软硬件系统采购和运维成本,也可以使闲置IT 资源服务于管理和生产,从而有效的赋能业务发展。
本文通过研究具有高可扩展性的数字化试验云平台,将计算、存储、网络资源形成服务能力,提供高效可靠的计算、存储服务和灵活的网络架构能力,保证系统高可用、高可靠、高安全性,降低系统运维成本,解决系统设备老化、性能低下、复杂度高、无法扩展等问题。通过数字化试验云平台的应用研究,可实现数字化项目全周期、全过程精细管理,提升项目质量与基础资源使用率,降低数字化投入成本,有利于数字化团队协作,有效提升团队效率,支撑业务数字化转型。
引用
[1] 赵海洋,时延鹏.基于ITIL与物联网的开放型IT运维云服务平台的研究[J].现代信息科技,2022,6(1):160-163.
[2] 马军,滑维鑫.分布式云平台架构及管理技术[J].数字通信世界,2018(2):183+186.
[3] 万涵.智能化运维管理平台的规划设计探讨[J].通讯世界,2019,26(6):131-133.
[4] 薛皓辰,柳先辉.基于微服务架构的制造技术资源服务平台架构研究[J].科技管理研究,2021,41(14):208-212.