基于虚拟化架构的电力监控系统版本管控技术研究
孙毅 顾博川 侯艾君
生成PDF 清样下载 引用

复制成功

导出题录

参考文献( GB/T 7714-2015 ) 复制

孙毅 顾博川 侯艾君,. 基于虚拟化架构的电力监控系统版本管控技术研究[J]. 中国能源进展,20221. DOI:10.12721/ccn.2022.157001.
摘要: 随着系统运行专业对调度控制需求的不断提高,以及自动化技术的快速发展,电力监控系统软件的规模愈来愈庞大,功能日趋复杂,但目前对电力监控系统本体信息管控工作尚未有效开展,各现场电力监控系统软件版本各异、错综复杂,由此带来一系列问题。研究“电力监控系统本体信息管控与验证环境快速构建技术”,对有效管控电力监控系统的版本,规避由于功能升级、软件消缺,在手工维护程序更新环节出现差错带来的风险,提升系统的部署升级的工作效率,大幅降低时间和资金成本方面有重大意义。
关键词: 电力监控系统;版本管控;验证环境;快速构建
DOI:10.12721/ccn.2022.157001
基金资助:中国南方电网有限责任公司科技项目(GDKJXM20185561)资助

引言

随着电力系统运行专业领域对调度控制需求的不断提高,以及自动化技术的快速发展,电力监控系统软件的规模愈来愈庞大,功能日趋复杂,但目前对电力监控系统本体信息管控工作尚未有效开展,各现场电力监控系统软件版本各异、错综复杂,由此带来一系列问题:由于不同系统使用单位提出很多个性化需求,导致每个现场的软件版本都有差异,在主站系统程序更新(如功能升级、软件消缺)时,同样的程序更新操作在某些现场可以安全进行,但在另外的现场会导致系统故障,对电网调度控制造成极大的影响。

研究“电力监控系统的本体信息版本管控与验证环境快速构建技术”课题(以下简称“本课题”),对有效管控电力监控系统的版本,规避由于功能升级、软件消缺,在手工维护程序更新环节出现差错带来的风险,提升系统的部署升级的工作效率,大幅降低时间和资金成本方面有重大意义。

1 电力监控系统本体信息特征

我们对国内主流的电力监控系统的本体信息做了分析,对各个本体信息按特征做出了分类:对编译后的二进制可执行文件和库文件,我们将其归为程序文件;对电力监控系统软件运行工况的设定文件,包括但不限于与基础软件的适配参数、软件集群方式、网络配置参数等,一般为文本文件或XML文件,不同现场可能不一样,这类文件我们通称为配置文件;数据库、图形、模型(拓扑模型和采集模型)等,可按照标准格式导出,不同现场有差别,这类文件我们通称为基础数据文件;运行日志(.log),采样数据、事件告警等历史数据,此类文件与现场运行情况有关,我们通称为运行数据文件。

对上述4类本体信息进行特征分析如下:

0.png

2 本体信息版本管控的流程

根据实际业务场景,针对电力监控系统受控本体信息版本分为4种状态(基线准入、待验证、已验证、已部署现场)。版本的推荐管控过程如下:

1.png

①厂家提供的电力监控系统软件文件(目录或压缩包);

②利用平台管理界面导入软件版本库中,创建本体基线版本(准入版本);

③拉取本体基线版本,制作发行配置版;

④发行配置版入库到软件版本库(待验证);

⑤拉取待验证发行配置版本并在本体验证环境中验证(已验证);

⑥导出现场版本并对版本验证。

在规范化的版本号编制的基础上,我们还须优化各个职能部门的协作流程来进一步改善现有问题,我们建议开发相关的需求管控、版本管控、测试环境构建、版本验证为主线的一体化平台。具体协作流程如下:

2.png

电力公司各级运行维护部门提出需求,并在电力公司各级专业管理部门进行需求汇总,然后对需求进行审核,进一步将需求录入平台系统中(需求入库);

各系统制造厂家实现了需求后,打包全量提交版本文件,版本管理员在平台系统中上传版本文件,关联本次版本已实施完成的需求,版本入库后将形成本体信息的基线版本,系统对入库的本体基线版本自动使用文件指纹进行完整性校验,避免后续文件损坏和篡改;

版本管理员基于本体基线版本,设置部署现场关联关系并修改配置文件适应部署现场,然后创建发行配置版本入库;

发行配置版本入库后,经过电力公司各级专业管理部门的组织评测,由检测部门负责从软件版本库中拉取待验证的发行配置版本部署到测试环境,运行自动化验证,需要时结合UI体验的手工测试,对通过验证的版本标记为“已验证”;

当需要部署到生产环境时,须先填写工作申请单,经过电力公司各级专业管理部门审批后,版本管理员抽取标记为“已验证”的版本,交由系统制造厂家人员部署安装,最后经过电力公司各级运行维护部门的功能验证后,才最终完成发布到生产环境的流程。

3 验证环境快速构建的方法

为使得基础架构满足电力监控系统定点物理驻扎、物理分区驻扎等要求,可支持应用于电力监控系统、配网自动化主站系统等关联运行环境所需的基础架构,我们综合考虑采用虚拟化技术实现。选用虚拟化平台可以满足计算资源间强隔离的要求,能确保虚拟系统故障时不发展、不蔓延至其他虚拟系统,确保整个电力监控系统验证环境的安全性,确保系统最大适用面。

