基于模型驱动的算力网络编排方案

文摘   科技   2024-04-08 12:02   北京  


编者荐语:



随着智能化、自动化等技术的发展,越来越多的业务系统开始实现自我整合和自我调用,从而把人从繁琐、重复的劳动中解救出来。编排作为其中不可缺少的关键环节,在人工智能代理、资源服务等领域都被广泛提及。本文聚焦于算力网络中的算网编排,探讨如何实现算网资源的融合编排以及如何填补不同领域的技术和设计理念差异等问题,以期为关注该议题的企业和学者提供参考。


基于模型驱动的算力网络编排方案

亚信科技(中国)有限公司

摘要:随着业务类型的日益丰富和多样化,低延时、高带宽、数据私密性、高可靠性等需求逐渐凸显,这引发了算力网络的研究热潮。算力编排作为算网大脑中的核心组成部件,如何实现算网资源的融合编排、如何填补不同领域的技术和设计理念差异等已成为当下学者们热议和重点关注的问题。本文基于当前的编排技术相关标准和设计方案,提出了一种模型驱动的算网编排实现方案,重点阐述了算网编排的模型和功能设计方案,同时,结合算力网络的产业态势,提出了算网编排的协同架构。

引言

伴随着经济范式的革新,算力发展成为实现中国科技强国的内在发展需求。为此,国家在2018年明确提出“新型基础设施建设”之后,相继出台了“东数西算工程”等一系列助力算力基础设施建设的政策和文件,为算力高质量、可持续发展提供政策性保障。2019年,由国内运营商首次提出的算力网络,因其倡导的算网一体化调度、多级算力协同等理念,成为算力高质量发展的保障性备选技术,从而得到了业内的广泛关注。2021年年底,中国移动宣布算力网络为公司级战略,此后迅速引爆了产业界热潮,协会、标准、产品等全面跟进。


为了践行算网理念,实现融合资源调度和优化,编排技术是算网中的关键技术之一。但是,编排一词历来存在诸多的争论,曾经在SOAIT领域引来了众位大咖的讨论。因此,在算力网络的落地工程实施时,需要从编排的目标是什么出发,逐步拆解算网编排要解决的关键问题、需具备功能清单,进而给出相应的设计方案、部署架构。本文从学术、标准、开源等组织中寻找启发,并形成面向算力网络的设计参考方案。


全文的组织结构如下:第二部分介绍了与算网相关的算力、网络领域的编排技术和最新进展,第三部分结合算网特征提出了算网编排的研究框架,第四部分从模型、功能和架构的角度分别解构了算网编排的参考实现。


相关工作

编排一词近来频繁地出现在雾计算、云计算、网络虚拟化等相关领域,其定义、实现的目标场景都有较大的差异。文献[8]将编排定义为在给定的实体元素集合中,选择合适的实体节点,并基于设定好的依赖关系图,执行应用程序,实现相应的功能。这种编排的涵义常见于面向服务的体系结构(SOA)和Web服务应用中,关注不同实体/节点之间的逻辑关系。文献[9]认为“编排是分布式系统中的一个关键概念,根据用户的商业利益诉求寻求应用部署的方案相似地,文献[10]编排定义为管理并协调底层基础设施以便为应用程序提供服务的过程文献[9][10]强调的是适配应用程序的资源动态、可扩展的需求。


算力网络构建于融合的算力和网络基础设施之上。因此,本文拟分别研究ITCT领域中的编排技术,从而为算网编排的实现提供参考。

(一) 容器编排


作为当前主流的算力供给范式,云计算产业大规模采用Kubernetes技术栈,构建当下云算力编排的解决方案。


在原生的Kuebernetes中,编排涉及了三个层次[1]:(1)资源编排:负责资源的分配,如scheduler根据pod的不同配置方式,选择合适的节点运行pod;节点选择方式包括了自动调度、定向调度、亲和力调度、容忍调度等方式来;(2)工作负载编排:以pod为载体,根据pod的类型(Deployment, StatefulSet, DaemonSet, CronJob, Job),维护工作负载的自动化伸缩和弹性升级;(3)服务编排:以service为操作对象,通过服务类型(ClusterIPNodePortLoadBalancerExternalName)定义其可见范围,并维护服务的高可用性等。


