CN115643263A - 云原生平台资源分配方法、存储介质和电子设备 - Google Patents
云原生平台资源分配方法、存储介质和电子设备 Download PDFInfo
- Publication number
- CN115643263A CN115643263A CN202211568214.XA CN202211568214A CN115643263A CN 115643263 A CN115643263 A CN 115643263A CN 202211568214 A CN202211568214 A CN 202211568214A CN 115643263 A CN115643263 A CN 115643263A
- Authority
- CN
- China
- Prior art keywords
- resource
- resources
- computing unit
- target computing
- updating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种云原生平台资源分配方法、存储介质和电子设备。其中,该方法包括:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。本发明解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种云原生平台资源分配方法、存储介质和电子设备。
背景技术
随着5G技术架构的发展,5G与云计算的技术融合逐渐成为相关技术领域的发展趋势,5G专网尤其呈现出云化和虚拟化的趋势。然而,5G专网的流量是实时变化的,且有可能存在周期变化(如类似昼夜潮汐现象),因此,对5G网络进行资源使用优化(也即在低工作负载时减少资源供应)是相关技术领域的重要问题之一。
对5G网络进行资源使用优化的传统方法为,使用固定且专用的硬件资源和软件配置,提高5G网络的资源使用效率。而云原生5G专网基于云原生平台功能能够实现资源使用的弹性伸缩,也即能够根据5G专网的负载情况进行自动扩容/缩容以满足工作需求,进而提升资源利用效率。相关技术中提供的云原生5G专网的资源优化方法大多基于手动的参数设置或者现有的云原生平台组件实现,仍然无法满足云原生5G专网中的云原生网络功能需求(如数据面的独占性和亲和性需求、工作弹性伸缩需求和线程亲和性需求等),对云原生5G专网的资源使用优化效果有限。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种云原生平台资源分配方法、存储介质和电子设备,以至少解决相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
根据本发明实施例的一个方面,提供了一种云原生平台资源分配方法,包括:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
根据本发明实施例的另一方面,还提供了一种云原生平台资源分配方法,包括:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与车辆控制待使用的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
根据本发明实施例的另一方面,还提供了一种云原生平台资源分配方法,包括:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,上述计算机可读存储介质包括存储的程序,其中,在上述程序运行时控制上述计算机可读存储介质所在设备执行任意一项上述的云原生平台资源分配方法。
根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,与上述处理器连接,用于为上述处理器提供处理以下处理步骤的指令:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,进一步基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对节点内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对云原生平台中的节点内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了一种用于实现云原生平台资源分配方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本发明实施例的一种云原生平台资源分配方法的流程图;
图3是根据本发明实施例的一种可选的云原生平台的结构示意图;
图4是根据本发明实施例的一种可选的集群控制器组件架构的示意图;
图5是根据本发明实施例的一种可选的计算单元资源独占性和亲和性实现架构的示意图;
图6是根据本发明实施例的一种可选的创建计算单元的流程图;
图7是根据本发明实施例的一种可选的清除计算单元的流程图;
图8是根据本发明实施例的一种可选的资源动态弹性伸缩的实现过程的示意图;
图9是根据本发明实施例的一种可选的资源弹性伸缩的实现过程的流程图;
图10是根据本发明实施例的一种可选的线程资源亲和性实现过程的示意图;
图11是根据本发明实施例的一种可选的线程资源亲和性实现过程的流程图;
图12是根据本发明实施例的另一种云原生平台资源分配方法的流程图;
图13是根据本发明实施例的一种云原生平台资源分配方法的虚拟现实设备的硬件环境的示意图;
图14是根据本发明实施例的一种云原生平台资源分配方法的计算环境的结构框图;
图15是根据本发明实施例的又一种云原生平台资源分配方法的流程图;
图16是根据本发明实施例的一种云原生平台资源分配装置的结构示意图;
图17是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图;
图18是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图;
图19是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图;
图20是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图;
图21是根据本发明实施例的另一种云原生平台资源分配装置的结构示意图;
图22是根据本发明实施例的又一种云原生平台资源分配装置的结构示意图;
图23是根据本发明实施例的另一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本发明实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
无线接入网(Radio Access Network,RAN):是指固定用户全部或部分以无线的方式接入到交换机的网络形式。
分布式单元(Distributed Unit,DU):用于处理对实时性要求较高的功能,如处理物理层功能和实时性协议功能等。
集中式单元(Centralized Unit,CU):用于处理非实时的无线高层协议功能。
5G核心网:(5G Core,5GC):是5G通信网络中的核心部分,用于对通信网络进行管理、控制和转发。在5G核心网的网络中,每个节点为一个网络功能(Network Function),或者称为网元。5G核心网的网元包括:用户面功能单元(User Plane Function,UPF)、会话管理功能单元(Session Management Function,SMF)、接入管理功能单元(AccessManagement Function,AMF)、策略控制功能单元(Policy Control Function,PCF)等。
用户设备(User Equipment,UE):指通信网络中的用户终端,包括手机、智能终端、多媒体设备、流媒体设备等。
Kubernetes(k8s):用于自动部署,扩展和管理容器化应用程序的开源系统,当前主流的云原生平台。k8s中创建和管理的最小的可部署计算单元称为Pod。
控制集群(Control groups,Cgroups):是指Linux内核中用来限制、控制与分离进程组资源的功能。
服务质量(QualityofService,QoS):是k8s中的一种资源保护机制,其主要是针对不可压缩资源比如内存的一种控制技术。QoS是作用在Pod上的一个配置,当k8s创建一个Pod时,会给这个Pod分配一个QoS等级。K8s使用QoS类来决定Pod的调度和驱逐策略。
Pod自动扩缩容:包括Pod水平自动扩缩容(Horizontal Pod Autoscaler,HPA)和Pod垂直自动扩缩容(Vertical Pod Autoscaler,VPA),其中,HPA能够根据工作负载部署更多的Pod,VPA能够根据工作负载调整Pod的资源上限。
中心处理器(central processing unit,CPU)管理策略(CPU Manager forKubernetes,CMK):k8s包含的CPU管理策略,能够保证CPU亲和性和独占性。
实施例1
根据本发明实施例,还提供了一种云原生平台资源分配方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例1所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现云原生平台资源分配方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a,102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器(Microcontroller Unit,MCU)或可编程逻辑器件(Field Programmable Gate Array,FPGA)等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(Universal SerialBus,USB)端口(可以作为计算机总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本发明实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的云原生平台资源分配方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的云原生平台资源分配方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(Liquid Crystal Display,LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
5G网络包括用户终端(UE)、无线接入网(RAN)、承载网和5G核心网(5GC)。UE作为工作和应用的载体,通过无线信号连接到RAN(也即基站)。RAN主要负责将空中接口频率转换为数字信号。数字信号通过承载网到达5GC。5GC是5G网络的管理、控制和转发的核心,5GC会将数据转发到用户请求的服务后台进行处理。
随着5G技术架构的发展,5G与云计算的技术融合逐渐成为相关技术领域的发展趋势,5G专网尤其呈现出云化和虚拟化的趋势。云原生5G专网能够运行在硬件的硬件底座上,上述硬件包括通用硬件(如计算设备、网络设备和存储设备等)和RAN加速硬件。基于上述硬件底座,通过k8s云原生底座和针对5G专网的定制化云原生组件,能够支撑5G移动网络功能(如5GRAN、5GC等)以Pod形式在k8s集群中部署运行。
5G网络的流量是实时变化的,且有可能存在周期变化(如类似昼夜潮汐现象),因此,对5G网络进行资源使用优化(也即在低工作负载时减少资源供应)是相关技术领域的重要问题之一。
与传统的使用固定且专用的硬件资源和软件配置对5G网络进行资源使用优化相比,云化5G专网基于k8s能够实现资源使用的弹性伸缩,也即能够根据5G专网的负载情况进行自动扩容/缩容以满足工作需求,进而提升资源利用效率。
5G专网的主要网络功能为RAN和5GC。RAN的协议栈按照实时性要求分为DU(实时性要求较高)和CU(实时性要求较低)。5GC中包含诸多网元,如用户面功能单元(User PlaneFunction,UPF)、会话管理功能单元(Session Management Function,SMF)、接入管理功能单元(Access Management Function,AMF)、策略控制功能单元(Policy ControlFunction,PCF)等。
在5G专网中,上述DU和上述UPF通常需要数据加速功能(如数据平面开发套件(Data Plane Development Kit,DPDK)加速平台等)。然而,在5G专网中实现DPDK,往往需要独占并亲和CPU核心(CPU core)。此外,由于RAN中的上述DU和上述CU对实时性的要求,RAN线程往往也是独占并亲和CPU核心(CPU core),即不允许其他线程与DU和CU的线程共享CPU核心。
基于上述情况,云原生5G专网框架下的资源隔离和弹性伸缩面临如下三项挑战。
第一,难以满足5G专网在数据面的独占性需求和亲和性需求。
5G专网中RAN和5GC均包括控制面和数据面。上述数据面对设备性能要求较高,往往需要使用DPDK进行数据的收发包和其他处理。然而,对于上述基于DPDK方式实现的数据面,该数据面的线程通常需要以独占且亲和CPU核心的方式运行。
在相关技术中,满足上述5G专网在数据面的独占性需求和亲和性需求的方式主要有:手动参数设置法,通过运行数据面程序声明绑定的CPU核心的数量和ID,但这种方法自动化程度低、依赖用户手动操作且动态修改过程比较繁琐;组件实现法,利用k8s中的绑核组件提供的CPU管理(CPU manager)功能,根据用户声明的CPU核心的数量实现上述独占性需求和亲和性需求,但这种方法灵活性较低,仅能满足用户对CPU核心数量的需求,不能支持用户指定CPU核心的ID,也就是说,相关工作智能按照预设策略使用被分配到的CPU核心。
第二,难以满足5G专网的弹性伸缩需求。
5G专网的负载存在波动,因此,5G专网的网络功能往往通过提供完善的扩容/缩容策略来应对工作弹性伸缩需求。目前的扩容/缩容策略中,主要是以Pod为单位,进行Pod数量的扩缩或缩容(也称水平维度的弹性伸缩)。
然而,Pod的资源弹性伸缩(也称数值维度的弹性伸缩)在快速响应5G专网的负载波动上效果更好,无需经过Pod和工作的重启而是直接改变Pod的资源配置。此外,对于5G专网中的RAN来说,协议栈暂时无法支持多实例运行,RAN资源的扩容/缩容仅能通过修改Pod资源配置(也即垂直维度的弹性伸缩)实现。目前,k8s的相关组件和相关策略均无法支持Pod在不重启的情况下进行资源配置的修改,因此,RAN资源的扩容/缩容速度无法满足5G专网的工作弹性伸缩需求。
第三,难以满足5G专网的线程亲和性需求。
5G专网中RAN的信号处理具有严格的时延要求,信号处理违反时序会导致控制信号丢失和数据传输错误,从而导致网络时延显著增加、连接中断或程序崩溃等问题。
为了满足上述时延要求,RAN通常使用隔离亲和部署模式来避免进程切换带来的性能消耗。具体地,RAN的线程均需要独占计算资源(如CPU核心),对此,RAN使用Linux引导参数将RAN线程所使用的CPU配置在隔离区(isolate)来保证资源隔离,此外,将RAN线程与隔离区中的CPU核心进行亲和绑定来满足线程亲和性需求。
然而,在5G专网的工作弹性伸缩场景中,RAN工作在发生扩容/缩容后,RAN线程所使用的CPU列表发生变化。对此,k8s现有的绑核组件或亲和性组件满足RAN线程亲和性需求的实现方式为:将RAN工作对应的上述CPU列表进行更新,同时更新线程亲和性策略(即RAN所有线程共享CPU列表)。容易理解的是,上述实现方式与RAN线程要亲和到一个CPU核心的需求相违背。也就是说,现有的而技术方案无法满足5G专网中的RAN线程亲和性需求。
为了解决相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题,本发明提供一种云原生平台资源分配方法。
在上述运行环境下,本发明提供了如图2所示的一种云原生平台资源分配方法。图2是根据本发明实施例的一种云原生平台资源分配方法的流程图,如图2所示,该云原生平台资源分配方法包括:
步骤S21,获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;
步骤S22,基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;
步骤S23,按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例提供的上述方法步骤中,资源使用需求信息为用户自定义的云原生网络资源的使用需求信息。该自定义的云原生网络资源的使用需求信息可以包括云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型。
上述云原生平台可以是k8s,对应地,上述云原生平台中的节点为k8s中的node,上述目标计算单元为k8s中的Pod,上述目标计算单元待使用的资源可以包括处理器资源(如CPU核心)和存储器资源(如内存memory),待使用的资源对应的资源池类型可以是独占资源池或共享资源池。以下以云原生平台k8s的资源分配为例,对本发明提供的云原生平台资源分配方法进行具体地说明。
上述所获取的资源使用需求信息可以包括:用户预先为Pod指定的CPU核心(的ID)和指定的CPU核心的资源池类型。也就是说,本发明提供的方法能够支持用户以自定义的形式为云原生平台的目标计算单元指定待使用的CPU核心(的ID),与相关技术中提供的方法仅能为目标计算单元指定待使用的CPU核心数量相比,本发明提供的方法具有更高的灵活度。
在一个可选实施例中,可以采用操作系统文件记录上述节点内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型。通过修改操作系统文件,操作系统的调度机制会为目标计算单元分配对应的资源。节点内计算资源分配可以用于确定该节点内目标计算单元的待分配资源。
基于上述资源使用需求信息,对上述k8s中node内计算资源分配进行更新,得到上述更新结果。上述计算资源分配可以用于记录该node内的Pod待使用的CPU核心以及Pod待使用的CPU核心对应的资源池类型。基于用户自定义的资源使用需求信息对上述计算资源分配进行更新,能够将上述节点内目标计算单元的待使用资源和待分配资源进行实时同步。
按照上述更新结果为上述目标计算单元分配待使用的资源。更新结果是基于用户自定义的资源使用需求信息确定的,也就是说,本发明实施例提供的上述方法步骤能够根据用户自定义的资源使用需求信息,为云原生平台的节点内目标计算单元实时且灵活的分配对应的待使用资源。
需要说明的是,本发明实施例可以但不限于适用于健康、科学、社会、语言和艺术等领域中任何涉及云原生平台资源分配的应用场景下,例如,云原生5G专网的资源分配场景等。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,进一步基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对节点内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对云原生平台中的节点内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
以下以云原生平台k8s下5G专网的资源分配场景为例,对本发明实施例提供的上述方法步骤进行示例性说明。上述目标计算单元为网络中的Pod。
图3是根据本发明实施例的一种可选的云原生平台的结构示意图,如图3所示,本发明实施例提供的云原生平台资源分配方法能够应用于云原生平台k8s中,k8s集群以master和node形式运行,图3中示出k8s中的一个master节点(即图3中所示的主节点)和两个node节点(如图3中所示的计算节点1和计算节点2)。
如图3所示,每个k8snode节点(例如计算节点1)通过节点代理(kubelet)服务访问master节点的应用程序接口服务器(Application Programming Interface server,APIserver)。本例中master节点中,组件311为ETCD组件,组件312为调度器组件(scheduler),组件313为控制-管理器组件(controller-manager)。API server根据k8snode节点的请求信息从ETCD组件读取信息,并利用scheduler和controller-manager组件来进行k8s集群的调度和管控。此外,在k8smaster节点中,集群控制器(cgroup-controller,CC)组件作为资源控制组件,以Pod形式运行在k8s集群中。
根据本发明提供的云原生平台资源分配方法,支持用户对资源进行声明,k8s会根据资源声明进行资源的分配。在k8s中,Pod主要声明处理器资源(如CPU核心)和存储器资源(如内存memory)。而在k8s中,Pod的资源声明会有三种QoS类型(分别记为Guaranteed、Burstable和BestEffort,其中,Guaranteed的优先级高于Burstable和BestEffort,而Burstable的优先级高于BestEffort)。三种QoS类主要通过Pod创建时两个参数来确定,将这两个参数分别记为requests和limits,其中,参数requests表示如下软限制:运行Pod的节点需要满足参数requests限定的基本运行需求,参数limits表示如下硬限制:运行的Pod所使用的资源在参数limits的限定范围内。
需要说明的是,在Pod对资源的声明中,如果参数requests和参数limits相等且均为整数,此时Pod的资源声明对应的QoS类型为Guaranteed;如果参数requests大于参数limits,此时Pod的资源声明对应的QoS类型为Burstable;如果没有定义参数requests和参数limits,此时Pod的资源声明对应的QoS类型为BestEffort。本发明提供的云原生平台资源分配方法中,关注5G专网场景下的资源隔离,因此,尤其适用于上述Pod的资源声明对应的QoS类型为Guaranteed的场景下。
仍然如图3所示,k8smaster节点中,在Pod声明资源后,对应的资源声明信息会维护在API server组件中。而该k8smaster节点中的CC组件会通过kebelet服务读取APIserver中Pod的资源声明,然后根据该Pod的资源声明对node节点的文件系统(本例中路径为/sys/fs)中的计算资源分配进行更新。上述计算资源分配包含CPU配置信息(也称CPUset),CPUset可以用于确定待使用的每个Pod以及Pod中的容器(也即资源池)。基于该更新后的计算资源分配,系统会根据该计算资源分配中的CPUset为对应的Pod分配资源。基于上述处理器资源(CPU核心)的分配过程,同理,也可以对存储器资源(内存memory)进行分配。在下文中如未说明时默认以处理器资源分配为例,下述对处理器资源分配方法的说明同样适用于对存储器资源的分配。
在一种可选的实施例中,在步骤S22中,基于资源使用需求信息对计算资源分配进行更新,得到更新结果,包括如下方法步骤:
步骤S221,在目标计算单元的创建过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;
步骤S222,基于当前资源列表对应的资源池类型对计算资源分配进行更新,得到更新结果。
当为云原生平台的节点中创建目标计算单元时,根据上述资源使用需求信息预先指定的云原生平台中的节点内目标计算单元的待使用资源以及待使用的资源对应的资源池类型,从资源使用需求信息中获取上述待使用的资源声明的当前资源列表。当前资源列表用于确定目标计算单元待使用的资源对应的资源数量(如CPU核心数)、资源标识(如CPUID)和资源池类型。
在一种可选的实施例中,在步骤S222中,资源池类型包括:共享资源池和独占资源池,基于当前资源列表对应的资源池类型对计算资源分配进行更新,得到更新结果,包括如下方法步骤:
步骤S2221,基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果;
步骤S2222,利用资源分配结果对计算资源分配进行更新,得到更新结果。
在本发明实施例的上述可选的方法步骤中,资源池类型包括共享资源池和独占资源池。共享资源池的资源分配方式为:共享资源池中的资源(如CPU、memory等)可以被节点中的多个目标计算单元(如Pod)共同使用。独占资源池的资源分配方式为:独占资源池中的资源(如CPU、memory等)无法支持节点中的多个目标计算单元(如Pod)共同使用。
上述基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果的具体方式可以是:基于当前资源列表对应的共享资源池或者独占资源池对应的资源分配方式,确定目标计算单元的资源分配结果。资源分配结果用于对计算资源分配进行更新,得到更新结果。
在一种可选的实施例中,在步骤S2221中,基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果,包括如下方法步骤:
步骤S2223,响应于当前资源列表对应的资源池类型为共享资源池,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果;
步骤S2224,响应于当前资源列表对应的资源池类型为独占资源池,从节点内除目标计算单元之外的其余计算单元中删除当前资源列表中记录的资源,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果。
在本发明实施例的上述可选的方法步骤中,共享资源池中的资源(如CPU、memory等)可以被节点中的多个目标计算单元(如Pod)共同使用,因此,如果当前资源列表对应的资源池类型为共享资源池,则根据当前资源列表为目标计算单元绑定对应的待使用资源(也即当前资源列表中记录的资源)得到绑定结果,进而基于该绑定结果对计算资源分配进行更新,得到资源分配结果。
在本发明实施例的上述可选的方法步骤中,独占资源池中的资源(如CPU、memory等)无法支持节点中的多个目标计算单元(如Pod)共同使用,因此,如果当前资源列表对应的资源池类型为独占资源池,除了为目标计算单元绑定当前资源列表中记录的资源外,还需要从节点内除目标计算单元之外的其余计算单元中删除当前资源列表中记录的资源,从而得到绑定结果,进一步基于该绑定结果对计算资源分配进行更新,得到资源分配结果。
基于上述当前资源列表对应的资源池类型对计算资源分配进行更新,得到资源分配结果。上述资源分配结果用于为目标计算单元分配待使用的资源。由于上述当前资源列表由包含预先指定资源信息的资源使用需求信息确定,通过上述方法步骤,能够实现云原生平台的节点中目标计算单元的灵活创建,还能够在为目标计算单元绑定资源时考虑资源池类型,进一步提高云原生平台的资源利用效率。
在一种可选的实施例中,云原生平台资源分配方法还包括如下方法步骤:
步骤S24,在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为独占资源池,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源;
步骤S25,在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为共享资源池且节点内除目标计算单元之外的其余计算单元均未使用当前资源列表中记录的资源,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。
在本发明实施例的上述可选的方法步骤中,独占资源池中的资源(如CPU、memory等)无法支持节点中的多个目标计算单元(如Pod)共同使用,因此,在为云原生平台的节点中清除目标计算单元时,如果待清除的目标计算单元的当前资源列表对应的资源池类型为独占资源池,则无需检查节点内其他计算单元的资源使用状况,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。
在本发明实施例的上述可选的方法步骤中,共享资源池中的资源(如CPU、memory等)可以被节点中的多个目标计算单元(如Pod)共同使用,因此,在为云原生平台的节点中清除目标计算单元时,如果待清除的目标计算单元的当前资源列表对应的资源池类型为共享资源池,则需要检查节点内除目标计算单元之外的其余计算单元是否使用当前资源列表中记录的资源。如果节点内除目标计算单元之外的其余计算单元均未使用当前资源列表中记录的资源,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。如果节点内除目标计算单元之外的其余计算单元中的至少一个计算单元使用当前资源列表中记录的资源,则无需执行操作(也即无需回收当前资源列表中记录的资源)。
由于上述当前资源列表由包含预先指定资源信息的资源使用需求信息确定,通过上述方法步骤,能够实现云原生平台的节点中目标计算单元的灵活清除,还能够在清除目标计算单元时考虑资源池类型,进一步提高云原生平台的资源利用效率。
以下仍然以云原生平台k8s下5G专网的资源分配场景为例,对本发明实施例提供的上述涉及目标计算单元创建或清除的方法步骤进行示例性说明。
本发明实施例适用的上述k8s云原生平台下,k8smaster节点的API server中的集群控制器(CC)组件可以是基于k8s client-go库开发的。图4是根据本发明实施例的一种可选的集群控制器组件架构的示意图,如图4所示,基于云原生平台k8s的client-go组件(如图4中的组件41(包括组件411、组件412、组件413)、组件42和组件43)和定制开发的CC组件(如图4中的组件44和组件45)。
具体地,如图4所示,组件41为基于k8s中informer机制的informer组件。组件411为反射器组件(Reflector),Reflector用于监测k8smaster节点中的API server以获取指定的资源类型。组件412为增量队列组件(DeltaFIFO),Reflector获取的资源类型存入DeltaFIFO,本例中DeltaFIFO为先进先出的队列。组件413为本地存储组件(LocalStore),DeltaFIFO中的数据会写入LocalStore。
具体地,如图4所示,组件44为回调组件(Callbacks)。informer组件中的DeltaFIFO还会通过生产者消费者机制利用Callbacks进行Pod逻辑处理(如创建OnAdd、修改OnUpdate和删除OnDelete等)。组件42为工作队列组件(Work queue),组件45为操作器组件(Worker),Workqueue会保存经Callbacks处理后的数据并将该数据发送至Worker。组件43为客户端组件(Clients),Worker根据上述经Callbacks处理后的数据利用Clients对APIserver执行对应的逻辑操作(如创建、删除、修改和查询等)。此外,Worker与LocalStore之间存在只读连接,也就是说,上述逻辑操作也可以是基于Local Store中写入的上述指定的资源类型执行的。
仍然如图4所示,在集群控制器(CC)组件的运行流程中,本发明实施例提供的云原生平台资源分配方法的核心功能由组件44(Callbacks)完成。在进行Pod的创建操作后,调用相应的OnAdd函数以更新计算资源分配中的CPUset;在进行Pod的修改操作后,调用相应的OnUpdate函数以更新计算资源分配中的CPUset;在进行Pod的删除操作后,调用相应的OnDelete函数以更新计算资源分配中的CPUset。经过上述Callbacks组件的逻辑处理,能够保证Pod的资源隔离和弹性伸缩。
相关技术中,能够实现支持用户自定义Pod使用的CPU数量,并按照CPU的ID顺序为Pod分配CPU。然而,在云原生5G专网的场景中,对Pod使用的CPU ID的需求较高,例如,5G专网的RAN中,ID为0的CPU通常用作对重定向进行中断,该ID为0的CPU不对RAN中的Pod开放使用,同理,5GC中的UPF可能存在不连续绑核需求(即Pod使用的CPU的ID不连续)。因此,相关技术提供的方法无法满足Pod对CPU ID的需求。
为了保障5G专网的RAN中Pod的独占性需求和亲和性需求,本发明提供的云原生平台资源分配方法中,划分不同的资源池,为用户开放灵活的资源池使用接口。图5是根据本发明实施例的一种可选的计算单元资源独占性和亲和性实现架构的示意图,如图5所示,根据用户自定义的Pod的CPU配置信息(即Pod使用的CPU列表,CPUset),确定Pod所使用的CPU是否具有独占性,进而划分不同的资源池。
例如,如图5所示,计算单元1(Pod1)和计算单元2(Pod2)各自声明了独占资源,因此,Pod1和Pod2均为独占资源池,也就是说,Pod1和Pod2使用的CPU资源互斥。计算单元3(Pod3)和计算单元4(Pod4)声明了相同的CPUset且不独占,因此,Pod3和Pod4为共享资源池。除了声明CPUset的Pod之外的其他Pod将共享剩余资源池。
图6是根据本发明实施例的一种可选的创建计算单元的流程图,如图6所示,创建计算单元(Pod)的过程对应于图4所示的组件44进行逻辑处理处理时创建Pod并调用函数OnAdd的过程。
如图6所示,创建Pod的过程包括:判断Pod是否声明了资源配置信息(CPUset);如果Pod没有声明CPUset,创建Pod并(调用OnPodCPUset函数)为该创建的Pod更新CPUset为剩余资源池;如果Pod声明了CPUset,读取CPUset并更新配置表,进一步判断该Pod是否为独占资源池;如果声明CPUset的Pod为独占资源池,将Pod所声明的CPUset对应的CPU核心绑定至该Pod,并从所有CPU资源中剔除该Pod所声明的CPUset对应的CPU核心,(调用OnPodCPUset函数)更新所有Pod对应的CPUset;如果声明CPUset的Pod为共享资源池,创建Pod并(调用OnPodCPUset函数)更新该创建的Pod的CPUset。
图7是根据本发明实施例的一种可选的清除计算单元的流程图,如图7所示,清除计算单元(Pod)的过程对应于图4所示的组件44进行逻辑处理处理时删除Pod并调用函数OnDelate的过程。
如图7所示,清除Pod的过程包括:判断Pod是否声明了资源配置信息(CPUset);如果Pod未声明CPUset则无需操作;如果Pod声明了CPUset,则读取CPUset,更新配置表,并判断该Pod是否为独占资源池;如果该Pod为独占资源池,则清除该Pod(即回收该Pod绑定的CPU核心)并更新其他资源池的所有Pod;如果该Pod为共享资源池,判断其他Pod是否使用该Pod当前使用的CPUset;如果其他Pod使用该Pod当前使用的CPUset则无需操作,如果其他Pod未使用该Pod当前使用的CPUset则清除(即回收)该Pod并更新其他资源池的所有Pod。
容易理解的是,通过本发明实施例的上述方法步骤,通过在5G专网中进行Pod的创建和清除,为Pod保障了资源的亲和性和独占性,同时为用户提供了足够的灵活性。
在一种可选的实施例中,在步骤S22中,基于资源使用需求信息对计算资源分配进行更新,得到更新结果,包括如下方法步骤:
步骤S223,在目标计算单元的更新过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;
步骤S224,基于当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到更新结果。
在本发明实施例的上述可选的方法步骤中,还能够实现在无需重启节点内目标计算单元的情况下,根据资源使用需求修改或调整目标计算单元当前使用的资源(如为目标计算单元增加或减少绑定的CPU核心数,也称扩容或缩容),也即,实现了目标计算单元的资源弹性伸缩能力。
从资源使用需求信息中获取待使用的资源声明的当前资源列表;将上述当前资源列表与节点中存储的历史资源列表进行比对,得到比对结果;基于比对结果对计算资源分配进行更新,得到更新结果。
在一种可选的实施例中,在步骤S224中,基于当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到更新结果,包括如下方法步骤:
步骤S2241,响应于通过比对结果确定当前资源列表中记录的资源多于历史资源列表中记录的资源,基于比对结果确定待扩容资源,从节点内除目标计算单元之外的其余计算单元中删除待扩容资源,为目标计算单元绑定待扩容资源以得到绑定结果,并基于绑定结果对计算资源分配进行更新,得到更新结果;
步骤S2242,响应于通过比对结果确定当前资源列表中记录的资源少于历史资源列表中记录的资源,基于比对结果确定待缩容资源,将待缩容资源从目标计算单元释放至节点内除目标计算单元之外的其余计算单元以得到释放结果,并基于释放结果对计算资源分配进行更新,得到更新结果。
在本发明实施例的上述可选的方法步骤中,如果目标计算单元对应的当前资源列表中记录的资源多于历史资源列表中记录的资源,说明目标计算单元需要绑定更多的资源(如CPU核心),此时,基于上述当前资源列表与历史资源列表之间的比对结果确定待扩容资源,从节点内除目标计算单元之外的其余计算单元中删除待扩容资源,为目标计算单元绑定待扩容资源以得到绑定结果,并基于绑定结果对计算资源分配进行更新,得到更新结果。
在本发明实施例的上述可选的方法步骤中,如果目标计算单元对应的当前资源列表中记录的资源少于历史资源列表中记录的资源,说明目标计算单元需要绑定更少的资源(如CPU核心),此时,基于上述当前资源列表与历史资源列表之间的比对结果确定待缩容资源,将待缩容资源从目标计算单元释放至节点内除目标计算单元之外的其余计算单元以得到释放结果,并基于释放结果对计算资源分配进行更新,得到更新结果。
容易理解的是,通过本发明的上述方法步骤,能够在云原生平台中实现资源弹性伸缩功能,通过更新计算资源分配的方式进行Pod的扩容或缩容操作,在此过程中无需Pod下线。
以下仍然以云原生平台k8s下5G专网的资源分配场景为例,对本发明实施例提供的上述涉及目标计算单元更新(包括扩容和缩容)的方法步骤进行示例性说明。
在云原生平台的应用场景中,经常遇到资源弹性伸缩需求。相关技术中提供的弹性伸缩实现方法仅支持静态策略,即仅允许Pod绑定CPU资源后无法更改的策略。例如,云原生平台下的Pod水平自动扩缩容(HPA)组件和Pod垂直自动扩缩容(VPA)组件能够提供部分弹性伸缩功能,其中,HPA根据监测组件提供的指标(如CPU利用率)的变化对Pod实例进行动态的创建或删除,VPA根据监测组件提供的指标(如CPU利用率)的变化删除原有的Pod实例并创建不同资源上限的新Pod。然而,上述HPA组件和VPA组件都无法较好地适配5G专网服务,例如,5G专网的RAN暂时不支持运行多个Pod实例导致HPA失效,VPA在弹性伸缩过程中会导致RAN软件中断服务的问题。
为了解决上述相关技术中提供的云原生平台资源分配方法无法满足资源弹性伸缩需求的技术问题,本发明提供的云原生平台资源分配方法中提出了Pod资源动态弹性伸缩的方法。图8是根据本发明实施例的一种可选的资源动态弹性伸缩的实现过程的示意图,如图8所示,针对独占资源池中的计算单元2(Pod2),网络负载变动前,该Pod2的CPUset是绑定ID为2、4-5的CPU核心,经过弹性伸缩,将该Pod2的CPUset变更为绑定ID为2、4-8的CPU核心,此过程并不会导致Pod中断服务(即无需重启)。
图9是根据本发明实施例的一种可选的资源弹性伸缩的实现过程的流程图,如图9所示,实现资源弹性伸缩的过程对应于图4所示的组件44进行逻辑处理处理时修改Pod并调用函数OnUpdate的过程。
如图9所示,实现资源弹性伸缩的过程包括:判断Pod是否声明了资源配置信息(CPUset);如果Pod未声明CPUset则无需操作;如果Pod声明了CPUset,则读取当前CPUset并判断当前CPUset与配置表的CPUset是否一致;如果当前CPUset与配置表的CPUset一致则无需操作,如果当前CPUset与配置表的CPUset不一致,则判断当前资源弹性伸缩是否对应于扩容操作;如果是扩容操作,则从所有Pod对应的配置资源中剔除当前扩容操作所需的CPUset资源,并(调用OnPodCPUset函数)更新所有Pod的CPUset;如果不是扩容操作(即当前资源弹性伸缩对应于缩容操作),则(调用OnPodCPUset函数)更新所有Pod的CPUset并释放缩容操作对应的CPUset资源。
容易理解的是,通过本发明实施例的上述方法步骤,在资源弹性伸缩的实现过程中,CC组件通过更新计算资源分配执行Pod的扩容或缩容操作,而无需Pod下线,也就是说,在无需Pod重启的情况下根据网络负载实现资源弹性伸缩功能。
在一种可选的实施例中,云原生平台资源分配方法还包括如下方法步骤:
步骤S26,配置预设映射关系,其中,预设映射关系用于确定目标计算单元中的每个线程与待使用的资源之间的亲和关系;
步骤S27,基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
在本发明实施例的上述可选的方法步骤中,计算资源分配中配置的预设映射关系为目标计算单元的多个线程与待使用的资源之间的映射关系,根据上述映射关系,可以确定上述多个线程中每个线程与待使用的资源之间的亲和关系。进而基于上述预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作,也就是说,通过本发明实施例的上述方法步骤,能够在线程粒度下,满足云原生平台的资源亲和性需求。
上述多个线程中每个线程与待使用的资源之间的亲和关系,也称关联关系或绑定关系。亲和关系用于表征线程与对应的资源之间的关联性(也即二者是否绑定)。例如,某线程与某CPU核心绑定,说明该线程与该CPU核心之间的亲和关系为绑定关系,该线程能够尽可能地运行在该CPU核心上以提高设备整体性能。
以下仍然以云原生平台k8s下5G专网的资源分配场景为例,对本发明实施例提供的上述涉及线程资源亲核性实现的方法步骤进行示例性说明。
在云原生平台,尤其是5G专网的RAN中,线程的运行对实时性要求较高,因此,通常是为线性绑定CPU核心运行。相关技术中,现有的组件(如资源控制器(Resource-controller)组件)虽然能够支持Pod的CPUset的动态修改,但在每次修改Pod的CPUset后,线程的绑核信息会被重置,也就是说,所有RAN线程的亲和性均变为当前CPUset,而不是保持一个线程亲和一个CPU核心。因此,现有技术中提供的云原生平台资源分配方法无法满足资源弹性伸缩中的线程亲和性需求。
为了解决上述相关技术中提供的云原生平台资源分配方法无法满足资源弹性伸缩中的线程亲和性需求的技术问题,本发明提供的云原生平台资源分配方法中提出了线程资源亲和性的实现方法。图10是根据本发明实施例的一种可选的线程资源亲和性实现过程的示意图,如图10所示,独占资源池中的计算单元1(Pod1)的CPUset为0-1,假定Pod1中运行有线程0和线程1,默认情况下,Pod1中的线程0和线程1的亲和资源均为CPU0-1,根据本发明实施例提出的线程资源亲和性的实现方法,通过为Pod1声明线程亲和列表的方式修改Pod1中线程的亲和性,使得Pod1中的线程0亲和CPU0,线程1亲和CPU1。
图11是根据本发明实施例的一种可选的线程资源亲和性实现过程的流程图,如图11所示,实现线程资源亲和性的过程对应于上述调用OnPodCPUset函数的过程。
如图11所示,实现线程资源亲和性的过程包括:读取计算资源分配并修改资源配置信息(CPUset);判断Pod是否声明了线程CPUset(也即线程亲和配置);如果Pod未声明线程CPUset则无需操作;如果Pod声明了线程CPUset,则读取当前线程CPUset并根据当前线程CPUset(也即线程亲和配置)对应的亲和命令(如taskset)为Pod中所有线程设置CPU亲和性。
容易理解的是,通过本发明实施例的上述方法步骤,在线程资源亲和性实现过程中,能够保障Pod资源弹性伸缩的过程中线程资源的亲和性,从而避免弹性伸缩过程CPUset改变导致的Pod线程亲和被重置(也即线程绑核信息被重置)的问题,进而保障云原生平台的网络稳定运行。
容易理解的是,本发明的上述具体实施方式中,云原生平台资源分配方法的有益效果在于:提出了云原生平台中的CC组件,进而提供了Pod亲和性和独占性的灵活保障方法、Pod资源的动态弹性伸缩方法和Pod资源的弹性伸缩中的线程亲和性保障方法。能够较好地支持5G专网数据面的资源隔离,支持5G专网组件根据5G工作负载实现弹性伸缩能力,为5G专网组件提供线程亲和性保障,有效地优化5G专网的资源利用;此外,能够在云原生5G专网进行云化部署的过程中,为5G相关组件提供资源隔离能力和弹性伸缩能力,提高5G专网的资源利用效率;满足了云原生5G专网数据面的独占性和亲和性、工作弹性伸缩和线程亲和性的需求。
综上,本发明提供的云原生平台资源分配方法包含以下三个子方法。
第一,目标计算单元的亲和性和独占性的灵活保障方法。本发明提出灵活且用户友好的资源定义接口,支持用户自定义资源规格(如CPU核心数量和CPU核心ID)。此外,上述资源定义接口还能够解析用户自定义的资源规格,为Pod提供独占、共享等资源使用模式。
第二,目标计算单元的资源动态弹性伸缩方法。本发明提供的方法能够使5G专网具有Pod资源的动态弹性伸缩能力,也即在不重启Pod的前提下,动态地为Pod增加或减少资源配额,从而在垂直维度进行Pod资源的弹性伸缩。由此,有效地解决了现有技术中仅能够对Pod进行水平维度的弹性伸缩导致的数据初始化、同步和迁移效率较低等问题,同时能够为无法支持水平维度的弹性伸缩的RAN场景提供弹性伸缩保障。
第三,目标计算单元的资源弹性伸缩过程中的线程资源亲和性保障方法。本发明提供的方法在计算单元资源弹性伸缩的基础上,还提出保障线程资源亲和性的方法。支持用户自定义线程亲和信息(如线程1绑定CPU核心No.1上),在计算单元进行资源弹性伸缩的过程中,为计算单元中具有亲和需求的线程进行资源的重新亲和。
通过本发明提供的云原生平台资源分配方法,能够实现的预期效果如下:用户可以自定义计算单元的资源使用信息,在资源独占与亲和过程中具有较高的用户友好性且灵活性高;在不影响云原生平台运行的情况下,为计算单元提供垂直维度动态弹性伸缩能力;在计算单元的资源弹性伸缩过程中,保障计算单元中线程的亲和性。
在一种可选的实施例中,通过云原生平台提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一通信工作场景,云原生平台资源分配方法还包括如下方法步骤:
步骤S281,响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;
步骤S282,响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;
步骤S283,基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
在上述可选的实施例中,上述图形用户界面所显示的通信工作场景可以是云原生5G专网通信工作场景。
上述图形用户界面还包括第一控件(或第一触控区域),当检测到作用于第一控件(或第一触控区域)的第一触控操作时,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源,其中,预设资源定义接口可以是云原生平台提供的支持用户进行待使用资源自定义的资源列表接口(如CPU列表接口)。
上述图形用户界面还包括第二控件(或第二触控区域),当检测到作用于第二控件(或第二触控区域)的第二触控操作时,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型,预设资源定义接口可以是云原生平台提供的支持用户进行待使用资源对应的资源池类型(如共享、独占等)自定义的资源列表接口。
具体地,基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源的具体实现方式可以参照本发明实施例的上述步骤S22至S23的具体说明,不予赘述。
在一种可选的实施例中,云原生平台资源分配方法还包括如下方法步骤:
步骤S291,响应作用于图形用户界面的第三触控操作,配置目标计算单元中的每个线程与待使用的资源之间的预设映射关系;
步骤S292,基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
上述图形用户界面还包括第三控件(或第三触控区域),当检测到作用于第三控件(或第三触控区域)的第三触控操作时,配置目标计算单元中的每个线程与待使用的资源之间的预设映射关系,上述预设映射关系用于确定目标计算单元中的每个线程与待使用的资源之间的亲和关系。
具体地,基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作的具体实现方式可以参照本发明实施例的上述步骤S26至S27的具体说明,不予赘述。
需要说明的是,上述第一触控操作、上述第二触控操作和上述第三触控操作均可以是用户用手指接触上述终端设备的显示屏并触控该终端设备的操作。该触控操作可以包括单点触控、多点触控,其中,每个触控点的触控操作可以包括点击、长按、重按、划动等。上述第一触控操作、上述第二触控操作和上述第三触控操作还可以是通过鼠标、键盘等输入设备实现的触控操作。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
根据本发明实施例,在上述运行环境下,本发明提供了如图12所示的一种云原生平台资源分配方法。图12是根据本发明实施例的另一种云原生平台资源分配方法的流程图,如图12所示,该云原生平台资源分配方法,包括:
步骤S1201,获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源;
步骤S1202,基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;
步骤S1203,按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例提供的上述方法步骤中,资源使用需求信息为用户自定义的云原生网络资源的使用需求信息。该自定义的云原生网络资源的使用需求信息可以包括在工业互联网场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型。待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源(如CPU核心)与存储资源(如内存memory)。
上述工业互联网场景为5G网络与工业互联网进行结合的技术领域中的场景。工业互联网场景可以但不限于包括:5G+钢铁应用场景(如人工智能废钢判定系统、智能点检、智慧天车和安全生产等),5G+农业应用场景(如智慧农场、智慧林场、智慧畜牧、智慧渔场等),5G+汽车应用场景(如整车制造、零部件加工、精确导航、自动驾驶等),5G+航空应用场景(如民航智慧管理(人员管理、物品管理等)、民航数据采集等),5G+煤矿引用场景(如煤矿智能作业、煤矿井下通信等),5G+港口应用场景(如智慧港口无人驾驶、智慧港口机械设备远程控制、智慧安防和应急指挥等)。本发明实施例中待使用的资源为上述应用场景下进行数据采集与感知的处理器资源与存储资源。
上述所获取的资源使用需求信息可以包括:用户预先为计算单元指定的处理器资源和存储资源,以及指定的处理器资源和存储资源的资源池类型(如独占、共享等)。也就是说,本发明提供的方法能够支持用户以自定义的形式为在工业互联网场景下使用的云原生平台中服务器内的目标计算单元指定待使用的处理器资源和存储资源,与相关技术中提供的方法仅能为目标计算单元指定待使用的CPU核心数量相比,本发明提供的方法具有更高的灵活度。
上述计算资源分配用于记录上述服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型。服务器内存储的上述计算资源分配可以用于确定该服务器内目标计算单元的待分配资源。
上述更新结果是基于用户自定义的资源使用需求信息确定的,也就是说,本发明实施例提供的上述方法步骤能够根据用户自定义的资源使用需求信息,为在工业互联网场景下使用的云原生平台中服务器内的目标计算单元实时且灵活的分配对应的待使用资源。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源,进一步基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的在工业互联网场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对服务器内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对在工业互联网场景下使用的云原生平台中服务器内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
在一种可选的实施例中,通过云原生平台提供一图形用户界面,图形用户界面所显示的内容至少部分地包含一工业互联网场景,云原生平台资源分配方法还包括如下方法步骤:
步骤S1204,响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;
步骤S1205,响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;
步骤S1206,基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
在上述可选的实施例中,上述图形用户界面所显示的通信工作场景可以是云原生5G专网通信工作场景。
上述图形用户界面还包括第一控件(或第一触控区域),当检测到作用于第一控件(或第一触控区域)的第一触控操作时,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源,其中,预设资源定义接口可以是云原生平台提供的支持用户进行待使用资源自定义的资源列表接口(如CPU列表接口)。本发明实施例中待使用的资源为上述工业互联网应用场景下进行数据采集与感知的处理器资源(如CPU核心)与存储资源(如内存memory)。
上述图形用户界面还包括第二控件(或第二触控区域),当检测到作用于第二控件(或第二触控区域)的第二触控操作时,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型,预设资源定义接口可以是云原生平台提供的支持用户进行待使用资源对应的资源池类型(如共享、独占等)自定义的资源列表接口。
具体地,基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源的具体实现方式可以参照本发明实施例的上述步骤S1201至S1203的具体说明,不予赘述。
需要说明的是,本实施例的优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例3
本发明实施例3所提供的方法实施例可以在虚拟现实(Virtual Reality,VR)设备或增强现实(Augmented Reality,AR)设备中执行。以VR设备为例,图13是根据本发明实施例的一种云原生平台资源分配方法的虚拟现实设备的硬件环境的示意图。如图13所示,虚拟现实设备1304与终端1306相连接,终端1306与服务器1302通过网络进行连接,上述虚拟现实设备1304并不限定于:虚拟现实头盔、虚拟现实眼镜、虚拟现实一体机等,上述终端1304并不限定于PC、手机、平板电脑等,服务器1302可以为媒体文件运营商对应的服务器,上述网络包括但不限于:广域网、城域网或局域网。
可选地,本发明实施例的虚拟现实设备1304包括:存储器13041、处理器13042和传输装置13043(图13中未示出)。存储器13041用于存储应用程序,该应用程序可以用于执行本发明实施例提供的云原生平台资源分配方法。处理器13042可以调用并执行存储器13041中存储的应用程序,以实现本发明实施例提供的云原生平台资源分配方法。
可选地,本发明实施例的终端1306也可以用于执行云原生平台资源分配方法,并通过VR设备或AR设备的显示画面展示支持用户自定义的云原生平台资源分配界面,并获取用户自定义的资源使用需求信息。
图13示出的硬件结构框图,不仅可以作为上述AR/VR设备(或移动设备)的硬件环境的示例性框图,还可以作为上述服务器的示例性框图。
图14是根据本发明实施例的一种云原生平台资源分配方法的计算环境的结构框图,图14以框图示出了使用上述图13所示的VR设备(或移动设备)作为计算环境1401中计算节点的一种实施例。
仍然如图14所示,计算环境1401包括运行在分布式网络上的多个(图14中采用1410-1,1410-2,…,来示出)计算节点(如服务器)。每个计算节点都包含本地处理和内存资源,终端用户1402可以在计算环境1401中远程运行应用程序或存储数据。应用程序可以作为计算环境1401中的多个服务1420-1(代表服务A),1420-2(代表服务D),1420-3(代表服务E)和1420-4(代表服务H)进行提供。
仍然如图14所示,终端用户1402可以通过客户端上的web浏览器或其他软件应用程序提供和访问服务,在一些实施例中,可以将终端用户1402的供应和/或请求提供给入口网关1430。入口网关1430可以包括一个相应的代理来处理针对服务1420(计算环境1401中提供的一个或多个服务)的供应和/或请求。
仍然如图14所示,服务1420是根据计算环境1401支持的各种虚拟化技术来提供或部署的。在一些实施例中,可以根据基于虚拟机(Virtual Machine,VM)的虚拟化、基于容器的虚拟化和/或类似的方式提供服务1420。基于虚拟机的虚拟化可以是通过初始化虚拟机来模拟真实的计算机,在不直接接触任何实际硬件资源的情况下执行程序和应用程序。在虚拟机虚拟化机器的同时,根据基于容器的虚拟化,可以启动容器来虚拟化整个操作系统(Operating System,OS),以便多个工作负载可以在单个操作系统实例上运行。
在基于容器虚拟化的一个实施例中,服务1420的若干容器可以被组装成一个Pod(例如,k8sPod)。举例来说,如图14所示,服务1420-2可以配备一个或多个Pod1440-1,1440-2,…,1440-N(统称为Pod1440)。每个Pod1440可以包括代理1445和一个或多个容器1442-1,1442-2,…,1442-M(统称为容器1442)。Pod1440中一个或多个容器1442处理与服务的一个或多个相应功能相关的请求,代理1445通常控制与服务相关的网络功能,如路由、负载均衡等。其他服务1420也可以类似于Pod1440的Pod。
在操作过程中,执行来自终端用户1402的用户请求可能需要调用计算环境1401中的一个或多个服务1420,执行一个服务1420的一个或多个功能可能需要调用另一个服务1420的一个或多个功能。如图14所示,服务1420-1(代表服务A)从入口网关1430接收终端用户1402的用户请求,服务1420-1(代表服务A)可以调用服务1420-2(代表服务D),服务1420-2(代表服务D)可以请求服务1420-3(代表服务E)执行一个或多个功能。
上述的计算环境可以是云计算环境,资源的分配由云服务提供上管理,允许功能的开发无需考虑实现、调整或扩展服务器。该计算环境允许开发人员在不构建或维护复杂基础设施的情况下执行响应事件的代码。服务可以被分割完成一组可以自动独立伸缩的功能,而不是扩展单个硬件设备来处理潜在的负载。
在上述运行环境下,本发明提供了如图15所示的一种云原生平台资源分配方法。图15是根据本发明实施例的又一种云原生平台资源分配方法的流程图,如图15所示,该云原生平台资源分配方法,包括:
步骤S1501,获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源;
步骤S1502,基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;
步骤S1503,按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例提供的上述方法步骤中,资源使用需求信息为用户自定义的云原生网络资源的使用需求信息。该自定义的云原生网络资源的使用需求信息可以包括在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型。待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源(如CPU核心)与存储资源(如内存memory)。
上述所获取的资源使用需求信息可以包括:用户预先为计算单元指定的处理器资源和存储资源,以及指定的处理器资源和存储资源的资源池类型(如独占、共享等)。也就是说,本发明提供的方法能够支持用户以自定义的形式为在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元指定待使用的处理器资源和存储资源,与相关技术中提供的方法仅能为目标计算单元指定待使用的CPU核心数量相比,本发明提供的方法具有更高的灵活度。
上述计算资源分配用于记录上述服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型。服务器内存储的上述计算资源分配可以用于确定该服务器内目标计算单元的待分配资源。
上述更新结果是基于用户自定义的资源使用需求信息确定的,也就是说,本发明实施例提供的上述方法步骤能够根据用户自定义的资源使用需求信息,为在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元实时且灵活的分配对应的待使用资源。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源,进一步基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对服务器内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
需要说明的是,本实施例的优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例4
根据本发明实施例,还提供了一种用于实施上述云原生平台资源分配方法的装置实施例,图16是根据本发明实施例的一种云原生平台资源分配装置的结构示意图,如图16所示,该装置包括:获取模块1601、更新模块1602和分配模块1603,其中,获取模块1601,用于获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;更新模块1602,用于基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;分配模块1603,用于按照更新结果为目标计算单元分配待使用的资源。
可选地,上述更新模块1602还用于:在目标计算单元的创建过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表对应的资源池类型对计算资源分配进行更新,得到更新结果。
可选地,上述更新模块1602还用于:基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果;利用资源分配结果对计算资源分配进行更新,得到更新结果。
可选地,上述更新模块1602还用于:响应于当前资源列表对应的资源池类型为共享资源池,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果;响应于当前资源列表对应的资源池类型为独占资源池,从节点内除目标计算单元之外的其余计算单元中删除当前资源列表中记录的资源,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果。
可选地,图17是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图,如图17所示,该装置除包括图16所示的所有模块外,还包括:清除模块1604,用于在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为独占资源池,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源;在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为共享资源池且节点内除目标计算单元之外的其余计算单元均未使用当前资源列表中记录的资源,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。
可选地,上述更新模块1602还用于:在目标计算单元的更新过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到更新结果。
可选地,上述更新模块1602还用于:响应于通过比对结果确定当前资源列表中记录的资源多于历史资源列表中记录的资源,基于比对结果确定待扩容资源,从节点内除目标计算单元之外的其余计算单元中删除待扩容资源,为目标计算单元绑定待扩容资源以得到绑定结果,并基于绑定结果对计算资源分配进行更新,得到更新结果;响应于通过比对结果确定当前资源列表中记录的资源少于历史资源列表中记录的资源,基于比对结果确定待缩容资源,将待缩容资源从目标计算单元释放至节点内除目标计算单元之外的其余计算单元以得到释放结果,并基于释放结果对计算资源分配进行更新,得到更新结果。
可选地,图18是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图,如图18所示,该装置除包括图17所示的所有模块外,还包括:线程模块1605,用于配置预设映射关系,其中,预设映射关系用于确定目标计算单元中的每个线程与待使用的资源之间的亲和关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
可选地,图19是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图,如图19所示,该装置除包括图18所示的所有模块外,还包括:第一控制模块1606,用于响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
可选地,图20是根据本发明实施例的一种可选的云原生平台资源分配装置的结构示意图,如图20所示,该装置除包括图19所示的所有模块外,还包括:第二控制模块1607,用于响应作用于图形用户界面的第三触控操作,配置目标计算单元中的每个线程与待使用的资源之间的预设映射关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
此处需要说明的是,上述获取模块1601、更新模块1602和分配模块1603对应于实施例1中的步骤S21至步骤S23,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,进一步基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对节点内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对云原生平台中的节点内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
根据本发明实施例,还提供了一种用于实施上述另一种云原生平台资源分配方法的装置实施例,图21是根据本发明实施例的另一种云原生平台资源分配装置的结构示意图,如图21所示,该装置包括:获取模块2101、更新模块2102和分配模块2103,其中,
获取模块2101,用于获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源;更新模块2102,用于基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;分配模块2103,用于按照更新结果为目标计算单元分配待使用的资源。
此处需要说明的是,上述获取模块2101、更新模块2102和分配模块2103对应于实施例2中的步骤S1201至步骤S1203,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例2所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源,进一步基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的在工业互联网场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对服务器内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对在工业互联网场景下使用的云原生平台中服务器内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
根据本发明实施例,还提供了一种用于实施上述又一种云原生平台资源分配方法的装置实施例,图22是根据本发明实施例的又一种云原生平台资源分配装置的结构示意图,如图22所示,该装置包括:获取模块2201、更新模块2202和分配模块2203,其中,
获取模块2201,用于获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源;更新模块2202,用于基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;分配模块2203,用于按照更新结果为目标计算单元分配待使用的资源。
此处需要说明的是,上述获取模块2201、更新模块2202和分配模块2203对应于实施例3中的步骤S1501至步骤S1503,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例3所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中,或者可以运行在实施例3提供的硬件环境或计算环境中。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源,进一步基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对服务器内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
需要说明的是,本实施例的优选实施方式可以参见实施例1至3中的相关描述,此处不再赘述。
实施例5
根据本发明实施例,还提供了一种电子设备的实施例,该电子设备可以是计算设备群中的任意一个计算设备。该电子设备包括:处理器和存储器,其中:
存储器,与上述处理器连接,用于为上述处理器提供处理以下处理步骤的指令:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,进一步基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对节点内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对云原生平台中的节点内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
需要说明的是,本实施例的优选实施方式可以参见实施例1中的相关描述,此处不再赘述。
实施例6
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行云原生平台资源分配方法中以下步骤的程序代码:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
可选地,图23是根据本发明实施例的另一种计算机终端的结构框图,如图23所示,该计算机终端可以包括:一个或多个(图中仅示出一个)处理器122、存储器124、以及外设接口126。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的云原生平台资源分配方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的云原生平台资源分配方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
可选地,上述处理器还可以执行如下步骤的程序代码:在目标计算单元的创建过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表对应的资源池类型对计算资源分配进行更新,得到更新结果。
可选地,上述处理器还可以执行如下步骤的程序代码:基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果;利用资源分配结果对计算资源分配进行更新,得到更新结果。
可选地,上述处理器还可以执行如下步骤的程序代码:响应于当前资源列表对应的资源池类型为共享资源池,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果;响应于当前资源列表对应的资源池类型为独占资源池,从节点内除目标计算单元之外的其余计算单元中删除当前资源列表中记录的资源,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果。
可选地,上述处理器还可以执行如下步骤的程序代码:在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为独占资源池,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源;在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为共享资源池且节点内除目标计算单元之外的其余计算单元均未使用当前资源列表中记录的资源,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。
可选地,上述处理器还可以执行如下步骤的程序代码:在目标计算单元的更新过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到更新结果。
可选地,上述处理器还可以执行如下步骤的程序代码:响应于通过比对结果确定当前资源列表中记录的资源多于历史资源列表中记录的资源,基于比对结果确定待扩容资源,从节点内除目标计算单元之外的其余计算单元中删除待扩容资源,为目标计算单元绑定待扩容资源以得到绑定结果,并基于绑定结果对计算资源分配进行更新,得到更新结果;响应于通过比对结果确定当前资源列表中记录的资源少于历史资源列表中记录的资源,基于比对结果确定待缩容资源,将待缩容资源从目标计算单元释放至节点内除目标计算单元之外的其余计算单元以得到释放结果,并基于释放结果对计算资源分配进行更新,得到更新结果。
可选地,上述处理器还可以执行如下步骤的程序代码:配置预设映射关系,其中,预设映射关系用于确定目标计算单元中的每个线程与待使用的资源之间的亲和关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
可选地,上述处理器还可以执行如下步骤的程序代码:响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
可选地,上述处理器还可以执行如下步骤的程序代码:响应作用于图形用户界面的第三触控操作,配置目标计算单元中的每个线程与待使用的资源之间的预设映射关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
可选地,上述处理器还可以执行如下步骤的程序代码:响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
在本发明实施例中,通过获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,进一步基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果,从而按照更新结果为目标计算单元分配待使用的资源。
容易注意到的是,通过本发明实施例,对利用资源使用需求信息预先指定的云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型,对节点内计算资源分配进行更新,进一步为目标计算单元分配待使用的资源,达到了根据资源使用需求对云原生平台中的节点内的目标计算单元所使用的资源进行动态分配的目的,从而实现了对云原生平台资源进行灵活分配以优化资源使用、满足云原生网络功能需求的技术效果,进而解决了相关技术提供的云原生平台资源分配方法其难以满足云原生网络功能需求、资源利用效率低且灵活度差的技术问题。
本领域普通技术人员可以理解,图23所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图23其并不对上述电子装置的结构造成限定。例如,计算机终端还可包括比图23中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图23所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
根据本发明实施例,还提供了一种计算机可读存储介质的实施例。可选地,在本实施例中,上述计算机可读存储介质可以用于保存上述实施例1至3所提供的云原生平台资源分配方法所执行的程序代码。
可选地,在本实施例中,上述计算机可读存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取资源使用需求信息,其中,资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及待使用的资源对应的资源池类型;基于资源使用需求信息对节点内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:在目标计算单元的创建过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表对应的资源池类型对计算资源分配进行更新,得到更新结果。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:基于当前资源列表对应的共享资源池或者独占资源池,确定目标计算单元的资源分配结果;利用资源分配结果对计算资源分配进行更新,得到更新结果。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应于当前资源列表对应的资源池类型为共享资源池,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果;响应于当前资源列表对应的资源池类型为独占资源池,从节点内除目标计算单元之外的其余计算单元中删除当前资源列表中记录的资源,为目标计算单元绑定当前资源列表中记录的资源,得到资源分配结果。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为独占资源池,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源;在目标计算单元的清除过程中,响应于当前资源列表对应的资源池类型为共享资源池且节点内除目标计算单元之外的其余计算单元均未使用当前资源列表中记录的资源,控制节点内除目标计算单元之外的其余计算单元回收当前资源列表中记录的资源。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:在目标计算单元的更新过程中,从资源使用需求信息中获取待使用的资源声明的当前资源列表;基于当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到更新结果。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应于通过比对结果确定当前资源列表中记录的资源多于历史资源列表中记录的资源,基于比对结果确定待扩容资源,从节点内除目标计算单元之外的其余计算单元中删除待扩容资源,为目标计算单元绑定待扩容资源以得到绑定结果,并基于绑定结果对计算资源分配进行更新,得到更新结果;响应于通过比对结果确定当前资源列表中记录的资源少于历史资源列表中记录的资源,基于比对结果确定待缩容资源,将待缩容资源从目标计算单元释放至节点内除目标计算单元之外的其余计算单元以得到释放结果,并基于释放结果对计算资源分配进行更新,得到更新结果。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:配置预设映射关系,其中,预设映射关系用于确定目标计算单元中的每个线程与待使用的资源之间的亲和关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应作用于图形用户界面的第三触控操作,配置目标计算单元中的每个线程与待使用的资源之间的预设映射关系;基于预设映射关系,对目标计算单元中的每个线程与待使用的资源执行绑定操作。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在工业互联网场景下进行数据采集与感知的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:响应作用于图形用户界面的第一触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定目标计算单元待使用的资源;响应作用于图形用户界面的第二触控操作,经由预设资源定义接口在资源使用需求信息中自定义指定待使用的资源对应的资源池类型;基于资源使用需求信息对计算资源分配进行更新以得到更新结果,并按照更新结果为目标计算单元分配待使用的资源。
可选地,在本实施例中,计算机可读存储介质被设置为存储用于执行以下步骤的程序代码:获取资源使用需求信息,其中,资源使用需求信息用于预先指定在虚拟现实或增强现实游戏场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及待使用的资源对应的资源池类型,待使用的资源包括:在虚拟现实或增强现实游戏场景下进行多人联机游戏待使用的处理器资源与存储资源;基于资源使用需求信息对服务器内计算资源分配进行更新,得到更新结果;按照更新结果为目标计算单元分配待使用的资源。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本发明所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、ROM、RAM、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种云原生平台资源分配方法,其特征在于,包括:
获取资源使用需求信息,其中,所述资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及所述待使用的资源对应的资源池类型;
基于所述资源使用需求信息对所述节点内计算资源分配进行更新,得到更新结果;
按照所述更新结果为所述目标计算单元分配所述待使用的资源。
2.根据权利要求1所述的云原生平台资源分配方法,其特征在于,基于所述资源使用需求信息对计算资源分配进行更新,得到所述更新结果包括:
在所述目标计算单元的创建过程中,从所述资源使用需求信息中获取所述待使用的资源声明的当前资源列表;
基于所述当前资源列表对应的所述资源池类型对计算资源分配进行更新,得到所述更新结果。
3.根据权利要求2所述的云原生平台资源分配方法,其特征在于,所述资源池类型包括:共享资源池和独占资源池,基于所述当前资源列表对应的所述资源池类型对计算资源分配进行更新,得到所述更新结果包括:
基于所述当前资源列表对应的所述共享资源池或者所述独占资源池,确定所述目标计算单元的资源分配结果;
利用所述资源分配结果对计算资源分配进行更新,得到所述更新结果。
4.根据权利要求3所述的云原生平台资源分配方法,其特征在于,基于所述当前资源列表对应的所述共享资源池或者所述独占资源池,确定所述目标计算单元的所述资源分配结果包括:
响应于所述当前资源列表对应的所述资源池类型为所述共享资源池,为所述目标计算单元绑定所述当前资源列表中记录的资源,得到所述资源分配结果;
响应于所述当前资源列表对应的所述资源池类型为所述独占资源池,从所述节点内除所述目标计算单元之外的其余计算单元中删除所述当前资源列表中记录的资源,为所述目标计算单元绑定所述当前资源列表中记录的资源,得到所述资源分配结果。
5.根据权利要求2所述的云原生平台资源分配方法,其特征在于,所述云原生平台资源分配方法还包括:
在所述目标计算单元的清除过程中,响应于所述当前资源列表对应的所述资源池类型为独占资源池,控制所述节点内除所述目标计算单元之外的其余计算单元回收所述当前资源列表中记录的资源;
在所述目标计算单元的清除过程中,响应于所述当前资源列表对应的所述资源池类型为共享资源池且所述节点内除所述目标计算单元之外的其余计算单元均未使用所述当前资源列表中记录的资源,控制所述节点内除所述目标计算单元之外的其余计算单元回收所述当前资源列表中记录的资源。
6.根据权利要求1所述的云原生平台资源分配方法,其特征在于,基于所述资源使用需求信息对计算资源分配进行更新,得到所述更新结果包括:
在所述目标计算单元的更新过程中,从所述资源使用需求信息中获取所述待使用的资源声明的当前资源列表;
基于所述当前资源列表与历史资源列表之间的比对结果,对计算资源分配进行更新,得到所述更新结果。
7.根据权利要求6所述的云原生平台资源分配方法,其特征在于,基于所述当前资源列表与所述历史资源列表之间的所述比对结果,对计算资源分配进行更新,得到所述更新结果包括:
响应于通过所述比对结果确定所述当前资源列表中记录的资源多于所述历史资源列表中记录的资源,基于所述比对结果确定待扩容资源,从所述节点内除所述目标计算单元之外的其余计算单元中删除所述待扩容资源,为所述目标计算单元绑定所述待扩容资源以得到绑定结果,并基于所述绑定结果对计算资源分配进行更新,得到所述更新结果;
响应于通过所述比对结果确定所述当前资源列表中记录的资源少于所述历史资源列表中记录的资源,基于所述比对结果确定待缩容资源,将所述待缩容资源从所述目标计算单元释放至所述节点内除所述目标计算单元之外的其余计算单元以得到释放结果,并基于所述释放结果对计算资源分配进行更新,得到所述更新结果。
8.根据权利要求1所述的云原生平台资源分配方法,其特征在于,所述云原生平台资源分配方法还包括:
配置预设映射关系,其中,所述预设映射关系用于确定所述目标计算单元中的每个线程与所述待使用的资源之间的亲和关系;
基于所述预设映射关系,对所述目标计算单元中的每个线程与所述待使用的资源执行绑定操作。
9.根据权利要求1所述的云原生平台资源分配方法,其特征在于,通过云原生平台提供一图形用户界面,所述图形用户界面所显示的内容至少部分地包含一通信工作场景,所述方法还包括:
响应作用于所述图形用户界面的第一触控操作,经由预设资源定义接口在所述资源使用需求信息中自定义指定所述目标计算单元待使用的资源;
响应作用于所述图形用户界面的第二触控操作,经由所述预设资源定义接口在所述资源使用需求信息中自定义指定所述待使用的资源对应的所述资源池类型;
基于所述资源使用需求信息对计算资源分配进行更新以得到所述更新结果,并按照所述更新结果为所述目标计算单元分配所述待使用的资源。
10.根据权利要求9所述的云原生平台资源分配方法,其特征在于,所述云原生平台资源分配方法还包括:
响应作用于所述图形用户界面的第三触控操作,配置所述目标计算单元中的每个线程与所述待使用的资源之间的预设映射关系;
基于所述预设映射关系,对所述目标计算单元中的每个线程与所述待使用的资源执行绑定操作。
11.一种云原生平台资源分配方法,其特征在于,包括:
获取资源使用需求信息,其中,所述资源使用需求信息用于预先指定在工业互联网场景下使用的云原生平台中服务器内的目标计算单元待使用的资源以及所述待使用的资源对应的资源池类型,所述待使用的资源包括:在所述工业互联网场景下进行数据采集与感知的处理器资源与存储资源;
基于所述资源使用需求信息对所述服务器内计算资源分配进行更新,得到更新结果;
按照所述更新结果为所述目标计算单元分配所述待使用的资源。
12.根据权利要求11所述的云原生平台资源分配方法,其特征在于,通过云原生平台提供一图形用户界面,所述图形用户界面所显示的内容至少部分地包含一工业互联网场景,所述方法还包括:
响应作用于所述图形用户界面的第一触控操作,经由预设资源定义接口在所述资源使用需求信息中自定义指定所述目标计算单元待使用的资源;
响应作用于所述图形用户界面的第二触控操作,经由所述预设资源定义接口在所述资源使用需求信息中自定义指定所述待使用的资源对应的所述资源池类型;
基于所述资源使用需求信息对计算资源分配进行更新以得到所述更新结果,并按照所述更新结果为所述目标计算单元分配所述待使用的资源。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至12中任意一项所述的云原生平台资源分配方法。
14.一种电子设备,其特征在于,包括:
处理器;以及
存储器,与所述处理器连接,用于为所述处理器提供处理以下处理步骤的指令:
获取资源使用需求信息,其中,所述资源使用需求信息用于预先指定云原生平台中的节点内目标计算单元待使用的资源以及所述待使用的资源对应的资源池类型;
基于所述资源使用需求信息对所述节点内计算资源分配进行更新,得到更新结果;
按照所述更新结果为所述目标计算单元分配所述待使用的资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211568214.XA CN115643263B (zh) | 2022-12-08 | 2022-12-08 | 云原生平台资源分配方法、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211568214.XA CN115643263B (zh) | 2022-12-08 | 2022-12-08 | 云原生平台资源分配方法、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115643263A true CN115643263A (zh) | 2023-01-24 |
CN115643263B CN115643263B (zh) | 2023-03-21 |
Family
ID=84948025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211568214.XA Active CN115643263B (zh) | 2022-12-08 | 2022-12-08 | 云原生平台资源分配方法、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115643263B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115915457A (zh) * | 2023-01-30 | 2023-04-04 | 阿里巴巴(中国)有限公司 | 资源调度方法、车辆控制方法、设备及系统 |
CN116431357A (zh) * | 2023-06-13 | 2023-07-14 | 阿里巴巴(中国)有限公司 | 内核分配方法、分配组件、工作节点和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110532076A (zh) * | 2019-08-09 | 2019-12-03 | 济南浪潮数据技术有限公司 | 一种云资源创建的方法、系统、设备及可读存储介质 |
WO2020011214A1 (zh) * | 2018-07-13 | 2020-01-16 | 华为技术有限公司 | 管理虚拟化资源的方法和装置 |
CN112052068A (zh) * | 2020-08-17 | 2020-12-08 | 烽火通信科技股份有限公司 | 一种Kubernetes容器平台CPU绑核的方法与装置 |
US20210303365A1 (en) * | 2020-03-26 | 2021-09-30 | Vmware, Inc. | System and method for benchmarking a container orchestration platform |
CN114205230A (zh) * | 2021-12-13 | 2022-03-18 | 中国电信股份有限公司 | 云原生网元的配置方法、系统、介质及电子设备 |
CN114422618A (zh) * | 2021-12-31 | 2022-04-29 | 北京千方科技股份有限公司 | 基于云原生的iot平台协议适配方法、装置、设备及介质 |
CN114416352A (zh) * | 2021-12-29 | 2022-04-29 | 中国电信股份有限公司 | 算力资源分配方法、装置、电子设备及储存介质 |
CN114518955A (zh) * | 2021-12-27 | 2022-05-20 | 浪潮云信息技术股份公司 | 一种基于kubernetes的Flink云原生部署架构方法及系统 |
WO2022221260A1 (en) * | 2021-04-12 | 2022-10-20 | Intel Corporation | O-cloud lifecycle management service support |
-
2022
- 2022-12-08 CN CN202211568214.XA patent/CN115643263B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020011214A1 (zh) * | 2018-07-13 | 2020-01-16 | 华为技术有限公司 | 管理虚拟化资源的方法和装置 |
CN110532076A (zh) * | 2019-08-09 | 2019-12-03 | 济南浪潮数据技术有限公司 | 一种云资源创建的方法、系统、设备及可读存储介质 |
US20210303365A1 (en) * | 2020-03-26 | 2021-09-30 | Vmware, Inc. | System and method for benchmarking a container orchestration platform |
CN112052068A (zh) * | 2020-08-17 | 2020-12-08 | 烽火通信科技股份有限公司 | 一种Kubernetes容器平台CPU绑核的方法与装置 |
WO2022221260A1 (en) * | 2021-04-12 | 2022-10-20 | Intel Corporation | O-cloud lifecycle management service support |
CN114205230A (zh) * | 2021-12-13 | 2022-03-18 | 中国电信股份有限公司 | 云原生网元的配置方法、系统、介质及电子设备 |
CN114518955A (zh) * | 2021-12-27 | 2022-05-20 | 浪潮云信息技术股份公司 | 一种基于kubernetes的Flink云原生部署架构方法及系统 |
CN114416352A (zh) * | 2021-12-29 | 2022-04-29 | 中国电信股份有限公司 | 算力资源分配方法、装置、电子设备及储存介质 |
CN114422618A (zh) * | 2021-12-31 | 2022-04-29 | 北京千方科技股份有限公司 | 基于云原生的iot平台协议适配方法、装置、设备及介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115915457A (zh) * | 2023-01-30 | 2023-04-04 | 阿里巴巴(中国)有限公司 | 资源调度方法、车辆控制方法、设备及系统 |
CN115915457B (zh) * | 2023-01-30 | 2023-05-23 | 阿里巴巴(中国)有限公司 | 资源调度方法、车辆控制方法、设备及系统 |
CN116431357A (zh) * | 2023-06-13 | 2023-07-14 | 阿里巴巴(中国)有限公司 | 内核分配方法、分配组件、工作节点和存储介质 |
CN116431357B (zh) * | 2023-06-13 | 2023-12-01 | 阿里巴巴(中国)有限公司 | 内核分配方法、分配组件、工作节点和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115643263B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115643263B (zh) | 云原生平台资源分配方法、存储介质和电子设备 | |
KR100628492B1 (ko) | 실시간 동작 수행방법 및 시스템 | |
US11947697B2 (en) | Method and system to place resources in a known state to be used in a composed information handling system | |
KR100649107B1 (ko) | 실시간 동작 수행방법 및 시스템 | |
CN107222531B (zh) | 一种容器云资源调度方法 | |
EP4273700A2 (en) | Computing resource allocation | |
CN111796908B (zh) | 一种资源自动弹性伸缩的系统、方法及云平台 | |
US20190227781A1 (en) | Methods and systems that carry out live migration of multi-node applications | |
KR20050016170A (ko) | 실시간 동작 수행방법 및 시스템 | |
KR20050000487A (ko) | 스케줄링 방법 및 실시간 처리시스템 | |
CN111045786B (zh) | 一种云环境下的基于镜像分层技术的容器创建系统及方法 | |
CN109992373B (zh) | 资源调度方法、信息管理方法和装置及任务部署系统 | |
CN117480494A (zh) | 改进虚拟计算环境中资源分配的协调容器调度 | |
CN115858083A (zh) | 容器cpu资源调度与隔离方法和装置、存储介质及电子设备 | |
CN112835524A (zh) | 存储资源配置方法、存储资源控制器及调度系统 | |
CN112202843A (zh) | 一种控制节点的高可用系统及超融合系统 | |
US11057263B2 (en) | Methods and subsystems that efficiently distribute VM images in distributed computing systems | |
EP3430510B1 (en) | Operating system support for game mode | |
TWI827953B (zh) | 用於使用組合系統執行工作量之系統及方法 | |
CN114281442A (zh) | 一种云桌面客户端及其方法 | |
CN110874256A (zh) | 一种计算集群更新系统、方法及装置 | |
CN114281421B (zh) | 一种云桌面系统的驱动安装方法 | |
CN114500564B (zh) | 一种云桌面系统的客户端硬件适配方法 | |
CN117176818A (zh) | 云原生平台的业务执行方法、执行装置和电子设备 | |
CN115167983A (zh) | 应用编排流程的管理方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |