CN111666156B - 一种容器编排方法、装置、设备和存储介质 - Google Patents
一种容器编排方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN111666156B CN111666156B CN202010494825.9A CN202010494825A CN111666156B CN 111666156 B CN111666156 B CN 111666156B CN 202010494825 A CN202010494825 A CN 202010494825A CN 111666156 B CN111666156 B CN 111666156B
- Authority
- CN
- China
- Prior art keywords
- container
- container arrangement
- adjustment information
- execution
- arrangement
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种容器编排方法、装置、设备及存储介质,包括:基于***软件单元根据容器编排需求指令执行容器编排操作;基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息;容器编排操作基于容器编排调整信息进行更新。基于包含异构硬件单元的***进行容器编排,使得容器编排方法支持多架构平台扩展,并且能够根据异构硬件单元反馈的编排调整信息进行容器编排操作的更新,从而提高了容器编排操作的效率和准确性。
Description
技术领域
本发明实施例涉及容器编排技术领域,尤其涉及一种容器编排方法、装置、设备及存储介质。
背景技术
为了有效的管理和控制容器集群,容器编排工具提供了有用且功能强大的解决方案,用于跨多个主机协调创建,管理和更新多个容器。目前在进行容器编排时通常采用的是Docker-Swarm、亚马逊可扩展的容器管理服务(Amazon Elastic Container Service,Amazon ECS)或Kubernetes三种方法。
但是针对Docker-Swarm依赖于软件平台,不能在不同平台运行相同运用、并且只能适用于x86架构;Amazon ECS的结构非常庞大,因此平台成本和应用转换成本过高,需要复杂的成本结构和管理***,并且应用移植到平台需要重构;Kubernetes由于组件模块较多因此通信复杂,并且部署复杂技术成本过高,同时也不支持异构硬件平台的扩展,因此现有的容器编排方法并不能满足用户的容器编排需求。
发明内容
本发明实施例提供了一种容器编排方法、装置、设备及存储介质。以实现对容器的编排。
第一方便,本发明实施例提供了一种容器编排方法,容器编排***包括:由至少一个服务器节点合并构成,并且每一个服务器节点中包括***软件单元和异构硬件单元;
基于***软件单元根据容器编排需求指令执行容器编排操作;
基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息;
容器编排操作基于容器编排调整信息进行更新。
第二方面,本发明实施例提供了一种容器编排装置,包括:
容器编排模块,用于基于***软件单元根据容器编排需求指令执行容器编排操作;
调整信息获取模块,用于基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息;
编排操作更新模块,用于容器编排操作基于容器编排调整信息进行更新。
第三方面,本发明实施例提供了一种设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述方法。
第四方面,本发明实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法。
本发明实施例的技术方案,基于包含异构硬件单元的***进行容器编排,使得容器编排方法支持多架构平台扩展,并且能够根据异构硬件单元反馈的编排调整信息进行容器编排操作的更新,从而提高了容器编排操作的效率和准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1(a)是本发明实施例一提供的容器编排***的结构示意图;
图1(b)是本发明实施例一提供的容器编排方法的流程图;
图2是本发明实施例二提供的容器编排方法的流程图;
图3是本发明实施例三提供的容器编排装置的结构示意图
图4是本发明实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1(a)是本发明实施例一中的容器编排***结构示意图,由至少一个服务器节点合并构成,并且每一个服务器节点中包括***软件单元OS和异构硬件单元Hardware,并且为了提高容器编排***的算力,通过硬件总线将每一个服务器节点中的异构硬件单元进行链接,以实现硬件功能的合并。进行异构硬件单元合并的多个服务器节点可以同时支持运行在***软件单元中所执行的同一任务,每一个服务器节点可以分别完成同一操作步骤的不同部分,从而实现了任务的分担,加快容器编排工作的效率。
其中,如图1(a)虚线框所示为对任意一个服务器节点中异构硬件单元结构的具体说明,当然,对于其它服务器节点中异构硬件单元的结构与此基本相同,本实施方式中没有进行赘述。
需要说明的是,本实施方式中的容器编排***是基于异构硬件平台作为实现基础,并且在***中的每个服务器节点中分布式部署容器编排工具,并基于服务器节点的***软件单元运行所部署的容器编排工具,并且***中通过硬件总线将多个服务器节点进行链接,以实现多个服务器节点的协同工作。在***中的每个服务器节点分别部署硬件的相关驱动,例如,通用串行总线(Universal Serial Bus,USB),人机接口设置(HumanInterface Device,HID)等,本申请实施方式中并不限定驱动的具体类型。另外在每个服务器节点的异构硬件单元中分别嵌入有处理模块,以通过所嵌入的处理模块对执行容器编排的数据进行处理。
如图1(b)所示为本本申请实施例一提供的容器编排方法的流程图,本实施例可适用于对容器进行编排的情况,该方法可以由本发明实施例中的容器编排装置来执行,该装置可以采用软件和/或硬件的方式实现。如图1(b)所示,该方法具体包括如下操作:
步骤101,基于***软件单元根据容器编排需求指令执行容器编排操作。
可选的,基于***软件单元根据容器编排需求指令执行容器编排操作可以包括:根据每一个服务器节点当前的负载状况将容器编排需求指令分布到每一个服务器节点;通过每一个服务器节点根据所分布的容器编排需求指令,基于***软件单元执行所对应的容器编排操作。
可选的,容器编排需求指令包括:容器数量、每一个容器所具备的功能以及待执行事务。
可选的,基于***软件单元根据容器编排需求指令执行容器编排操作可以包括:基于***软件单元根据容器数量和每一个容器所具备的功能进行容器创建;根据所创建的容器执行待执行事务。
具体的说,由于容器编排***中每一个服务器节点是通过硬件总线进行硬件合并的,因此每一个服务器节点可以分别执行同一任务的一部分,从而提高了整个***的总体算力。并且具体是通过运行在服务器节点***软件单元OS上的编排工具软件代码实现容器编排的相关操作。
其中,运行在***软件单元OS上的编排工具可以包括:应用程序接口服务APIserver、控制器管理器Controller Manager、指令存储数据库ETCD和事务执行安排Scheduler,当然,本实施方式中仅是举例进行说明,而并不限定运行在***软件单元OS编排工具的具体构成,只要能够实现容器的编排都是在本申请的保护范围内。并且在进行容器编排时是多个服务器节点通过运行***软件单元OS上的编排工具协同工作的。
在一个具体实现中,以容器编排***由两个服务器节点合并构成为例进行说明。容器编排***包括用户接口,通过用户接口获取用户所输入的容器编排需求指令包括:容器数量4;容器1具备存储功能、容器2具备http协议功能、容器3具备数据传输功能、容器4具备数据校验功能;待执行任务是:结合容器2和容器3执行任务A。此时容器编排***会根据每一个服务器节点当前的负载状况将容器编排需求指令分布到两个服务器节点,通过每一个服务器节点根据所分布的容器编排需求指令,基于***软件单元执行所对应的容器编排操作,并获取与容器编排操作所对应的处理数据。
其中,在进行容器创建时,服务器节点当前的负载越大,则分配的创建容器任务就较小,当两个服务节点的负载状况相同时,则可以分配相同大小的容器创建任务,例如,容器编排需求指令中要求创建10个容器,第一个服务器节点中的应用程序接口服务APIserver创建出5个容器,并通过控制器管理器Controller Manager为每一个容器配置对应的功能;第二个服务器节点中的应用程序接口服务API server创建出另外5个容器,并通过控制器管理器Controller Manager为每一个容器配置对应的功能,从而实现了两个服务器节点共同完成10个容器的创建过程,与容器创建过程原理类似,在根据所创建的容器执行任务A时第一服务节点和第二服务节点也可以协同完成。
其中,本实施方式中的***软件单元中不仅包括编排工具,还包括网络组件和运行环境,以支持编排工具的正常运行。并且上述工作的执行是基于多个服务节点进行硬件合并完成的情况下实现的。
需要说明的是,在本实施方式中的容器编排***中还可以开发多种商业应用,以实现商业应用在模型中相互扩展支持,因此可以形成大规模的应用生态环境,以丰富容器编排***的功能。
步骤102,基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息。
可选的,异构硬件单元中可以包括异构设备、控制器和容器编排加速模块;其中,异构设备的类型包括中央处理器(Central Processing Unit,CPU)、图形处理器(GraphicsProcessing Unit,GPU)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)和数字信号处理器(Digital Signal Processor,DSP)。
其中,本实施方式中异构硬件单元中异构设备的类型至少包括两个不同类型的异构设备,例如,CPU+GPU、CPU+FPGA、CPU+ASIC或FPGA+DSP等。并且每一个服务器节点中异构设备的组合可以相同或不同,例如第一个服务器节点中异构设备包括CPU+GPU、第二个服务节点中异构设备包括CPU+FPGA,本申请实施方式中并不限定每一个服务节点异构硬件单元中异构设备的具体组合方式。并且在通过硬件总线将服务器节点合并可以实现异构平台中不同类型异构设备的计算资源的整合。
需要说明的是,本实施方式中的异构硬件单元中还可以包括主板、风扇和数据线等常规结构,而图1(a)中仅是将对容器编排比较重要的结构进行标识,对其它常规结构进行了省略。
可选的,基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息,可以包括:基于异构硬件单元获取执行容器创建所对应的容器创建数据,以及获取执行待执行事务所对应的事务执行数据;将容器创建数据和事务执行数据作为处理数据;通过控制器控制容器编排加速模块将处理数据按照预设类型进行分类获得至少两个分类数据;根据至少两个分类数据获得容器编排调整信息。
可选的,根据至少两个分类数据获得容器编排调整信息,可以包括:采用容器编排加速模块将至少两个分类数据进行预处理获得至少两个处理后的分类数据;根据至少两个处理后的分类数据确定容器编排的调整方式,根据容器编排的调整方式确定容器编排调整信息。
其中,在根据至少两个处理后的分类数据确定容器编排的调整方式,具体可以是根据至少两个处理后的分类数据获取容器编排的状况,并根据容器编排的状况确定容器编排的调整方式。
具体的说,针对每一个服务器节点由于异构硬件单元中包括两个类型的异构设备,因此针对一个服务器节点在进行容器创建和事务执行时具体是两个类型的异构设备同时运行的,例如,第一个服务器节点中的异构硬件单元是CPU+FPGA的组合时,FPGA中可以包括两个存储单元MEM,而CPU中包括一个存储单元MEM,因此FPGA的算力要强于CPU。因此每一个服务器节点会基于异构硬件单元获取执行容器创建所对应的容器创建数据,以及获取执行待执行事务所对应的事务执行数据,其中,容器创建数据中可以包括:运行在每一个服务器节点编排工具完成容器创建所占用的时间、所消耗的计算资源,并且容器创建数据可以采用日志的形式进行记录,而事务执行数据也可以采用日志的形式进行记录,并将上述所获得的容器创建数据和事务执行数据作为容器编排过程所对应的处理数据。并且控制器会调用输入/输出缓存来控制容器编排加速模块将处理数据按照预设类型进行分类获得至少两个分类数据,例如,将处理数据中所包含的业务数据作为第一类数据,将操作数据作为第二类数据,将通信信号数据作为第三类数据。当然,本实施方式中仅是举例进行说明,可以采用提前设定预设类型,将处理数据按照所设定的预设类型进行区分,也可以根据处理数据的实际内容进行随机分类,本申请实施方式中并不限定处理数据的具体分类方式。
其中,容器编排加速模块在获取到不同类型的数据之后,会将每一个分类数据进行预处理获得至少两个处理后的分类数据。其中预处理包括清洗、分析、筛选等处理数据的去噪处理,并根据至少两个处理后的分类数据获得容器编排的状况,例如,根据业务数据确定服务器节点1和服务器节点2中分别创建了5个容器,但根据操作数据确定服务器节点1的创建时间为5秒、服务器节点2的创建时间为2秒,因此可以确定容器编排的状况为服务器节点1的性能要强于服务器节点2,因此根据当前容器编排状况进行分析可以确定容器编排的调整方式,即在预设范围内减少服务器节点1的容器创建任务,同时增加服务器节点2的容器创建任务,并根据容器编排的调整方式确定容器编排调整信息。由于已经确定了容器编排的调整方式,则根据提前设置的调整量可以确定容器编排调整信息,例如,所根据调整方式以及调整量所确定的容器编排调整信息为:在下次容器编排过程中采用服务器节点1创建3个容器,而服务器节点2创建7个容器,以缩短容器创建时间。其中,关于每次增加或减少的创建容器的具体数量可以提前设置,也可以设置预设范围,在预设范围内自动进行调节,本实施方式中并不限定获得容器编排调整信息的具体方式。
步骤103,容器编排操作基于容器编排调整信息进行更新。
可选的,将容器编排调整信息传输给***软件单元,以使运行在***软件单元上的容器编排操作基于容器编排调整信息进行更新。
具体的说,在获得容器编排调整信息后,可以将容器编排调整信息传输给***软件单元,并且具体是传输给运行在***软件单元OS编排工具中的应用程序接口服务APIserver,以使运行在***软件单元API server上的容器编排操作基于容器编排调整信息进行更新。
例如,在确定容器编排调整信息为:在下次容器编排过程中可以采用服务器节点1创建3个容器,而服务器节点2创建7个容器,从而根据所获取的容器编排调整信息对原始的容器编排操作“服务器节点1和服务器节点2中分别创建了5个容器”进行更新,从而针对后续所接收到的容器编排需求指令可以按照更新后的容器编排操作执行。
本发明实施例的技术方案,基于包含异构硬件单元的***进行容器编排,使得容器编排方法支持多架构平台扩展,并且能够根据异构硬件单元反馈的编排调整信息进行容器编排操作的更新,从而提高了容器编排操作的效率和准确性。
实施例二
图2是本发明实施例二提供的一种容器编排方法的流程图,本实施例以上述实施例为基础,在本实施中,根据容器编排调整信息对容器编排操作进行更新之后,还包括:对容器编排操作更新结果进行检测。
步骤201,基于***软件单元根据容器编排需求指令执行容器编排操作。
可选的,基于***软件单元根据容器编排需求指令执行容器编排操作可以包括:根据每一个服务器节点当前的负载状况将容器编排需求指令分布到每一个服务器节点;通过每一个服务器节点根据所分布的容器编排需求指令,基于***软件单元执行所对应的容器编排操作。
可选的,容器编排需求指令包括:容器数量、每一个容器所具备的功能以及待执行事务。
可选的,基于***软件单元根据容器编排需求指令执行容器编排操作可以包括:基于***软件单元根据容器数量和每一个容器所具备的功能进行容器创建;根据所创建的容器执行待执行事务。
步骤202,基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息。
可选的,异构硬件单元中可以包括异构设备、控制器和容器编排加速模块;其中,异构设备的类型包括中央处理器(Central Processing Unit,CPU)、图形处理器(GraphicsProcessing Unit,GPU)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)和数字信号处理器(Digital Signal Processor,DSP)。
可选的,基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息,可以包括:基于异构硬件单元获取执行容器创建所对应的容器创建数据,以及获取执行待执行事务所对应的事务执行数据;将容器创建数据和事务执行数据作为处理数据;通过控制器控制容器编排加速模块将处理数据按照预设类型进行分类获得至少两个分类数据;根据至少两个分类数据获得容器编排调整信息。
可选的,根据至少两个分类数据获得容器编排调整信息,可以包括:采用容器编排加速模块将至少两个分类数据进行预处理获得至少两个处理后的分类数据;根据至少两个处理后的分类数据确定容器编排的调整方式,根据容器编排的调整方式确定容器编排调整信息。
步骤203,容器编排操作基于容器编排调整信息进行更新。
可选的,将容器编排调整信息传输给***软件单元,以使运行在***软件单元上的容器编排操作基于容器编排调整信息进行更新。
步骤204,对容器编排操作更新结果进行检测。
具体的说,本实施方式中在根据容器编排调整信息对容器编排操作进行更新之后,通过对容器编排操作更新结果进行检测,可以确定容器编排调整信息的准确性,例如,原始容器进行创建时所采用的是服务器节点1和服务器节点2分别创建5个,创建所采用的时间为3秒,经过对容器编排操作进行更新后采用服务器节点1创建3个,而服务器节点2创建7个,但是创建所采用的时间为5秒,因此通过对容器编排操作更新结果进行检测,确定创建时间变长,从而可以确定所获得的容器编排指令是错误的,此时可能是服务节点的硬件单元出现了损坏或者是***软件单元的运行出现了故障,因此在这种情况下需要对容器编排***进行及时检修。
实施例三
图3是本发明实施例三提供的容器编排装置的结构示意图,该装置包括:容器编排模块301、调整信息获取模块302和编排操作更新模块303。
其中,容器编排模块301,用于基于***软件单元根据容器编排需求指令执行容器编排操作;
调整信息获取模块302,用于基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息;
编排操作更新模块303,用于容器编排操作基于容器编排调整信息进行更新。
上述装置可执行本发明任意实施例所提供的容器编排方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的容器编排方法。
实施例四
本发明第四实施方式涉及一种设备,如图4所示为设备的结构实例图,包括至少一个处理器401;以及,与至少一个处理器401通信连接的存储器402。其中,存储器402存储有可被至少一个处理器401执行的指令,指令被至少一个处理器401执行,以使至少一个处理器401能够执行容器编排方法。
其中,处理器401、存储器402可以通过总线或者其他方式连接,图4中以通过总线连接为例,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器401、存储器402的各种电路链接在一起。总线还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,***接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有发明实施例提供的容器编排方法:基于***软件单元根据容器编排需求指令执行容器编排操作;基于异构硬件单元获取执行容器编排操作所对应的处理数据,并根据处理数据获得容器编排调整信息;容器编排操作基于容器编排调整信息进行更新。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种容器编排方法,应用于容器编排***,其特征在于,所述容器编排***包括:由至少一个服务器节点合并构成,并且每一个所述服务器节点中包括***软件单元和异构硬件单元;
基于所述***软件单元根据容器编排需求指令执行容器编排操作;
基于所述异构硬件单元获取执行所述容器编排操作所对应的处理数据,并根据所述处理数据获得容器编排调整信息;
所述容器编排操作基于所述容器编排调整信息进行更新;
所述基于所述异构硬件单元获取执行所述容器编排操作所对应的处理数据,并根据所述处理数据获得容器编排调整信息包括:基于所述异构硬件单元获取执行容器创建所对应的容器创建数据,以及获取执行待执行事务所对应的事务执行数据;将所述容器创建数据和所述事务执行数据作为所述处理数据;通过控制器控制容器编排加速模块将所述处理数据按照预设类型进行分类获得至少两个分类数据;根据所述至少两个分类数据获得所述容器编排调整信息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述***软件单元根据容器编排需求指令执行容器编排操作,包括:
根据每一个所述服务器节点当前的负载状况将所述容器编排需求指令分布到每一个所述服务器节点;
通过每一个所述服务器节点根据所分布的容器编排需求指令,基于所述***软件单元执行所对应的容器编排操作。
3.根据权利要求2所述的方法,其特征在于,所述容器编排需求指令包括:容器数量、每一个容器所具备的功能以及待执行事务。
4.根据权利要求3所述的方法,其特征在于,所述基于所述***软件单元根据容器编排需求指令执行容器编排操作,包括:
基于所述***软件单元根据所述容器数量和所述每一个容器所具备的功能进行容器创建;
根据所创建的容器执行所述待执行事务。
5.根据权利要求4所述的方法,其特征在于,所述异构硬件单元中包括异构设备、控制器和容器编排加速模块;
其中,所述异构设备的类型包括中央处理器CPU、图形处理器GPU、现场可编程门阵列FPGA、专用集成电路ASIC和数字信号处理器DSP。
6.根据权利要求1所述的方法,其特征在于,所述根据所述至少两个分类数据获得所述容器编排调整信息,包括:
采用所述容器编排加速模块将所述至少两个分类数据进行预处理获得至少两个处理后的分类数据;
根据至少两个处理后的分类数据确定容器编排的调整方式;
根据所述容器编排的调整方式确定所述容器编排调整信息。
7.根据权利要求1所述的方法,其特征在于,所述容器编排操作基于所述容器编排调整信息进行更新,包括:
将所述容器编排调整信息传输给所述***软件单元,以使运行在所述***软件单元上的所述容器编排操作基于所述容器编排调整信息进行更新。
8.一种容器编排装置,其特征在于,所述装置包括:
容器编排模块,用于基于***软件单元根据容器编排需求指令执行容器编排操作;
调整信息获取模块,用于基于异构硬件单元获取执行所述容器编排操作所对应的处理数据,并根据所述处理数据获得容器编排调整信息;
编排操作更新模块,用于所述容器编排操作基于所述容器编排调整信息进行更新;
所述基于所述异构硬件单元获取执行所述容器编排操作所对应的处理数据,并根据所述处理数据获得容器编排调整信息包括:基于所述异构硬件单元获取执行容器创建所对应的容器创建数据,以及获取执行待执行事务所对应的事务执行数据;将所述容器创建数据和所述事务执行数据作为所述处理数据;通过控制器控制容器编排加速模块将所述处理数据按照预设类型进行分类获得至少两个分类数据;根据所述至少两个分类数据获得所述容器编排调整信息。
9.一种容器编排设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010494825.9A CN111666156B (zh) | 2020-06-03 | 2020-06-03 | 一种容器编排方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010494825.9A CN111666156B (zh) | 2020-06-03 | 2020-06-03 | 一种容器编排方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111666156A CN111666156A (zh) | 2020-09-15 |
CN111666156B true CN111666156B (zh) | 2022-02-18 |
Family
ID=72385843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010494825.9A Active CN111666156B (zh) | 2020-06-03 | 2020-06-03 | 一种容器编排方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111666156B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107395731A (zh) * | 2017-07-28 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种基于服务编排的容器集群的调节方法和装置 |
US10922096B2 (en) * | 2018-02-28 | 2021-02-16 | Vmware, Inc. | Reducing subsequent network launch time of container applications |
CN108958882A (zh) * | 2018-06-06 | 2018-12-07 | 麒麟合盛网络技术股份有限公司 | 一种容器调整方法、装置和*** |
CN109067862B (zh) * | 2018-07-23 | 2020-10-16 | 北京邮电大学 | API Gateway自动伸缩的方法与装置 |
CN110377486B (zh) * | 2019-07-09 | 2022-07-08 | 福建南威软件有限公司 | 基于kafka实现稳定的高吞吐量的异步任务处理方法 |
CN110941495B (zh) * | 2019-12-10 | 2022-04-05 | 广西大学 | 一种基于图着色的容器协同编排方法 |
CN111147555B (zh) * | 2019-12-13 | 2020-08-25 | 苏州博纳讯动软件有限公司 | 一种异构资源混合编排的方法 |
-
2020
- 2020-06-03 CN CN202010494825.9A patent/CN111666156B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111666156A (zh) | 2020-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102493449B1 (ko) | 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 | |
EP3754496B1 (en) | Data processing method and related products | |
JP2020537784A (ja) | ニューラルネットワークアクセラレーションのための機械学習ランタイムライブラリ | |
US10977076B2 (en) | Method and apparatus for processing a heterogeneous cluster-oriented task | |
US20150052530A1 (en) | Task-based modeling for parallel data integration | |
US7685266B2 (en) | Management of tools that process data to describe a physical layout of a circuit | |
CN109117252B (zh) | 基于容器的任务处理的方法、***及容器集群管理*** | |
US20210382754A1 (en) | Serverless computing architecture for artificial intelligence workloads on edge for dynamic reconfiguration of workloads and enhanced resource utilization | |
CN109614227B (zh) | 任务资源调配方法、装置、电子设备及计算机可读介质 | |
US10970805B2 (en) | Graphics processing unit operation | |
CN111176818B (zh) | 分布式预测的方法、装置、***、电子设备及存储介质 | |
US20230153158A1 (en) | Method, apparatus, system, and storage medium for performing eda task | |
US8990294B2 (en) | File system optimization by log/metadata analysis | |
CN112579267A (zh) | 一种去中心化大数据作业流调度方法及装置 | |
DE102020119519A1 (de) | Verfahren und einrichtungen zum ermöglichen einer "out-of-order"-pipeline-ausführung der statischen abbildung einer arbeitslast | |
CN115373835A (zh) | Flink集群的任务资源调整方法、装置及电子设备 | |
US7539992B2 (en) | Scheduling method, program product for use in such method, and task scheduling apparatus | |
US20170060722A1 (en) | Test of the execution of workloads in a computing system | |
US20190163447A1 (en) | Dynamic accelerator generation and deployment | |
CN111666156B (zh) | 一种容器编排方法、装置、设备和存储介质 | |
CN114696888B (zh) | 卫星测运控***的端口任务处理方法、装置、设备及介质 | |
CN106502842A (zh) | 数据恢复方法及*** | |
EP4124945A1 (en) | System and method for batch and scheduler migration in an application environment migration | |
CN111352664A (zh) | 分布式机器学习任务启动方法、***、设备及存储介质 | |
US10824472B2 (en) | Coalescing multiple accelerators into a single accelerator |
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 |