上述的方案中,提供了从资源、工作负载、服务的不同层次的抽象,打穿了业务到资源的映射过程。对于一个大型的应用而言,往往需要组合大量的、来自于不同平台的服务,而且服务之间的依赖关系需要用户自己解决,缺乏统一的依赖管理机制。为此,各大云服务商开始考虑应用编排服务(Application Orchestration Service,简称AOS)。目前,主流的云商基于Kubernetes的体系已经开发了应用编排的工具,实现了自有云平台上的应用编排,如AWSCloudformation[2]、阿里云的Aliyun-ROS[3]等。


(二) 网络服务编排


为了提升网络服务的灵活性和效率,SDNNFV的技术被引入进通信领域,驱动形成了以软件为中心的网络服务范式。在这一范式中,需要对端到端的服务进行建模,并对涉及的物理/虚拟的基础设施资源进行抽象,并实施自动化的控制和管理。针对这一软件化的功能,[4]将其定义为网络服务编排(NSO, Network Service Orchestration)。网络服务编排主要包含SDN中的编排和NFV中的编排。

SDN架构中,基于集中的网络设备管理平台,编排器对业务组件、业务至网络的映射、网络组件等关键元素和环节进行了抽象,实现虚拟租户网络、应用层流量优化、意图驱动网络等网络服务的自动化交付和管理运维。开放网络基金会[5]ONFOpen Network Foundation指出,SDN的编排功能包含两方面:服务拆分以及拆分后的跨域部署。

NFV架构体系中,编排相关的研究及进展主要依托于标准组织[6]和开源项目[7]进行。在模型抽象方面,NFV定义了两类模型:VNFVNFVirtual Network Function)和NSNSNetwork Service)。其中VNF是传统物理网络设备(如路由器、防火墙等)的虚拟化实现,如路由、转发、防火墙、负载均衡等。网络服务(Network ServiceNS)由一组VNF实例组成的逻辑网络功能链或网络功能图,它们协同工作以实现特定的网络服务,如MMEHSSSGWPGWPCRFCG组成的EPC为了实现VNFNS等的全生命周期管理以及相关的资源映射,ETSI基于TOSCA标准定义VNFNS的信息模型,从而实现了一种基于模板的编排方式。

学术上对于“编排”的定义差异在工程实现上同样存在。从上述两节的描述中,当前的ITCT侧的编排差异主要体现在两方面。首先,对对象的抽象定义方面,Kubernetes通过对资源、工作负载和服务的定义和建模,聚焦于实现上层应用对资源的声明式调用;网络编排侧重的则是对网络功能、网络服务的定义和模型设计,并以模型驱动的方式实现服务的全生命周期管理。其次,在资源的管理方面,与Kubernetes中分层解耦的声明式方式不同, NFV采用的是命令式的方式,需要编排具备直插到底的资源管理能力。

算网中的编排涉及对算力资源、网络资源的融合编排。因此,算网编排可择采众长,在应用编排上参考NFV的设计理念,在资源编排上复用kubernetes开源体系能力。本文将在后续的章节中对此进行详述。

算网编排技术的问题定义

中国移动在2021年发布的白皮书[11]中,给出了算网编排的定义,试图给出统一的概念。本文将采纳此定义:针对多样化、定制化的算网融合服务需求,一体化编排算网中的原子能力,设计产品服务模型,并以模板的形式固化所需的资源、服务、策略及配置。随着算力网络产业链的跟进和深入讨论,泛在算力、多策略调度、异构计算、跨域协同等也引入了这一领域。


为此,面向算力网络场景,结合算网编排的定义,本文将着重考虑以下特性:(1)被编排对象的多样性:包含算力资源、原子能力服务等,并且相互之间还会有嵌套关系;(2)对多管理域的支持:管理域的大小影响编排对象、对象状态等的可见性,同时带来跨域编排的协同问题。在算网中,一方面资源来自于多方供给,不同供应商开放的管控权限存在较大差异;另一方面,CTIT域编排技术方案的差异也带来了跨域编排的需求。


