CN112698914A - 一种工作流任务容器生成系统及方法 - Google Patents

一种工作流任务容器生成系统及方法 Download PDF

Info

Publication number
CN112698914A
CN112698914A CN202011627203.5A CN202011627203A CN112698914A CN 112698914 A CN112698914 A CN 112698914A CN 202011627203 A CN202011627203 A CN 202011627203A CN 112698914 A CN112698914 A CN 112698914A
Authority
CN
China
Prior art keywords
workflow
module
task container
container
resource
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
Application number
CN202011627203.5A
Other languages
English (en)
Other versions
CN112698914B (zh
Inventor
单承刚
夏元清
张金会
詹玉峰
郭泽华
刘坤
戴荔
翟弟华
邹伟东
孙中奇
崔冰
闫莉萍
张晓普
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202011627203.5A priority Critical patent/CN112698914B/zh
Publication of CN112698914A publication Critical patent/CN112698914A/zh
Application granted granted Critical
Publication of CN112698914B publication Critical patent/CN112698914B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种工作流任务容器生成系统及方法。该系统包括工作流注入模块以及工作流任务容器生成装置;工作流任务容器生成装置包括:工作流输入接口模块、工作流NameSpace生成模块、任务容器生成模块以及状态跟踪与资源监控模块;工作流输入接口模块分别与工作流注入模块、工作流NameSpace生成模块以及状态跟踪与资源监控模块连接;工作流NameSpace生成模块分别与任务容器生成模块以及所述状态跟踪与资源监控模块连接;任务容器生成模块与所述状态跟踪与资源监控模块连接。本发明保证了容器化工作流任务调度顺序与工作流调度算法任务执行顺序的一致性,有效降低了容器化工作流总执行时间,提高了工作流的执行效率。

Description

一种工作流任务容器生成系统及方法
技术领域
本发明涉及容器化工作流实现领域,特别是涉及一种工作流任务容器生成系统及方法
背景技术
工作流管理系统(Workflow Management System,WMS)使用调度算法约束工作流任务的执行顺序来提升性能和效率。目前一部分WMS已经提供了使用容器的操作,但是,将WMS调度算法和容器调度算法结合起来,还没有一个规范和标准。
工作流调度算法在任务先后依赖关系和执行顺序上是强约束的。而容器调度原生并不适用于工作流管理系统。在工作流任务先后依赖关系上,容器调度算法并不考虑任务容器的上下文,既容器调度算法不知道哪些任务依赖于某个容器内任务,或者这个任务本身依赖于其他容器内的任务。在执行顺序上,容器调度算法一般没有严格的先后顺序,而工作流调度算法通常会将工作流任务排序执行。随着云原生时代的到来,容器化工作流调度将是WMS拥抱云原生的最佳实践方法,也是提高工作流执行效率的有效途径。容器调度与工作流调度的结合势必会在工作流执行时间、资源利用率等方面产生巨大的影响和变革。
容器调度是大规模集群资源调度的有效方案,实现业务容器到集群Node节点的打散调度,这是调度算法综合打分的结果。所以容器调度算法不关注任务的先后依赖(上下文)关系和执行顺序。工作流任务提交的顺序和容器调度顺序的不一致,使得容器调度算法成为一种不可预测和不可靠的任务排序方法。
发明内容
本发明的目的是提供一种工作流任务容器生成系统及方法,保证了容器化工作流任务调度顺序与工作流调度算法任务执行顺序的一致性,为WMS调度算法和容器调度算法结合提供了一种有效接口和最佳实践,有效降低工作流总执行时间,提高了工作流的执行效率。
为实现上述目的,本发明提供了如下方案:
一种工作流任务容器生成系统,包括:工作流注入模块以及工作流任务容器生成装置;
所述工作流注入模块负责有执行顺序的工作流任务容器生成请求的产生,并按照依赖关系以gRPC通信方式依次注入所述工作流任务容器生成装置;
所述工作流任务容器生成装置包括:工作流输入接口模块、工作流NameSpace生成模块、任务容器生成模块以及状态跟踪与资源监控模块;
所述工作流输入接口模块分别与所述工作流注入模块、所述工作流NameSpace生成模块以及所述状态跟踪与资源监控模块连接;所述工作流输入接口模块用于接收所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块反馈的任务容器的状态;
所述工作流NameSpace生成模块分别与所述任务容器生成模块以及所述状态跟踪与资源监控模块连接;所述工作流NameSpace生成模块用于根据所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块反馈的任务容器的状态创建相应的工作流NameSpace;
所述任务容器生成模块与所述状态跟踪与资源监控模块连接;所述任务容器生成模块用于根据所述工作流NameSpace生成对应的任务容器;
所述状态跟踪与资源监控模块用于随时响应所述工作流NameSpace生成模块以及所述任务容器生成模块的资源监控请求,并为所述工作流NameSpace生成模块以及所述任务容器生成模块提供NameSpaceLister、NodeLister和PodLister资源列表,并跟踪各类资源的执行状态;所述状态跟踪与资源监控模块还用于监控任务容器的执行状态,并通过Event事件触发机制将所述任务容器的状态实时反馈至所述工作流输入接口模块;所述任务容器的状态包括成功的容器信息或者失败的容器信息。
可选的,还包括:资源采集分配模块;
所述资源采集分配模块分别与所述任务容器生成模块以及状态跟踪与资源监控模块连接;
所述资源采集分配模块用于调用所述状态跟踪与资源监控模块的监控程序获取K8s集群内的NodeLister和PodLister资源列表,并通过访问资源列表程序获取所述K8s集群内的剩余资源,进而结合全局工作流的资源请求需求,配合资源分配算法,分配相应的资源给所述任务容器生成模块。
可选的,还包括:工作流容器销毁模块;
所述工作流容器销毁模块分别与所述工作流输入接口模块、所述任务容器生成模块以及所述状态跟踪与资源监控模块连接;
所述工作流容器销毁模块用于删除所述状态跟踪与资源监控模块提供的指定状态的任务容器,或者任务执行完毕的工作流NameSpace;所述工作流容器销毁模块还用于当所述状态跟踪与资源监控模块监控到删除成功后,将任务容器删除信息反馈至所述工作流输入接口模块。
可选的,所述工作流容器销毁模块采用Client-go包的API的删除方法进行删除。
可选的,还包括:存储模块;
所述存储模块分别与所述工作流NameSpace生成模块以及所述任务容器生成模块连接。
一种工作流任务容器生成方法,应用于所述的一种工作流任务容器生成系统,所述的一种工作流任务容器生成方法,包括:
获取工作流的任务容器生成请求以及实时反馈的任务容器的状态;所述任务容器的状态包括成功的容器信息或者失败的容器信息;
根据所述工作流的任务容器生成请求以及实时反馈的任务容器的状态,调用K8s集群内的NameSpaceLister资源列表,创建相应的工作流NameSpace;
根据所述工作流NameSpace获取相应的PodLister资源列表;
根据所述PodLister资源列表判断所述工作流NameSpace对应的任务容器是否存在;
若存在,则删除已存在的任务容器,并返回所述工作流的任务容器生成请求以及实时反馈的任务容器的状态的步骤,重新生成任务容器;
若不存在,则获取所述K8s集群内的NodeLister和PodLister资源列表,并根据所述NodeLister和PodLister资源列表确定所述K8s集群内的剩余资源,进而结合全局的工作流的资源请求需求,配合资源分配算法,分配相应的资源生成所述工作流NameSpace对应的任务容器。
可选的,所述根据所述工作流的任务容器生成请求以及实时反馈的任务容器的状态,调用K8s集群内的NameSpaceLister资源列表,创建所述工作流NameSpace,具体包括:
判断所述工作流NameSpace是否存在所述工作流NameSpaceLister资源列表中;
若存在,则直接执行所述根据所述工作流NameSpace获取相应的PodLister资源列表的步骤;
若不存在,则创建所述工作流NameSpace。
可选的,所述若不存在,则创建所述工作流NameSpace,之后还包括:
根据所述工作流NameSpace,采用StorageClass方法,动态生成PV持久化存储卷。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种工作流任务容器生成系统及方法,基于实时状态反馈机制的工作流任务容器生成装置能够实时感知任务容器的执行状态,保证了容器化工作流任务调度顺序与工作流调度算法任务执行顺序的一致性,有效降低工作流总执行时间,提高了工作流的执行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种工作流任务容器生成系统结构示意图;
图2为本发明所提供的一种工作流任务容器生成系统原理示意图;
图3为本发明所提供的一种工作流任务容器生成方法流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种工作流任务容器生成系统及方法,保证了容器化工作流任务调度顺序与工作流调度算法任务执行顺序的一致性,为WMS调度算法和容器调度算法的结合提供了一种实践接口,有效降低工作流总执行时间,提高了工作流的执行效率。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
工作流注入模块1和工作流任务容器生成装置2分别容器化部署到K8s集群。工作流任务容器生成装置2运行时启动状态跟踪与资源监控模块204,采用Informer工具包(List/Watch方法)二次开发的监控程序,以及Event事件触发机制实时反馈监控的K8s(Kubernetes)集群的NameSpace、Pod以及Node等资源的状态。
图1为本发明所提供的一种工作流任务容器生成系统结构示意图,图2为本发明所提供的一种工作流任务容器生成系统原理示意图,如图1和图2所示,本发明所提供的一种工作流任务容器生成系统,包括:工作流注入模块1以及工作流任务容器生成装置2。
所述工作流注入模块1用于负责有执行顺序的工作流的任务容器生成请求的产生,并按照依赖关系以gRPC通信方式依次注入所述工作流任务容器生成装置2。
所述工作流任务容器生成装置2包括:工作流输入接口模块201、工作流NameSpace生成模块202、任务容器生成模块203以及状态跟踪与资源监控模块204。
所述工作流输入接口模块201分别与所述工作流注入模块1、所述工作流NameSpace生成模块202以及所述状态跟踪与资源监控模块204连接;所述工作流输入接口模块201用于接收所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块204反馈的任务容器的状态。
所述工作流NameSpace生成模块202分别与所述任务容器生成模块203以及所述状态跟踪与资源监控模块204连接;所述工作流NameSpace生成模块202用于根据所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块204反馈的任务容器的状态创建相应的工作流NameSpace。
所述任务容器生成模块203与所述状态跟踪与资源监控模块204连接;所述任务容器生成模块203用于根据所述工作流NameSpace生成对应的任务容器。
所述状态跟踪与资源监控模块204用于随时响应所述工作流NameSpace生成模块202以及所述任务容器生成模块203的资源监控请求,并为所述工作流NameSpace生成模块202以及所述任务容器生成模块203提供NameSpaceLister、NodeLister和PodLister资源列表,并跟踪各类资源的执行状态;所述状态跟踪与资源监控模块204还用于监控任务容器的执行状态,并将所述任务容器的状态,通过Event事件触发机制实时反馈至所述工作流输入接口模块201;所述任务容器的状态包括成功的容器信息或者失败的容器信息。
即当容器化部署时,启动状态跟踪与资源监控模块204,该模块通过监控程序实时监测NameSpace、Node及任务pod的生命周期状态,当任务容器状态为Succeeded或者Failed,通过Event事件触发模块实时反馈给工作流输入接口模块201该容器状态信息。同时调用工作流容器销毁模块206,并响应其他模块调用。
本发明所提供的一种工作流任务容器生成系统,还包括:资源采集分配模块205。
所述资源采集分配模块205分别与所述任务容器生成模块203以及状态跟踪与资源监控模块204连接。
所述资源采集分配模块205用于调用所述状态跟踪与资源监控模块204的监控程序获取K8s集群内的NodeLister和PodLister资源列表,并通过访问资源列表程序获取所述K8s集群内的剩余资源,进而结合全局工作流的资源请求需求,配合资源分配算法,分配相应的资源给所述任务容器生成模块203。
本发明所提供的一种工作流任务容器生成系统,还包括:工作流容器销毁模块206。
所述工作流容器销毁模块206分别与所述工作流输入接口模块201、所述任务容器生成模块203以及所述状态跟踪与资源监控模块204连接。
所述工作流容器销毁模块206用于删除所述状态跟踪与资源监控模块204提供的指定状态的任务容器,或者任务执行完毕的工作流NameSpace;所述工作流容器销毁模块206还用于当所述状态跟踪与资源监控模块204监控到删除成功后,将任务容器删除信息反馈至所述工作流输入接口模块201。
所述工作流容器销毁模块206采用Client-go包的API的删除方法进行删除。
作为一个具体的实施例,所述工作流输入接口模块201同时接收工作流任务容器销毁模块反馈的任务容器删除状态信息或者工作流NameSpace删除信息。当接收到工作流NameSpace删除信息时,Event事件触发工作流输入接口模块通过gRPC方式通知工作流注入模块开始下一工作流的输入。
本发明所提供的一种工作流任务容器生成系统,还包括:存储模块207。
所述存储模块207分别与所述工作流NameSpace生成模块202以及所述任务容器生成模块203连接。
在该K8s集群剩余资源充足的情况下,创建任务容器,设置容器优先级,容器Running状态下产生的数据写入PV/PVC方式的存储卷存入所述存储模块207。
根据所述工作流NameSpace,采用StorageClass方法,动态生成PV持久化存储卷存入所述存储模块207。
图3为本发明所提供的一种工作流任务容器生成方法流程示意图,如图3所示,本发明所提供的一种工作流任务容器生成方法,应用于所述的一种工作流任务容器生成系统,所述的一种工作流任务容器生成方法,包括:
S101,获取工作流的任务容器生成请求以及实时反馈的任务容器的状态;所述任务容器的状态包括成功的容器信息或者失败的容器信息。
S102,根据所述工作流的任务容器生成请求以及实时反馈的任务容器的状态,调用K8s集群内的NameSpaceLister资源列表,创建相应的工作流NameSpace。
S102具体包括:
判断所述工作流NameSpace是否存在所述工作流NameSpaceLister资源列表中。
若存在,则直接执行所述根据所述工作流NameSpace获取相应的PodLister资源列表的步骤。
若不存在,则创建所述工作流NameSpace。
所述若不存在,则创建所述工作流NameSpace,之后还包括:
根据所述工作流NameSpace,采用StorageClass方法,动态生成PV持久化存储卷。进而满足不同工作流的PVC声明需求。
S103,根据所述工作流NameSpace获取相应的PodLister资源列表。
S104,根据所述PodLister资源列表判断所述工作流NameSpace对应的任务容器是否存在。
S105,若存在,则删除已存在的任务容器,并返回所述工作流的任务容器生成请求以及实时反馈的任务容器的状态的步骤,重新生成任务容器。
S106,若不存在,则获取所述K8s集群内的NodeLister和PodLister资源列表,并根据所述NodeLister和PodLister资源列表确定所述K8s集群内的剩余资源,进而结合全局的工作流的资源请求需求,配合资源分配算法,分配相应的资源生成所述工作流NameSpace对应的任务容器。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种工作流任务容器生成系统,其特征在于,包括:工作流注入模块以及工作流任务容器生成装置;
所述工作流注入模块用于负责有执行顺序的工作流的任务容器生成请求的产生,并按照依赖关系以gRPC通信方式依次注入所述工作流任务容器生成装置;
所述工作流任务容器生成装置包括:工作流输入接口模块、工作流NameSpace生成模块、任务容器生成模块以及状态跟踪与资源监控模块;
所述工作流输入接口模块分别与所述工作流注入模块、所述工作流NameSpace生成模块以及所述状态跟踪与资源监控模块连接;所述工作流输入接口模块用于接收所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块反馈的任务容器的状态;
所述工作流NameSpace生成模块分别与所述任务容器生成模块以及所述状态跟踪与资源监控模块连接;所述工作流NameSpace生成模块用于根据所述工作流的任务容器生成请求以及所述状态跟踪与资源监控模块反馈的任务容器的状态创建相应的工作流NameSpace;
所述任务容器生成模块与所述状态跟踪与资源监控模块连接;所述任务容器生成模块用于根据所述工作流NameSpace生成对应的任务容器;
所述状态跟踪与资源监控模块用于随时响应所述工作流NameSpace生成模块以及所述任务容器生成模块的资源监控请求,并为所述工作流NameSpace生成模块以及所述任务容器生成模块提供NameSpaceLister、NodeLister和PodLister资源列表,并跟踪各类资源的执行状态;所述状态跟踪与资源监控模块还用于监控任务容器的执行状态,并将所述任务容器的状态采用Event事件触发机制实时反馈至所述工作流输入接口模块;所述任务容器的状态包括成功的容器信息或者失败的容器信息。
2.根据权利要求1所述的一种工作流任务容器生成系统,其特征在于,还包括:资源采集分配模块;
所述资源采集分配模块分别与所述任务容器生成模块以及状态跟踪与资源监控模块连接;
所述资源采集分配模块用于调用所述状态跟踪与资源监控模块的监控程序获取K8s集群内的NodeLister和PodLister资源列表,并通过访问资源列表程序获取所述K8s集群内的剩余资源,进而结合全局工作流的资源请求需求,配合资源分配算法,分配相应的资源给所述任务容器生成模块。
3.根据权利要求1所述的一种工作流任务容器生成系统,其特征在于,还包括:工作流容器销毁模块;
所述工作流容器销毁模块分别与所述工作流输入接口模块、所述任务容器生成模块以及所述状态跟踪与资源监控模块连接;
所述工作流容器销毁模块用于删除所述状态跟踪与资源监控模块提供的指定状态的任务容器,或者任务执行完毕的工作流NameSpace;所述工作流容器销毁模块还用于当所述状态跟踪与资源监控模块监控到删除成功后,将任务容器删除信息及执行完毕的工作流NameSpace信息反馈至所述工作流输入接口模块。
4.根据权利要求3所述的一种工作流任务容器生成系统,其特征在于,所述工作流容器销毁模块采用Client-go包的API的删除方法进行删除。
5.根据权利要求1所述的一种工作流任务容器生成系统,其特征在于,还包括:存储模块;
所述存储模块分别与所述工作流NameSpace生成模块以及所述任务容器生成模块连接。
6.一种工作流任务容器生成方法,应用于权利要求1-5任意一项所述的一种工作流任务容器生成系统,其特征在于,所述的一种工作流任务容器生成方法,包括:
获取工作流的任务容器生成请求以及实时反馈的任务容器的状态;所述任务容器的状态包括成功的容器信息或者失败的容器信息;
根据所述工作流的任务容器生成请求以及实时反馈的任务容器的状态,调用K8s集群内的NameSpaceLister资源列表,创建相应的工作流NameSpace;
根据所述工作流NameSpace获取相应的PodLister资源列表;
根据所述PodLister资源列表判断所述工作流NameSpace对应的任务容器是否存在;
若存在,则删除已存在的任务容器,并返回所述工作流的任务容器生成请求以及实时反馈的任务容器的状态的步骤,重新生成任务容器;
若不存在,则获取所述K8s集群内的NodeLister和PodLister资源列表,并根据所述NodeLister和PodLister资源列表确定所述K8s集群内的剩余资源,进而结合全局的工作流的资源请求需求,配合资源分配算法,分配相应的资源生成所述工作流NameSpace对应的任务容器。
7.根据权利要求6所述的一种工作流任务容器生成方法,其特征在于,所述根据所述工作流的任务容器生成请求以及实时反馈的任务容器的状态,调用K8s集群内的NameSpaceLister资源列表,创建所述工作流NameSpace,具体包括:
判断所述工作流NameSpace是否存在所述工作流NameSpaceLister资源列表中;
若存在,则直接执行所述根据所述工作流NameSpace获取相应的PodLister资源列表的步骤;
若不存在,则创建所述工作流NameSpace。
8.根据权利要求7所述的一种工作流任务容器生成方法,其特征在于,所述若不存在,则创建所述工作流NameSpace,之后还包括:
根据所述工作流NameSpace,采用StorageClass方法,动态生成PV持久化存储卷。
CN202011627203.5A 2020-12-30 2020-12-30 一种工作流任务容器生成系统及方法 Active CN112698914B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011627203.5A CN112698914B (zh) 2020-12-30 2020-12-30 一种工作流任务容器生成系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011627203.5A CN112698914B (zh) 2020-12-30 2020-12-30 一种工作流任务容器生成系统及方法

Publications (2)

Publication Number Publication Date
CN112698914A true CN112698914A (zh) 2021-04-23
CN112698914B CN112698914B (zh) 2022-12-27

Family

ID=75513313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011627203.5A Active CN112698914B (zh) 2020-12-30 2020-12-30 一种工作流任务容器生成系统及方法

Country Status (1)

Country Link
CN (1) CN112698914B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220357938A1 (en) * 2021-05-04 2022-11-10 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224375A (zh) * 2015-11-12 2016-01-06 用友网络科技股份有限公司 管理系统插件的监控系统和方法
US9256467B1 (en) * 2014-11-11 2016-02-09 Amazon Technologies, Inc. System for managing and scheduling containers
CN106844000A (zh) * 2016-12-21 2017-06-13 北京大学 一种多用户环境下利用浏览器访问Linux容器集群的方法和装置
CN107105009A (zh) * 2017-03-22 2017-08-29 北京荣之联科技股份有限公司 基于Kubernetes系统对接工作流引擎的作业调度方法和装置
US20180048545A1 (en) * 2016-08-11 2018-02-15 Hewlett Packard Enterprise Development Lp Container monitoring configuration deployment
CN109639791A (zh) * 2018-12-06 2019-04-16 广东石油化工学院 一种容器环境下云工作流调度方法及系统
US10467050B1 (en) * 2015-04-06 2019-11-05 State Farm Mutual Automobile Insurance Company Automated workflow creation and management
US10528367B1 (en) * 2016-09-02 2020-01-07 Intuit Inc. Execution of workflows in distributed systems
CN112015524A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 工作流部署方法、设备、系统及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9256467B1 (en) * 2014-11-11 2016-02-09 Amazon Technologies, Inc. System for managing and scheduling containers
US10467050B1 (en) * 2015-04-06 2019-11-05 State Farm Mutual Automobile Insurance Company Automated workflow creation and management
CN105224375A (zh) * 2015-11-12 2016-01-06 用友网络科技股份有限公司 管理系统插件的监控系统和方法
US20180048545A1 (en) * 2016-08-11 2018-02-15 Hewlett Packard Enterprise Development Lp Container monitoring configuration deployment
US10528367B1 (en) * 2016-09-02 2020-01-07 Intuit Inc. Execution of workflows in distributed systems
CN106844000A (zh) * 2016-12-21 2017-06-13 北京大学 一种多用户环境下利用浏览器访问Linux容器集群的方法和装置
CN107105009A (zh) * 2017-03-22 2017-08-29 北京荣之联科技股份有限公司 基于Kubernetes系统对接工作流引擎的作业调度方法和装置
CN109639791A (zh) * 2018-12-06 2019-04-16 广东石油化工学院 一种容器环境下云工作流调度方法及系统
CN112015524A (zh) * 2019-05-28 2020-12-01 阿里巴巴集团控股有限公司 工作流部署方法、设备、系统及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220357938A1 (en) * 2021-05-04 2022-11-10 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package
US11900089B2 (en) * 2021-05-04 2024-02-13 Red Hat, Inc. Automatically configuring and deploying a software operator in a distributed computing environment from a package

Also Published As

Publication number Publication date
CN112698914B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
CN107729139B (zh) 一种并发获取资源的方法和装置
US20120072579A1 (en) Monitoring cloud-runtime operations
CN107241281B (zh) 一种数据处理方法及其装置
CN103036946B (zh) 一种用于云平台处理文件备份任务的方法和系统
Andreetto et al. The gLite workload management system
CN105357296A (zh) 一种Docker云平台下弹性缓存系统
US9645809B2 (en) Updating software components through online stores
CN101667147A (zh) 一种多任务的可控自动快照方法
CN109697112B (zh) 分布式集约化一站式作业系统和实现方法
US20220283846A1 (en) Pod deployment method and apparatus
CN102420709A (zh) 一种基于任务框架的调度任务管理方法和设备
CN110968279A (zh) 一种消息的降级方法及相关装置
CN112698914B (zh) 一种工作流任务容器生成系统及方法
Stavrinides et al. The impact of checkpointing interval selection on the scheduling performance of real‐time fine‐grained parallel applications in SaaS clouds under various failure probabilities
CN115426361A (zh) 分布式客户端打包方法、装置、主服务器及存储介质
US11144359B1 (en) Managing sandbox reuse in an on-demand code execution system
CN111294377B (zh) 一种依赖关系的网络请求发送方法、终端装置及存储介质
CN107766156B (zh) 任务处理方法及装置
CN111522630B (zh) 基于批次调度中心的计划任务执行方法以及系统
CN103959276A (zh) 基于用户意图和进程独立性的知识的资源分配优先化
CN112019362B (zh) 数据传输方法、装置、服务器、终端、系统及存储介质
CN116594752A (zh) 流程调度方法、装置、设备、介质和程序产品
CN110971920B (zh) 一种消息的降级方法及相关装置
CN108121605B (zh) 一种基于yarn的cgroup内存控制优化方法及系统
CN103746839B (zh) PaaS系统和PaaS应用池中的VM节点调度方法

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