王宇杰 武宪杰 傅子涛
(1.中国电子科技集团公司第二十八研究所 江苏省南京市 210014)
(2.中国民用航空华北地区空中交通管理局 北京市 100621)
空管系统是一套事关民航安全运行的复杂信息系统。然而,面对多元化发展的航空运输需求,现有空管系统在系统架构、资源管理、数据利用、软件改造等方面还存在一定的不足,较难整合规模庞大、业务繁多的空管信息系统并构建高效运行的空管体系。
现有空管系统架构灵活拓展性较弱。当前的空管系统根据业务需求独立构建,随着航班、扇区的增加,系统数量逐渐增多,规模也日益庞大。当前空管系统在面对业务增长时,一般采用垂直建设,系统扩展工作量大,且拓展新型业务困难,运维成本高。由于系统间需要通过定制化信息接口进行交互,容易造成系统孤岛现象。
系统硬件资源利用有限且运维日趋复杂。传统空管系统的业务主要部署于物理实体机上,随着业务量的变化,资源利用率也随之变化。业务量少时服务器CPU、内存、存储、网络资源利用率较低,而系统业务繁忙时,容易出现CPU、内存占用率较高、I/O 负载大、网络消息拥堵等现象,硬件资源使用存在不均衡性。在现有方式下由于资源相对固定,扩展较为困难,已有投资的资源无法继续利用。
航班数据分散异构不利于统一认知和业务运行。当前各个系统相对独立,提供相应的业务数据处理功能,数据分散于各系统内部。面对跨区运行、统一管制的同一航班对象时,系统间需要进行信息交互,而不同系统对于同一对象数据的全面性、准确性、动态变化认知还存在一定差异,给统一认知和业务运行增加了困难。当前一些异构数据源,如AFTN 电报等,项目需考虑是否应当随同做变革,形成一套与未来架构相适应的数据源标准。
软件升级改造难以满足系统不间断运行要求。当前空管业务系统基础平台、业务软件和运行数据三者耦合性较强。业务软件版本需要进行完整编译、适应性测试、全量部署,软件升级过程繁琐,持续时间长。业务软件如需上线时,需要在适合的时间窗内离线升级,系统无法保持正常运行状态。
国际民航组织和欧美国家将云计算等技术作为下一代空管系统发展的重要助力。2018年民航空管局战略发展部提出了“中国民航空管现代化战略(CAAMS)”,利用先进技术为航空活动提供安全、效率、经济、绿色服务。本文结合空管系统发展情况,聚焦分析系统孤岛、数据孤岛、业务孤岛本质,结合空管典型业务,研究基于云计算的空管系统设计方法,支撑空管运行效率和协同运行能力的提升。
2006年,亚马逊推出了以云主机(EC2)和云存储(S3)为核心的云计算基础,标志着云计算作为一个商业化服务开始正式面向企业提供计算资源和存储资源的“租赁”[1]。
虚拟化技术的核心是对计算资源的抽象。亚马逊服务中最典型的应用是弹性计算服务,即通过虚拟化技术实现计算资源的随取随用,弹性伸缩,将计算资源像电力一样变为随时可得的一种基础设施[2]。现今,成熟的虚拟化技术已经可以将多种硬件资源全部进行虚拟化,包括CPU、内存、I/O 等各种设备的虚拟化[3]。
随着云计算发展步入第二个10年,容器、微服务、DevOps 等技术在不断推动着云计算的变革。云计算的应用已经深入到政府、金融、工业、交通、物流、医疗健康等传统行业[4]。
如今,云计算技术发展的现状和趋势存在以下几个特点:
(1)云原生技术快速发展,将重构IT 开发模式。
(2)IT 运维进入敏捷时代,智能化运维处于起步阶段。
(3)边缘计算与云计算协同助力物联网应用。
(4)云网融合加速网络结构深刻变革[5][6]。
针对传统数据服务架构面对海量数据时暴露的运营维护、迭代开发上的诸多难点,国内互联网公司在 2015年率先提出了数据中台的概念,并迅速获得大量互联网企业和信息系统提供商的广泛应用[7]。
与传统的后端数据库不同,数据中台的核心在于通过抽象、组件化能力,构建标准的数据体系,将数据抽象封装成服务,快速驱动和支撑前端应用和业务,从而降低成本、避免重复建设浪费资源[8]。
自数据中台的概念提出以来,各大互联网公司纷纷提出相应的中台战略并随之进行组织架构的调整。目前,华为、腾讯等行业龙头公司均已基本完成了数据中台架构的建设[9]。中国电科聚焦中台概念,提出加快信息基础设施建设,打造“物联、数联、众联”一体化信息支撑,整合通用数据,支撑数字化建设。预计将来,数据中台在城市管理、交通规划、能源电力等行业将会发挥愈加重要的作用[10][11]。
随着微服务的兴起,微服务正逐步替代企业中的面向服务的架构(SOA)应用,并成为主流互联网技术架构[12]。考虑到后期的数据增长所催生出的如敏捷交付、分布式部署、动态扩展等一系列需求,微服务的应用正是应对这类严峻考验的理想解决方案[13]。
目前,微服务发展的现状有以下几个特点:
(1)微服务被用来重构现有和遗留的应用程序,已逐步应用于企业的IT 转型;
(2)微服务开发简单,每个服务完成独立的功能;
(3)技术灵活,在实践中,常采用多技术/多框架的微服务解决问题;
(4)服务独立,每个服务都可以单独部署,一个服务出现问题不会导致整个系统瘫痪;
(5)独立按需扩展,以应对高并发与大流量;
(6)可用性高,当其中一个微服务出现问题时,能够及时切换,不影响业务的正常运行[14]。
在“工业4.0”、“中国制造2025”等政策的积极推进下,微服务正从互联网行业加速推广到工业、金融、物流等传统行业[15]。西门子、施耐德等工业企业通过微服务的应用提升数据资源利用率、解决信息孤岛问题,从“制造”迈向“智造”[16]。招商银行、民生银行等利用微服务解决服务治理的难题,实现服务复用,从而支撑数据层和基础设施层的敏捷开发[17]。
围绕空管体系的特征与能力,构建空管体系架构,支撑信息资源的汇聚、分析、共享,实现基于微服务的业务功能及应用。
整个体系架构包含基础设施层、平台和应用层三部分,如图1所示。
图1:基于云计算的空管系统架构图
基础设施层:包括存储管制、通导、气象等各类数据资源的物理设备以及用于虚拟化的硬件平台。数据存储包含了飞行、气象、监视等各类信息,为数据中台提供支撑。硬件平台通过虚拟化技术建立虚拟机或Docker,实现计算、I/O、网络等资源的统一管理,形成空管系统统一运行平台。
平台层:数据中台是平台层的核心功能,负责计算、存储、数据资源的统筹管理,是空管网络信息体系的“神经中枢”。通过建设数据中台实现“格式统一,全面共享”。基于统计分析、机器学习等技术构建主题数据、数据仓库,实现空管业务数据的分析、挖掘,为各类业务提供语义一致的高质量数据。
应用层:包含微服务及其支撑的各类空管应用。其中,微服务负责以服务的形式提供各类空管系统各类业务处理功能,包括空管系统高适用型微服务、空管系统基本适用型微服务、运行管理增值服务系统高适用型微服务、运行管理增值服务系统基本适用型微服务等。空管应用主要为空管自动化与运行管理增值服务系统。
安全管理体系主要针对新型云化架构,设计安全区域边界、安全通信网络、安全计算环境等三重防护机制。
运维管理体系主要针对新型云化架构,设计资源状态统一监控与资源统一管理,帮助运维人员准确掌握资源和云服务使用情况,满足日常运维和故障处理工作要求。
云架构部署有三种模式:公有云,私有云和混合云。
公有云是第三方公司通过互联网连接提供给用户的云,如AWS 亚马逊云,华为云等。公有云可节约大量硬件,削减运维成本。但是由于通过互联网连接,安全问题得不到保障。对于空管系统来说,安全问题带来的隐患可能导致严重的后果,因此,并不适合采用公有云。
私有云是企业搭建基础设施,只供内部使用的云。私有云安全性较高,适用于对安全性要求较高的空管行业。
第三种混合云架构,将私有云与公有云相结合,允许用户同时利用公有云和私有云的优势。空管核心系统可以在自己的私有云上运行,而非核心业务可以放在公有云上运行。但是混合云由于架构复杂度高,部署维护比较复杂,可能会增加系统管理员的运维压力。
因此,在业务部署时,应优先采用私有云,随后逐步过渡到混合云。
云计算分为基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)三层。
在IaaS 层,使用成熟商用产品去实现硬件资源等虚拟化,包括计算资源、存储资源、网络资源、提供云主机、虚拟机备份恢复、资源统一管理等功能。
在PaaS 层,使用容器编排平台,构建空管容器云平台。面向应用容器,由容器编排管理平台实现应用的部署、水平伸缩、自动恢复、版本在线升级与回滚等功能。
在SaaS 层,需要对现有可以改造的部分空管系统进行容器化改造,将现有雷达数据处理(RDP)等应用或系统打包成容器镜像,发布到镜像库中,通过策略管理实现在云平台上的迁移。
数据中台的目标是让各类空管数据持续、有效地用起来。通过数据中台提供的工具、方法和运行机制,把数据变为一种服务能力,让数据更方便地被业务所使用。
2.3.1 数据汇聚
数据汇聚是数据中台接入各类空管数据的入口。数据汇聚把各类综合航迹数据、飞行计划数据、气象数据、AFTN 电报数据采集到数据中台进行集中式存储,为后续的数据计算、数据资产管理等做准备。
2.3.2 数据计算
数据计算通过算法建模、数据加工等方式,快速把数据处理成对空管业务有价值的形式,提供给业务系统使用。数据计算模块主要面向开发人员、分析人员,提供离线、实时、算法开发工具,以及任务的管理、运维、监控、告警等一系列集成工具,提升数据的使用效率并为后续的空管业务分析提供数据质量保障。
2.3.3 数据资产管理
数据资产是空管数据中台建设、管理和使用的核心要素,各类空管数据通过数据库同步、文件同步、消息队列等方式汇聚到数据中台,在数据中台按照标准化建模的方式进行加工,形成空管数据资产体系。空管数据种类多、数量大且增长快,空管业务对数据的依赖程度也会越来越高,必须考虑数据的一致性和可复用性。空管数据资产按照统一数仓、主题数据、应用数据的标准统一建设。
2.3.4 数据服务
数据服务是通过数据中台的服务组件能力把主题数据变为一种服务能力,让数据能够方便地参与到业务中,激活整个数据中台。数据服务作为数据中台实现资产服务化的核心能力,是连接空管前台业务和后端数据的桥梁,通过服务接口的方式对数据进行封装和开放,快速、灵活地满足上层应用的需求,数据中台能够以提供数据服务的方式直接驱动空管业务。
2.3.5 数据存储管理
数据存储管理围绕空管数据的高效挖掘、应用需求,提供数据存储管理功能,为数据深度挖掘提供支撑。数据存储管理包括结构化数据管理、分布式文件系统、分布式数据库三个部分,针对不同应用场景满足数据存储管理需求。
2.4.1 服务拆分与集成
微服务架构将一个原本是独立的单体模块拆分成多个小型服务,这些小型服务都运行在各自的虚拟机或容器中,服务之间通过轻量级的通信协议进行协作。每一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务进行构建,并且每个服务都维护着自身的数据存储、业务开发、自动化测试案例以及独立部署机制。图2 为空管系统微服务化示意图。
图2:空管系统微服务化示例
2.4.2 微服务架构实现技术
微服务架构具有分布式架构的基本特征,网络通信、事件驱动、服务路由、负载均衡、配置管理等技术是实现微服务架构的基础。基于微服务架构的空管系统是一个运行在多台虚拟机上的分布式系统,每个服务实例都是一个进程,服务必须使用进程间通信机制进行交互。采用异步交换消息进行通信。使用消息传递具有很多优点:客户端与服务分离、消息缓冲、透明的进程间通信等。
应用验证分两个阶段,分别是实验仿真阶段和试点验证阶段。实验仿真阶段,在实验室仿真环境,搭建云平台,从资源虚拟化到资源按空管管制自动化等系统需求动态调度,再到基于策略的资源管理,并实现资源服务化管理。在数据方面,以模拟数据源的方式提供空管航迹数据、飞行计划报文等数据,从现有物理机的关系型数据库应用到数据上云并提供数据中台服务,验证数据及中台适用范围和应用对象,以及数据管理方式共存的方法。在应用业务方面,对空管自动化系统和运行安全系统进行微服务技术攻关与试验,首先根据微服务优缺点、空管业务实时处理、批量分析等不同特点以及国内外相关案例,对应用进行分类,确定微服务改造范围。并优先将逻辑较独立、较明确的非核心关键业务,例如飞行计划中期冲突探测模块进行微服务化改造,与系统内其他功能模块进行业务和信息交互,待技术成熟后,推广到诸如飞行数据处理等核心模块进行试验验证。同时,需统一设计、分析非微服务软件、微服务软件及架构之间共存和互联方法。
在试点验证阶段,主要侧重于实际数据的接入处理和实际业务场景下的应用。在试点现场,重点分析空管私有云架构、混合云架构以及与现有系统架构共存方法的验证,从而支撑已有空管业务与新型业务。在数据方面,先采用模拟数据与实际数据结合的方式,在试验环境不完备、时间限制等情况下,进行业务应用验证。时机成熟时,转为实际数据全支撑方式,从实际环境角度验证系统架构、技术、业务的可行性、可用性及系统功能、性能、可靠性等。试点现场按二、三级管制单位区分,为不影响值班空管系统运行,在区管(二级)从数据转发平台接入空管航迹数据、飞行计划等数据源,包括原始数据,同时从空管测试平台接入数据源,以验证不同数据环境下,验证空管RDP、飞行计划处理(FDP)等管制服务业务以及安全分析等业务的准确性和实施效果。在机场(三级)从空管测试平台,接入数据源,验证相关业务。设计不同典型场景,先系统内部环境下的态势处理等功能、性能分析验证,再不同系统间业务场景,例如管制移交、统一态势监视等,对基于云架构、数据中台、微服务的空管自动化系统、运行管理增值服务进行技术验证。
结合我国空管的实际情况,提出了基于云计算的空管系统设计方法。虚拟化、数据中台和微服务等关键技术能够有效地管理空管运行数据、提高空域容量、推进协同运行,形成适应未来需求的空管自动化设施建设新理念。新技术的定位和应用将使我国空管的运行和空域资源得到有效、充分、灵活的管理,加速空管系统数字化提升的进程,推动航空运行体系管理和协同理念的转变。