因此,本文认为算网编排要解决的问题如图 1所示。在南向上,算网编排基于算网感知能力,实现对算网要素的统一抽象和管理;东西向上,在智能引擎、分域的管控和执行单元等的配合下,完成对底层要素的全生命周期管理和控制;北向上,面向最终用户,基于编排能力,实现算网产品创新。


1:算网编排与算力网络


当前行业内,常常将算网编排、意图识别和算网资源调度混在一起。图 2是一个完整的算网编排的流程。业务需求解构需要完成业务需求至资源需求的转译,属于意图识别的范畴,目前可用自然语言理解或者脚本配置的方式完成;策略匹配完成业务与设定好的资源选择方式(成本优先、体验优先、效能优先等)的匹配;方案选择模块基于选择好的策略,完成资源的动态选择;资源编排负责执行方案选择模块的结果,包括服务的全生命周期管理、资源弹性扩缩容等。由于意图识别、智能化资源选择属于可外置的独立模块,本文不对业务需求解构、策略以及方案选择模块做展开,将主要讨论编排端到端流程的实现方案。

图2:算网编排流程


在随后的章节中,参考文献[12]的方法论,本文将从以下方面给出算网编排技术的参考实现方案:


模型:这一板块将从算网编排的对象出发,梳理算网编排所需的基础模型,旨在形成驱动算网自动化执行的信息模型底座。 


功能:这一板块将重点回答“编排执行需要哪些功能、能够执行哪些动作?”这一问题,旨在对编排过程进行拆解,并实现自动化的编排进程推进。


架构:这一板块将基于算力网络的多域特性,探讨编排的多域协同方案。


算网编排技术的参考实现方案


(一) 模型


围绕算网编排对象的抽象描述、面向特定目标的流程自动化等需求,算网模型旨在定义一套统一的信息模型底座,为编排执行提供支持。


本文基于最小必要的原则,梳理出算网场景下需要模型化的元素,如图 2所示。


图3:算网模型架构


•  实体:可供算网调用的、不可分的最小单元,包括了资源类和镜像类。资源类包含虚拟机、容器VPC等;该实体对应的属性包含资源类型、CPU数、内存大小、带宽大小等。镜像类是可以独立部署、独立执行某项功能的模块单元,其经过封装、符合开放接口规范。该实体对应的属性包含镜像版本、镜像文件、部署环境要求等。


•  组件:面向特定的目标、依据约定的规则组合而成的一系列实体、组件的集合。这一集合将模板描述的所有实体作为一个整体进行创建、删除、更新和查询等。模板描述文件中需包含实体描述文件、实体API描述文件、流程描述文件、策略描述文件等。


•  流程:采用DAG结构定义,展示对实体、组件的相关属性进行控制和执行动作。描述文件中需包含所属的组件、流程描述、DAG、运行时配置等。


•  项目:以用户为中心,面向特定目标,提供一项独特产品、服务、成果的算网方案。模板描述文件包括项目发起方、项目类型、实体需求策略等。


•  作业:一个流程通过配置运行参数后的运行实例。模型描述文件中需包含作业id、作业状态、作业运行参数、作业执行策略等。


  任务:组件运行实例的载体,每个运行实例通过任务来管理。描述文件中需包含任务状态、任务元数据信息、优先级等。


基于上述定义的六类模板,结合编排中的业务解析、流程解析、作业调度等功能模块,实现模板驱动的编排自动化,如 4所示。


图4模板驱动的自动化流程

(二) 功能


从功能定义的角度,编排器主要包含了实体、服务的编排和生命周期管理,并优化服务性能和资源效能。基于上文定义的算网信息模型,编排器的功能架构如 5所示。本文并不关注于编排器的全量功能,而是就编排这一核心诉求,进行功能拆解。


图5编排器的主要功能


