万博·ManBetX

‘万博综合体育平台’OpenStack硬件管理加速利器:Cyborg

发布时间:2024-11-30 05:51:01    浏览:837

[返回]
本文摘要:随着5G商用的渐进,通信行业也步入了5G的机遇与挑战。

随着5G商用的渐进,通信行业也步入了5G的机遇与挑战。大规模机器类通信、超强可信、较低延后通信市场需求场景(智能家居、智慧城市、增强现实、工业自动化、自动驾驶等)的蓬勃发展,对未来网络的计算出来和流量发送能力明确提出了更高的拒绝。标准化CPU设备早已无法符合处置海量数据、图片、流量的市场需求。

根据有所不同业务场景和自身优势,通讯厂商引进GPU、FPGA等展开加快,发售了各种加快硬件方案。对于异构加快硬件,要运营在各种CloudOS上,再行被上层厂家的VNF调用,假如没一个统一的标准来管理这些加速卡,没统一的模块来让上层网元调用,将不会导致比较严重的问题。

为了构建NFV异构加快硬件的统一管理,ETSI制订了NFV加快硬件统一管理软件框架标准。此后,该标准被扩展至更好场景,并在OpenStack产卵出有了Cyborg项目。Cyborg,目前唯一的开源硬件加速管理软件项目Cyborg的主要功能还包括硬件资源的找到、请示、挂架\修理等资源管理。用户可以通过Cyborg所列计算出来节点上早已被找到和请示的加速器、并创立带上加速器的实例。

对于一些类似硬件的类似功能或配备(如:FPGA的编程),也将在cyborg构建。Cyborg使用经典架构,由cyborg-api、cyborg-conductor、cyborg-agent、cyborg-db几个模块构成。其中Cyborg-agent坐落于计算出来节点,用作监控加速器;cyborg-conductor坐落于掌控节点,管理整个系统和操作者数据库。

cyborg-api和cyborg-db分别为模块和数据库,皆坐落于掌控节点。下面通过Cyborg的两个流程来讲解其主要功能:资源找到和请示流程、创立带上加快硬件的实例流程。

加快资源找到和请示流程:1.各设备的driver为加快设备结构Cyborg中用作叙述设备的数据结构,等候cyborg-agent轮询所取回头设备数据;2.cyborg-agent周期性扫瞄计算出来节点enabled的driver;3.cyborg-agent提供到driver请示来的数据信息后,通过cyborg-conductor将资源信息载入placement(改版ResourceProvider(RP),ResourceClass(RC),traits)和cyborg-db(改版devices,deployables,attach_handles,attributes,controlpath_ids)创立带上加快硬件的实例流程:1.User在cyborg创立一个加快资源模板device_profile(类似于novaflavor);2.User创立flavor,并在extra-spec属性中设置device_profile的name;3.User用于已创立的flavor发送到boot虚机催促;4.Nova-api拒绝接受到催促以后,向cyborg发动催促提供device_profile信息,并将device_profile信息合入request_spec,用作调度;5.调度过程中nova-scheduler向placement催促提供合乎request_spec中拒绝的硬件加速资源,placement回到满足要求的主机列表,之后主机列表再行通过nova-scheduler其他Filter的过滤器,排序后指定某个主机;6.Nova-compute在指定的主机上部署实例,并向cyborg催促加快资源的挂架操作者:Nova-compute根据device_profile向cyborg催促创立加速器催促(AcceleratorRequest,ARQ),并为每个ARQ给定硬件资源ResourceProvider(RP)。必须解释的是:ARQ包括instance_uuid、resource_provider_id、host_name、device_profile_id等字段信息。

一个ARQ对应一个device_profile_group,一个device_profile_group对应requestspec中的一个requestgroup。Nova-compute向cyborg发送到初始化设备(bind_ARQ)的催促。Cyborg根据ARQ信息初始化instance、host、device,初始化完结后改版ARQ的状态,并通报nova当前ARQ初始化操作者否顺利;Nova-compute收到ARQ初始化操作者完结的通报后,从ARQ提供设备信息,并将设备BDF信息载入instance的XML文件。中兴通讯持续社区贡献社区T版本的主要工作在于构建S版本新的定义的加快硬件数据结构、基本找到、请示、挂架流程,目前社区已构建基本的管理功能,与placement交互基本已完成,与nova组件的交互尚能在前进中,尚待成熟期。

另一方面社区在提高Cyborg代码规范、及产品可用性方面也投放了大量精力:T版本引进构建测试、并全面引进flak8测试提高源代码的规范、python3反对。Driver的反对方面,cyborg社区T版本追加了AICHIPASCENDDriver。从Queens版本开始投放Cyborg,几经四个版本,亲眼了Cyborg功能的逐步构建和完备。

总体来说,中兴通讯的贡献主要在三方面:第一、Cyborg与Nova交互的构建测试以增进Cyborg的商用进程(还包括了加快硬件市场需求的模块测试,?设备调度和挂架测试,设备请示数据库,TempestCI及测试);第二、对现有Driver的确保、反对更好的Driver(eg.ZTE自研高精度时钟卡Driver);第三、提高源代码规范和质量(全面提高flake8测试)、完备模块文档。在OpenStackTrainRelease中,中兴通讯在项目的commits和reviews皆名列第二。中兴通讯在项目享有两位CoreReviewer。

在未来,中兴通讯将持续投放在Cyborg中,为Cyborg项目的发展作出贡献。


本文关键词:万博·ManBetX,万博体育全站(Manbetx)官方网站,万博综合体育平台

本文来源:万博·ManBetX-www.chalk-mart.com

搜索