CN113778636A - 任务调度管理的方法和装置 - Google Patents

任务调度管理的方法和装置 Download PDF

Info

Publication number
CN113778636A
CN113778636A CN202110018503.1A CN202110018503A CN113778636A CN 113778636 A CN113778636 A CN 113778636A CN 202110018503 A CN202110018503 A CN 202110018503A CN 113778636 A CN113778636 A CN 113778636A
Authority
CN
China
Prior art keywords
task
machine
target
information
configuration information
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.)
Pending
Application number
CN202110018503.1A
Other languages
English (en)
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 Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
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 Jingdong Century Trading Co Ltd, Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN202110018503.1A priority Critical patent/CN113778636A/zh
Publication of CN113778636A publication Critical patent/CN113778636A/zh
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了任务调度管理的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:根据目标任务的任务配置信息创建第一任务机,采集第一任务机执行所述目标任务的任务机性能信息;当所述任务机性能信息满足预设触发条件时,根据所述任务机性能信息调整所述目标任务的任务配置信息;根据调整后的任务配置信息创建第二任务机,利用第二任务机执行所述目标任务,停止第一任务机。该实施方式能够有效简化任务执行期间的管理难度,便于对任务所需资源进行动态调整,从而最大化利用资源。

Description

任务调度管理的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度管理的方法和装置。
背景技术
随着互联网的发展,任务调度系统在很多地方得到了广泛的应用,传统的任务调度系统。
传统的任务调度系统的执行器节点资源规格往往较为固定,无法根据任务情况对任务所需资源进行合理的分配和调整,容易造成资源的浪费,且任务执行期间的管理难度大。
发明内容
有鉴于此,本发明实施例提供一种任务调度管理的方法和装置,能够有效简化任务执行期间的管理难度,便于对任务所需资源进行动态调整,从而最大化利用资源。
为实现上述目的,根据本发明实施例的一个方面,提供了一种任务调度管理的方法,包括:
根据目标任务的任务配置信息创建第一任务机,采集第一任务机执行所述目标任务的任务机性能信息;
当所述任务机性能信息满足预设触发条件时,根据所述任务机性能信息调整所述目标任务的任务配置信息;
根据调整后的任务配置信息创建第二任务机,利用第二任务机执行所述目标任务,停止第一任务机。
可选地,根据任务配置信息创建任务机的过程包括:
根据任务配置信息生成yaml配置文件,调用kubenertes集群接口根据所述yaml文件执行容器创建任务,从而创建任务机。
可选地,第一任务机或第二任务机执行所述目标任务的过程包括:判断是否存在所述目标任务的任务快照;若是,则根据所述任务快照启动所述目标任务;否则,根据所述目标任务的任务配置信息启动所述目标任务;
启动所述目标任务之后,定期采集所述目标任务的任务状态信息,根据所述任务状态信息生成所述目标任务的任务快照。
可选地,所述任务配置信息包括:任务类型;
根据目标任务的任务配置信息创建第一任务机,包括:根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,根据所述任务机规格信息创建第一任务机。
可选地,根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,包括:根据所述目标任务的任务类型,从预设的任务机规格集中筛选所述目标任务的任务机规格信息。
可选地,根据所述任务机性能信息调整所述目标任务的任务配置信息,包括:
判断所述任务机规格集中是否存在与所述任务机性能信息匹配的任务机规格信息;若是,则从所述任务机规格集中筛选任务机规格信息;否则,创建新的任务机规格信息,并将新创建的任务机规格信息添加至所述任务机规格集中。
可选地,所述任务机性能信息包括以下至少之一:系统负载、内存使用率、磁盘使用率、磁盘繁忙程度。
根据本发明实施例的再一个方面,提供一种任务调度管理的装置,包括:任务调度模块、任务分配模块和任务机模块;其中,
所述任务分配模块根据目标任务的任务配置信息创建第一任务机,所述任务机模块采集第一任务机执行所述目标任务的任务机性能信息;
当所述任务机性能信息满足预设触发条件时,所述任务调度模块根据所述任务机性能信息调整所述目标任务的任务配置信息;
所述任务分配模块根据调整后的任务配置信息创建第二任务机,所述任务机模块利用第二任务机执行所述目标任务,停止第一任务机。
可选地,所述任务分配模块根据任务配置信息创建任务机的过程包括:根据任务配置信息生成yaml配置文件,调用kubenertes集群接口根据所述yaml文件执行容器创建任务,从而创建任务机。
可选地,所述任务机模块利用第一任务机或第二任务机执行所述目标任务的过程包括:判断是否存在所述目标任务的任务快照;若是,则根据所述任务快照启动所述目标任务;否则,根据所述目标任务的任务配置信息启动所述目标任务;
所述任务机模块还用于:启动所述目标任务之后,定期采集所述目标任务的任务状态信息,根据所述任务状态信息生成所述目标任务的任务快照。
可选地,所述任务配置信息包括:任务类型;
所述任务调度模块根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,所述任务分配模块根据所述任务机规格信息创建第一任务机。
可选地,所述任务调度模块根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,包括:根据所述目标任务的任务类型,从预设的任务机规格集中筛选所述目标任务的任务机规格信息。
可选地,所述任务调度模块还用于:判断所述任务机规格集中是否存在与所述任务机性能信息匹配的任务机规格信息;若是,则从所述任务机规格集中筛选任务机规格信息;否则,创建新的任务机规格信息,并将新创建的任务机规格信息添加至所述任务机规格集中。
可选地,所述任务机性能信息包括以下至少之一:系统负载、内存使用率、磁盘使用率、磁盘繁忙程度。
根据本发明实施例的另一个方面,提供了一种任务调度管理的电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明提供的任务调度管理的方法。
根据本发明实施例的还一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明提供的任务调度管理的方法。
上述发明中的一个实施例具有如下优点或有益效果:通过监控任务机执行目标任务的任务机性能信息,并根据任务机性能信息调整目标任务的任务配置信息能够实现对任务所需资源进行动态调整,有效简化任务执行期间的管理难度,从而最大化利用资源;通过在第二任务机准备就绪后停止第一任务机,能够降低调整任务机资源对任务执行过程产生的影响,提高资源切换速率,实现任务所需资源的动态调整。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是适于应用于本发明实施例的任务调度管理的方法或任务调度管理的装置的示例性系统架构图;
图2是本发明实施例的任务调度管理的方法的主要流程的示意图;
图3是本发明实施例的任务调度管理的装置的主要模块的示意图;
图4是本发明可选实施例中任务调度管理的装置的架构示意图;
图5是本发明可选实施例中任务调度管理的装置创建任务机的架构示意图;
图6是本发明可选实施例中任务机创建和执行任务的流程示意图;
图7是本发明可选实施例中调整任务配置信息的流程示意图;
图8是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了适于应用于本发明实施例的任务调度管理的方法或任务调度管理的装置的示例性系统架构图,如图1所示,本发明实施例的任务调度管理的方法或任务调度管理的装置的示例性系统架构包括:
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备101、102、103。
需要说明的是,本发明实施例所提供的任务调度管理的方法一般由服务器105执行,相应地,任务调度管理的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2是根据本发明实施例的任务调度管理的方法的主要流程的示意图,如图2所示,任务调度管理的方法包括:
步骤S201、根据目标任务的任务配置信息创建第一任务机;
步骤S202、采集第一任务机执行目标任务的任务机性能信息;
步骤S203、判断第一任务机的任务机性能信息是否满足预设触发条件;若是,则跳转至步骤S204;否则,跳转至步骤S202;
步骤S204、根据任务机性能信息调整目标任务的任务配置信息;
步骤S205、根据调整后的任务配置信息创建第二任务机,利用第二任务机执行目标任务,停止第一任务机。
需要说明的是,本发明实施例中利用第二任务机执行目标任务之后,以第二任务机作为新的第一任务机,循环执行步骤S202-步骤S205,直至目标任务执行完毕。
本发明通过监控任务机执行目标任务的任务机性能信息,并根据任务机性能信息调整目标任务的任务配置信息,能够实现对任务所需资源进行动态调整,有效简化任务执行期间的管理难度,从而最大化利用资源;通过在第二任务机准备就绪后停止第一任务机,能够降低调整任务机资源对任务执行过程产生的影响,提高资源切换速率,实现任务所需资源的动态调整。
可选地,根据任务配置信息创建第一或第二任务机的过程包括:根据任务配置信息生成yaml配置文件,调用kubenertes(简称K8s,是一个开源的,用于管理云平台中多个主机上的容器的应用)集群接口根据该yaml文件执行容器创建任务,从而创建第一或第二任务机。yaml是YAML Ain′t a Markup Language的递归缩写,是一种标记语言。采用yaml配置文件创建任务机,实现简单,便于解析。
可选地,第一任务机或第二任务机执行目标任务的过程包括:判断是否存在目标任务的任务快照;若是,则根据任务快照启动目标任务;否则,根据目标任务的任务配置信息启动目标任务。启动目标任务之后,定期采集目标任务的任务状态信息,根据任务状态信息生成目标任务的任务快照。任务快照是指记录任务执行进度的数据,通过生成任务快照并根据任务快照启动任务,能够快速恢复任务。
可选地,任务配置信息包括任务类型。根据目标任务的任务配置信息创建第一任务机,包括:根据目标任务的任务类型确定目标任务的任务机规格信息,根据任务机规格信息创建第一任务机。任务类型的划分方式可以根据实际情况进行选择性设定。例如将系统流量较高、会有大量的磁盘读写操作的任务标记为IO密集型任务,将逻辑处理较多的任务标记为CPU密集型任务。再例如,根据业务种类,将任务划分为订单生产类任务、物流配送类任务等。根据任务类型确定任务机规格,方便快速。
实际应用过程中,可以预先设置各种任务类型对应的任务机规格信息。可选地,根据目标任务的任务类型确定目标任务的任务机规格信息包括:根据目标任务的任务类型,从预设的任务机规格集中筛选目标任务的任务机规格信息。通过设置任务机规格集,便于集中管理各个任务类型的任务的任务机规格。
可选地,根据任务机性能信息调整目标任务的任务配置信息,包括:判断任务机规格集中是否存在与任务机性能信息匹配的任务机规格信息;若是,则从任务机规格集中筛选任务机规格信息;否则,创建新的任务机规格信息,并将新创建的任务机规格信息添加至任务机规格集中。此处提及的匹配,是指任务机规格能够满足执行目标任务的资源要求。可选地,任务机性能信息包括以下至少之一:系统负载、内存使用率、磁盘使用率、磁盘繁忙程度。在创建新的任务机规格信息时,只要新的任务机规格能够满足执行目标任务的资源要求。
示例性地,任务机规格集中包含两种任务类型的任务机规格:IO密集型:普通性能CPU,CPU核数8核,内存8G,磁盘500G;CPU密集型:高性能CPU,CPU核数为4核,内存8G,磁盘50G。初次分配任务机规格时,根据上述任务类型进行分配。在任务执行过程中,根据任务机性能信息,按照如下公式进行各个任务机规格的指标计算:CPU核数=系统负载/2+1;内存大小=原始内存大小*(内存使用率/60%);磁盘使用率=原始磁盘大小*(磁盘使用率/60%);磁盘繁忙程度>50%换成高性能磁盘。
根据本发明实施例的再一个方面,提供一种实现上述方法的装置。
图3是本发明实施例中任务调度管理的装置的示意图。如图3所示,任务调度管理的装置300包括:任务调度模块301、任务分配模块302和任务机模块303;其中,
任务分配模块302根据目标任务的任务配置信息创建第一任务机,任务机模块303采集第一任务机执行目标任务的任务机性能信息;
当任务机性能信息满足预设触发条件时,任务调度模块301根据任务机性能信息调整目标任务的任务配置信息;
任务分配模块302根据调整后的任务配置信息创建第二任务机,任务机模块303利用第二任务机执行目标任务,停止第一任务机。
可选地,所述任务分配模块根据任务配置信息创建任务机的过程包括:根据任务配置信息生成yaml配置文件,调用kubenertes集群接口根据所述yaml文件执行容器创建任务,从而创建任务机。
可选地,所述任务机模块利用第一任务机或第二任务机执行所述目标任务的过程包括:判断是否存在所述目标任务的任务快照;若是,则根据所述任务快照启动所述目标任务;否则,根据所述目标任务的任务配置信息启动所述目标任务;
所述任务机模块还用于:启动所述目标任务之后,定期采集所述目标任务的任务状态信息,根据所述任务状态信息生成所述目标任务的任务快照。
可选地,所述任务配置信息包括:任务类型;
所述任务调度模块根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,所述任务分配模块根据所述任务机规格信息创建第一任务机。
可选地,所述任务调度模块根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,包括:根据所述目标任务的任务类型,从预设的任务机规格集中筛选所述目标任务的任务机规格信息。
可选地,所述任务调度模块还用于:判断所述任务机规格集中是否存在与所述任务机性能信息匹配的任务机规格信息;若是,则从所述任务机规格集中筛选任务机规格信息;否则,创建新的任务机规格信息,并将新创建的任务机规格信息添加至所述任务机规格集中。
可选地,所述任务机性能信息包括以下至少之一:系统负载、内存使用率、磁盘使用率、磁盘繁忙程度。
图4是本发明可选实施例中任务调度管理的装置的架构示意图,图中k8s-cluster代表k8s集群,每个pod对应一个任务机。图5是本发明可选实施例中任务调度管理的装置创建任务机的架构示意图,图中service/node代表任务节点,对应一个任务机。以下结合图4-6对本发明实施例的任务调度管理的装置进行示例行说明。
本实施例基于kubernetes进行任务分配以及执行,包含三个核心模块:任务调度模块,任务分配模块和任务机模块。任务调度模块负责任务的创建和管理,以及任务状态的维护。任务调度模块调用任务机分配模块创建出节点承载该任务。任务分配模块提供kubernetes编排的编程接口,同时监控任务节点存活情况。任务机模块执行相关的任务,并上传任务执行情况以及任务机情况。任务机模块负责在任务执行节点上进行任务的具体执行,同时定期上传任务状态信息(如任务执行进度)、任务机状态信息(如节点当前压力情况)等。任务调度模块根据上传的信息分析当前节点是否满足任务稳定执行的条件,通过任务分配模块对该节点进行动态调整(CPU、内存、磁盘等)。
如图6所示,任务机创建和任务执行过程包括如下步骤:
step1:任务调度模块向任务机分配模块发送任务配置信息。
任务信息包含该任务的唯一定位标识。在本发明的一个实施例中,任务的定位标识可以为任务创建时候指定的全局唯一的编号。任务机在启动时获取任务的其他信息,以及在任务执行过程中上报任务状态信息,均需要该任务标识。任务信息可以包含其他的一些额外的数据,例如任务的类型(CPU密集型、IO密集型)、任务创建时候的流量预估等。
任务信息可以包含该任务的任务机规格信息,在任务初次启动时候,可以使用一个默认的规格配置,或者根据任务信息去做规格的定制化,例如,CPU密集型的任务偏向于分配CPU性能较好和核数较多的容器、IO密集型倾向于分配存储性能和网络性能较好的容器。
step2:任务分配模块对收到的任务配置信息进行解析,解析后进行转换,生成任务机的部署配置文件,如yaml文件。生成的yaml文件设置任务机的定位标识,该定位标识会和任务的唯一定位标识进行绑定,以便对任务所需容器资源信息进行更新时候能够进行定位。比如说node-service-1,表示该service下面挂载的pod是用来执行job编码为1的任务。
step3:调用kubenertes集群接口根据该yaml文件执行容器创建任务,从而创建出任务机。
Kubernetes集群基于配置的任务镜像生成相关容器,同时会在容器的/export/App/conf/(配置文件)目录下面创建出freighter.properites(任务机规格),从而创建出任务机。
step4:任务机启动后自动根据任务配置信息中的任务相关信息加载任务进行执行。
任务机在创建成功后,会自动调用相关脚本,进行启动,启动的时候会加载配置文件。
任务在启动的时候调用任务调度模块加载该任务最新一次的快照情况,然后按照快照恢复任务状态后继续执行,如果是初次执行,则无任何快照信息。在本发明的一个实例中,任务快照是mysql binlog(二进制日志)数据,可以根据任务的实际情况,选择从最近的binlogfile(日志文件)进行dump(备份),或者选择从最早的binlogfile开始进行dump。
step5:任务机定期对自身状态做以及任务机状态做快照。
可选地,从mysql同步binlog信息,则任务状态包括该同步任务的mysql binlog文件名称、以及gtid信息等,任务机状态包括该任务机的cpu、memory、load等性能指标。
Step6:任务机定期上报采集到的任务状态信息和任务机性能信息,上传的任务状态信息主要用于对任务进度进行展示。
图7是本发明可选实施例中调整任务配置信息的流程示意图。如图7所示,包括如下步骤:
Step7:任务调度模块根据任务机上传的任务执行进度和任务机性能情况进行分析,重新生成相关的规格(CPU、内存、存储等)。
如果目前任务机的CPU负载、memory(内存)使用率、load(系统负载)均较高,则可以调整该任务对应的任务机规格信息,调大该任务的CPU、memory相关配置。该步骤也可更新任务相关的其他信息,不局限于任务机相关信息。
step8:任务调度模块向任务分配模块发送更新后的任务配置信息
step9:任务分配模块将收到的更新后的任务配置信息进行解析,解析后进行转换,生成该任务机最新的部署yaml配置文件
转换的过程中,生成的部署yaml配置中的service模块中对metadata.name值的定义保持和该任务机第一次生成的时候保持一致。
step10:调用k8s集群接口根据该yaml文件创建新的任务机。
step11:新的任务机启动后自动根据配置中的任务相关信息加载任务进行执行,停止旧的任务机。
任务在启动的时候调用任务调度模块加载快照信息,此时任务调度模块中存在快照信息,根据快照信息恢复任务状态,接着进行任务的执行。
step12:任务机监测任务执行情况,以及自身机器压力情况。
本实施例能够有效简化任务执行期间的管理难度和快速对任务所需资源进行调整,可以做到根据任务的不同时段需要资源情况进行动态调整,从而最大化利用资源。
图8是适于用来实现本发明实施例的终端设备的计算机系统的结构示意图,如图8所示,本发明实施例的终端设备的计算机系统800包括:
包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM803中,还存储有系统800操作所需的各种程序和数据。CPU801、ROM802以及RAM803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括任务调度模块、任务分配模块和任务机模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,任务分配模块还可以被描述为“采集第一任务机执行所述目标任务的任务机性能信的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:根据目标任务的任务配置信息创建第一任务机,采集第一任务机执行所述目标任务的任务机性能信息;当所述任务机性能信息满足预设触发条件时,根据所述任务机性能信息调整所述目标任务的任务配置信息;根据调整后的任务配置信息创建第二任务机,利用第二任务机执行所述目标任务,停止第一任务机。
根据本发明实施例的技术方案,通过监控任务机执行目标任务的任务机性能信息,并根据任务机性能信息调整目标任务的任务配置信息能够实现对任务所需资源进行动态调整,有效简化任务执行期间的管理难度,从而最大化利用资源;通过在第二任务机准备就绪后停止第一任务机,能够降低调整任务机资源对任务执行过程产生的影响,提高资源切换速率,实现任务所需资源的动态调整。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种任务调度管理的方法,其特征在于,包括:
根据目标任务的任务配置信息创建第一任务机,采集第一任务机执行所述目标任务的任务机性能信息;
当所述任务机性能信息满足预设触发条件时,根据所述任务机性能信息调整所述目标任务的任务配置信息;
根据调整后的任务配置信息创建第二任务机,利用第二任务机执行所述目标任务,停止第一任务机。
2.如权利要求1所述的方法,其特征在于,根据任务配置信息创建任务机的过程包括:
根据任务配置信息生成yaml配置文件,调用kubenertes集群接口根据所述yaml文件执行容器创建任务,从而创建任务机。
3.如权利要求1所述的方法,其特征在于,第一任务机或第二任务机执行所述目标任务的过程包括:判断是否存在所述目标任务的任务快照;若是,则根据所述任务快照启动所述目标任务;否则,根据所述目标任务的任务配置信息启动所述目标任务;
启动所述目标任务之后,定期采集所述目标任务的任务状态信息,根据所述任务状态信息生成所述目标任务的任务快照。
4.如权利要求1所述的方法,其特征在于,所述任务配置信息包括:任务类型;
根据目标任务的任务配置信息创建第一任务机,包括:根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,根据所述任务机规格信息创建第一任务机。
5.如权利要求4所述的方法,其特征在于,根据所述目标任务的任务类型确定所述目标任务的任务机规格信息,包括:根据所述目标任务的任务类型,从预设的任务机规格集中筛选所述目标任务的任务机规格信息。
6.如权利要求5所述的方法,其特征在于,根据所述任务机性能信息调整所述目标任务的任务配置信息,包括:
判断所述任务机规格集中是否存在与所述任务机性能信息匹配的任务机规格信息;若是,则从所述任务机规格集中筛选任务机规格信息;否则,创建新的任务机规格信息,并将新创建的任务机规格信息添加至所述任务机规格集中。
7.如权利要求6所述的方法,其特征在于,所述任务机性能信息包括以下至少之一:系统负载、内存使用率、磁盘使用率、磁盘繁忙程度。
8.一种任务调度管理的装置,其特征在于,包括:任务调度模块、任务分配模块和任务机模块;其中,
所述任务分配模块根据目标任务的任务配置信息创建第一任务机,所述任务机模块采集第一任务机执行所述目标任务的任务机性能信息;
当所述任务机性能信息满足预设触发条件时,所述任务调度模块根据所述任务机性能信息调整所述目标任务的任务配置信息;
所述任务分配模块根据调整后的任务配置信息创建第二任务机,所述任务机模块利用第二任务机执行所述目标任务,停止第一任务机。
9.一种任务调度管理的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
CN202110018503.1A 2021-01-07 2021-01-07 任务调度管理的方法和装置 Pending CN113778636A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110018503.1A CN113778636A (zh) 2021-01-07 2021-01-07 任务调度管理的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110018503.1A CN113778636A (zh) 2021-01-07 2021-01-07 任务调度管理的方法和装置