•  访问控制: 1所示的编排整体框架中,北向上,编排器需要承接客户的需求,并且利用编排器中的功能逻辑,为用户的需求匹配一个合适的方案/能力组合。在这个过程中,编排器需要首先验证申请方的权限,对申请方是否被授权来使用组合方案中的能力、是否允许使用某些数据资源等进行审核。


•  服务管理:基于用户的业务请求,服务管理提供该请求以及响应方案的全生命周期管理。服务的构建基础是底层不可再分的资源和原子能力,以及这些元素相互之间的组织逻辑。在算网的环境中,用户的需求差异性巨大,并且随着AI模型、安全服务、数据资源等能力的上架,需求的响应方案也会呈现较大的差异。为了实现这种动态、复杂环境中的自动化执行能力,业内普遍采用模型驱动的方式。在服务注册伊始,设计服务模板,声明出此服务的拆分逻辑、状态变更动作序列、管理逻辑等。在随后的运行态中,按照模板的约束驱动自动化的管理动作。因此,服务管理整体分为了设计态和运行态。在设计态中,设计管理模块包含了编排中的流程模板、项目模板、策略模板等的设计和管理功能。在运行态下,通过业务解析、流程编排、作业编排、生命周期管理模块基于设计态下的模板完成业务需求到最终方案的映射。


•  实体管理:资源编排是当下编排相关主题的系统中讨论得最多的功能[12],重点关注底层基础设施资源的全生命周期管理,如虚拟机、容器、裸机、网络等。但是,算网编排的对象包含了这些资源,同时也包含了以镜像方式或者接口方式提供的能力类资源。为此,本文这部分的管理功能定义为实体管理。注册与发现关注于新申请加入算网体系的实体。这一过程有主动申请、被动发现这两种方式,取决于实际项目的需求和设计。目录管理负责对被批准加入的算网实体的管理,包含了实体模型、实体开放接口管理等能力。供应管理、调度管理、优化管理则聚焦于实体如何暴露给上层服务管理模块、实体以何种方式选择合适的供应商和运行节点、以及全生命周期中的性能优化、资源效能优化。


•  监控:监控是贯穿于服务、实体的全生命周期中的模块,提供服务保障、性能监控等能力支持。


(三) 架构


算力网络提出伊始,关于“算调网”、“网调算”的讨论便不绝于耳。从当前基础设施的供给结构来看,两种方式将兼而有之。因此, 1中以运营商为主体的算网编排能力,不仅需要具备服务上层应用场景的能力,同时需要考虑与其他领域编排器(如云编排器)的协同能力,以满足算调网的场景需求。


基于管理权责可达、资源可见度、生态协同等方面的特性,本文提出了 6所示的编排协同架构。


图6编排器的协同架构


从运营商管理域内的权责可达性来看协同的需求。算力网络声明提供算、网资源融合的调度和服务交付方式,但是,当前算管和网管仍然是两套独立的体系。算管围绕K8S构建编排技术栈,并采用声明式的方式调度底层资源。网管则延续分域、分专业管理的模式,搭建OSS支撑体系。为此,在运营商自有的管理域内部,算网编排无法直接触及底层的网络、算力资源,需要通过存量的SDNONFVO、算力编排等系统或平台,来实现端到端流程拉通。


从运营商管理域内的资源可见度来看协同的需求。当前,在运营商体系内,算力和网络资源的规划实现了一定程度的集中和统一,但是建设、运营和维护由多个部门、分子公司负责,并且这种情形将持续一定的时间。为此,在基础设施资源可见度有限的情况下,为保障算力网络业务的运营,省/子公司需要保留完整的算网编排能力,完成省内业务的闭环,同时与总部的一级算网编排协同,完成跨省的业务闭环。