3.1 虚拟化平台须具备的特性

虚拟化平台有许多种,本课题对虚拟化平台提出了本体管控所需要的更加灵活的特性。需要具有弹性特性以及底层特性,可供测试环境构建时使用。这样才能最大化减少人工操作带来的不确定性及耗时,实现验证环境快速构建的目标。

3.2 虚拟化平台应用程序接口

为支撑本体信息版本管控平台对主流电力监控系统的快速部署和测试验证的支持,需要用到一组虚拟化平台对外公开的应用程序接口(API)。下面列出了必须具备的接口清单:

① API管控对象的广泛性,能通过API管控各资源要素② API支持针对其所提供的各种资源的丰富操作。③ API设计要支持REST软件系统的架构风格。④ API支持返回Json数据格式。

3.2 接口交互的过程

我们推荐将各厂家的电力监控系统用虚拟机先做好基本运行环境配置,然后转换为一组节点模板;接下来,通过API接口操控虚拟化平台,自动选用节点模板创建出一组节点实例,并抽取和部署最新版本到节点实例中,最后运行它,以此快速提供一个特定版本的干净测试环境。

典型的验证环境快速构建交互过程如下:

3.png

4 平台参考技术实现

要管控种类各异的电力监控系统的大量本体信息,同时实现验证环境快速构建的目标,有必要建立一个平台来支撑。构建稳定可靠平台的实现细节较为复杂,有大量难题需要攻克,下面仅针对构建平台过程中我们使用到的技术实现策略做出简要的描述:

4.1 用例分析

我们使用UML用例图来表示典型的交互场景如下:

4.png

4.2 架构层次

平台总体架构可以划分为前端和后端两部分,如下图:

5.png

前端可使用成熟的Web框架进行开发,推荐使用SPA(Single Page Application)架构风格,最大化减少视图传输开销,提供高效的操作体验。界面上划分的功能模块主要有需求管控、版本管控、测试环境构建、任务管理、基础资料管理、系统管理等。

后端业务层以工业标准化语言为主的混合开发模式,采用主流的领域建模的N层架构模式,对前端服务层则使用经过裁剪的MVC模式(无View),领域层则按子系统划分为需求管控中心(Requirement Control Center,RCC)、版本管控中心(Version Control Center,VCC),测试环境构建中心(Testing Environment Build Center,TEBC)、基础数据管理(DATA)、大型文件存储引擎(Large File Storage Engine,LFSE)、虚拟化平台控制引擎(Visualization Environment Control Engine,VECE)。同时提供了安全和日志等基础设施模块。本设计支持面向服务的云架构部署方式,各个模块确保高内聚,低耦合。

在持久化层,我们主张采用业内成熟的数据库,存储版本元数据(Version Metadata)(目录树、文件指纹(MD5)、完整性描述清单等),对版本文件(Version File)采用高效的二进制数据差异算法进行存取。

4.2 部署架构

本体信息版本的验证将提供一套软硬件基础环境,实现电力监控系统软件的快速部署,考虑到验证平台的适用性需求,我们采用虚拟化技术作为底层支撑,待验证的电力监控系统软件都在虚拟机中运行。

本体信息版本验证的总体部署架构示意如下图所示:

孙毅 顾博川 侯艾君

5 实施效果评估

本研究的成果物已经在实验室环境做了初步实验,综合评定达到如下效果:

①规范和统一了版本管理流程。各个主流的电力监控系统的本体信息版本得以规范管理;所有的部署均需实施基线版本入库,然后配置为面向现场的发行配置版本,再经过验证;所有的现场部署的本体信息,都必须抽取自版本库中经过测试并标记为“已验证”的版本。

②有利于了解系统全局版本部署情况。由于使用系统统一管理版本,以前很难了解全局各个站点的版本部署情况(比如部署时间、实施人、实际版本等),现在可以在一个系统可以方便地查到。

③有利于了解系统版本间的差异。由于支持在不同版本之间对比文件差异,并查阅版本入库说明和关联需求项,每个版本的新特性和所修复的问题能比较清晰地呈现给用户。

④提升系统版本验证的效率。由于发行配置版本设置好后,用户可以点击按钮一键构建出对应系统的一系列实例组,从而大幅减少人工操作的重复劳动和出错概率,缩短了测试反馈环路,提升工作效率。

⑤有利于系统缺陷的追溯。由于建立了统一标准的基线版本库,提供了签入、签出自动校验和文件防止篡改的特性,当生产环境遇到问题时,能很容易追溯基线版本,了解已部署的全部现场情况,为后续全面、快速地修复问题提供有力保障。

6 结论

通过对电力监控系统的本体信息版本管控和验证环境快速构建技术的研究,较好地梳理了主流电力监控系统本体信息的特征和版本管控的流程,构建了一套参考技术实现,在实验室环境下实施后,达到了预期的效果。这为后续将相关技术应用于生产环境打下了坚实基础。

参考文献

[1]Jon Loeliger, Matthew McCullough. Version Control with Git: Powerful tools and techniques for collaborative software development[M].US: O'Reilly Media, 2012

[2]Ian Robinson, Jim Webber, Savas Parastatidis. REST in Practice: Hypermedia and Systems Architecture[M].US: O'Reilly Media, 2010

[3]Lorin Hochstein, René Moser. Ansible: Up and Running: Automating Configuration Management and Deployment the Easy Way[M].US: O'Reilly Media, 2017