Publications (1)

Publication Number Publication Date
CN113778636A true CN113778636A (zh) 2021-12-10

Family

ID=78835377

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110018503.1A Pending CN113778636A (zh) 2021-01-07 2021-01-07 任务调度管理的方法和装置

Country Status (1)

Country Link
CN (1) CN113778636A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109344079A (zh) * 2018-10-31 2019-02-15 广东高云半导体科技股份有限公司 布局布线回归测试方法、系统、设备及存储介质
CN109614227A (zh) * 2018-11-23 2019-04-12 金色熊猫有限公司 任务资源调配方法、装置、电子设备及计算机可读介质
CN110502340A (zh) * 2019-08-09 2019-11-26 广东浪潮大数据研究有限公司 一种资源动态调整方法、装置、设备及存储介质
CN112052133A (zh) * 2019-06-06 2020-12-08 北京京东尚科信息技术有限公司 一种基于Kubernetes的业务系统监控方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109344079A (zh) * 2018-10-31 2019-02-15 广东高云半导体科技股份有限公司 布局布线回归测试方法、系统、设备及存储介质
CN109614227A (zh) * 2018-11-23 2019-04-12 金色熊猫有限公司 任务资源调配方法、装置、电子设备及计算机可读介质
CN112052133A (zh) * 2019-06-06 2020-12-08 北京京东尚科信息技术有限公司 一种基于Kubernetes的业务系统监控方法和装置
CN110502340A (zh) * 2019-08-09 2019-11-26 广东浪潮大数据研究有限公司 一种资源动态调整方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US11416307B2 (en) System and method for processing task resources
CN107729139B (zh) 一种并发获取资源的方法和装置
CN109408205B (zh) 基于hadoop集群的任务调度方法和装置
CN113742031B (zh) 节点状态信息获取方法、装置、电子设备及可读存储介质
CN107832143B (zh) 一种物理机资源的处理方法和装置
CN111897633A (zh) 一种任务处理的方法和装置
CN112114950A (zh) 任务调度方法和装置、以及集群管理系统
US11093279B2 (en) Resources provisioning based on a set of discrete configurations
CN114610499A (zh) 任务调度方法、装置、计算机可读存储介质及电子设备
CN109428926B (zh) 一种调度任务节点的方法和装置
CN112398669B (zh) 一种Hadoop部署方法和装置
CN112104679B (zh) 处理超文本传输协议请求的方法、装置、设备和介质
CN114116173A (zh) 动态调整任务分配的方法、装置和系统
CN109213743B (zh) 一种数据查询方法和装置
CN111190719A (zh) 优化集群资源分配的方法、装置、介质及电子设备
CN111435315A (zh) 分配资源的方法、装置、设备和计算机可读介质
CN106657195B (zh) 任务处理方法和中继设备
CN111767126A (zh) 分布式批量处理的系统和方法
US20190317821A1 (en) Demand-based utilization of cloud computing resources
CN113778636A (zh) 任务调度管理的方法和装置
CN113779122B (zh) 导出数据的方法和装置
CN114328722A (zh) 一种支持多数据源的数据同步方法、装置及计算机设备
CN113485806A (zh) 处理任务的方法、装置、设备和计算机可读介质
CN114546631A (zh) 任务调度方法、控制方法、核心、电子设备、可读介质
CN114237902A (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