从生态合作的角度看编排的协同需求。算力网络构建的是一个泛算的生态,不同的算力供给方通过多种方式将能力并入算网。在这一过程中,算力供给方开放给算网的权限因并网的方式不同而呈现出较大差异。因而,跨域的编排系统需要针对资源的归属方、并网的方式、协同的对象类型等制定不同的访问控制和授权等级。对于实体对象,协同的信息包含了实体的管理类信息、明确针对实体可执行的控制和管理动作等。一种可行的方式是,建立两级的协同机制,将供给方的身份认证和并网对象的授权进行分离。不同管理域的编排系统优先建立联通和身份认证。之后,针对并网的对象,如实体、组件、项目等,建立分级的授权关系,以实现基于协同对象的授权管理。


总结与展望

算网编排作为算力网络中的核心关键技术,直接影响着用户在算力网络中的友好性、可用性等方面的体验。但是,在工程上,如何去设计和实现编排平台?产业界在积极地寻求解决之道。在CTIT的视角下,目前业内给出了不同的解决方案,并且各自的设计理念也存在较大差异。本文基于当前的编排技术相关标准和设计方案,提出了一种模型驱动的算网编排实现方案,重点从编排的模型、功能和架构的层面,讨论了算网编排的实现和部署方案。


在功能上,重点做好以下三方面的设计:


•  编排元素的模型化设计。算力网络中的编排对象包括了资源、服务、产品等静态要素,也包含了流程、作业、任务等动态要素;为了在异构的算力环境中,实现互联互通,需要构建统一的编排元素管理模型,以实现多参与方之间的管理对齐。

•  多方资源的访问控制协同策略。在泛在算力的供给态势下,各家供应商之间的平台是异构化的,需要制定统一的协同策略,保障业务流程在各家间的无缝对接。协同的内容包括了管理层的授权鉴权、状态维系、策略协同以及数据面的数据协同等。

•  服务的自动化闭环管理工作机制。包括了编排元素的闭环自动化策略、流程的自动化出发机制、系统FCAPS的实时分析和保障机制等。

参考资料

[1]Zhiheng Zhong, Minxian Xu, Maria Alejandra Rodriguez, Chengzhong Xu, Rajkumar Buyya. Machine Learning-based Orchestration of Containers: A Taxonomy and Future Directions. ACM Computing Surveys, 2022, vol54(10), article 217, 35 pages.
[2]AWS cloudformation. https://aws.amazon.com/cn/cloudformation/
[3]阿里云资源编排ROS. https://www.aliyun.com/product/ros/
[4]Nathan F.Saraiva de Sousa, Danny A. Lachos Perez, Raphael V. Rosa, Mateus A.S. Santos and Christian Esteve Rothenberg, Network Service Orchestration: A Survey. Computer Communications, vol142(2019), p69~94.
[5]Open Network Foundation. Framework and Architecture for the Application of SDN Carrier Networks. Technical Report, 2016.
[6]ETSI Industry Specification Group NFV. Network Function Virtualization (NFV); Management and Orchestration; Report on Architectural Options. 2014.
[7]金镝,赵鹏,王成利. NFV网络编排器发展现状与关键技术研究. 信息通信技术与政策,2020年第3期.
[8]Phu Nguyen, Nicolas Ferry, Gencer Erdogan, Hui Song, Stephane Lavirotte, Jean-Yves Tigli, and Arnor Solberg. Advances in deployment and orchestration approaches for IoT-a systematic review. ICIOT 2019, P53-60.
[9] Rodrigo Roman, Javier Lopez, and Masahiro Mambo. Mobile edge computing, fog et al. :A survey and analysis of security threats and challenges. Future Generation Computer Systems 78(2018),680-698.
[10]Yuxuan Jiang, Zhe Huang, and Danny HK Tsang.2017.Challenges and solutions in fog computing orchestration, IEEE Network32,3(2017),122-129.
[11]中国移动,算力网络白皮书,2021.
[12]Breno Costa, Joao Bachiega, Leonardo Rebous, et al. Orchestration in Fog Computing: A Comprehensive Survey. ACM Computing Surveys, 2022, vol 55(3), 1-34.

亚信科技新技术探索
亚信科技的ICT前沿技术观点与行业洞见。展现亚信新技术与产品行业实践成果。
 最新文章