CN112445602A - 资源调度方法、装置、系统及电子设备 - Google Patents
资源调度方法、装置、系统及电子设备 Download PDFInfo
- Publication number
- CN112445602A CN112445602A CN201910798324.7A CN201910798324A CN112445602A CN 112445602 A CN112445602 A CN 112445602A CN 201910798324 A CN201910798324 A CN 201910798324A CN 112445602 A CN112445602 A CN 112445602A
- Authority
- CN
- China
- Prior art keywords
- computing
- container
- user
- resource
- job
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000012544 monitoring process Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 21
- 230000003993 interaction Effects 0.000 claims description 8
- 238000011156 evaluation Methods 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 38
- 238000005129 volume perturbation calorimetry Methods 0.000 description 38
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 239000003795 chemical substances by application Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008602 contraction Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
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
本发明实施例提供一种资源调度方法、装置、系统及电子设备,其中,方法包括:接收用户提交的作业;针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;当所述计算资源中的作业被处理完成后,释放该计算资源至所述公共资源池。本发明实施例的方案,能够以作业粒度弹性申请和释放资源,以实现对资源的合理调度,避免出现资源紧张或者空闲的情况。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种资源调度方法、装置、系统及电子设备。
背景技术
目前,在分布式计算方面,很多企业会先从云资源提供商购买一批虚拟机作为服务资源,手动搭建如yarn、mesos等资源调度框架,然后在该资源调度框架之上运行如spark、hadoop等分布式计算框架。
但是,这种方法存在以下缺点:用户在运行一个分布式计算框架之前,首先需要规划资源、然后做集群搭建、之后才能运行作业;当在某个时段,运行的作业比较少时,整个集群的资源会浪费很多;当出现业务峰值时,集群资源难以满足需要,扩容会很慢;另外,由于一个集群中的计算服务只能处于一个VPC网络环境中,如果不同作业需要访问的外部服务属于不同的VPC网络则将出现无法满足的情况。
发明内容
本发明提供了一种资源调度方法、装置、系统及电子设备、能够以作业粒度弹性申请和释放资源,以实现对资源的合理调度,避免出现资源紧张或者空闲的情况。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种资源调度方法,包括:
接收用户提交的作业;
针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
当所述计算资源中的作业被处理完成后,释放该计算资源至所述公共资源池。
第二方面,提供了一种资源调度装置,包括:
作业接收模块,用于接收用户提交的作业;
计算资源创建模块,用于针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
计算资源释放模块,用于当所述计算资源中的作业被处理完成后,释放该计算资源至所述公共资源池。
第三方面,提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,所述程序运行时执行本发明提供的所述的资源调度方法。
第四方面,提供了一种资源调度系统,包括:对外交互平台、管控组件、服务组件以及资源组件,所述管控组件通过所述对外交互平台向用户提供账号身份信息以及校验证书;其中,
所述管控组件,用于通过所述服务组件接收用户提交的作业;针对所述用户提交的作业,调用所述资源组件从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
当所述计算资源中的作业被处理完成后,所述管控组件调用所述资源组件释放该计算资源至所述公共资源池。
本发明提供的资源调度方法、装置、系统及电子设备,通过在接收用户提交的作业后,针对该作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业;当计算资源中的作业被处理完成后,释放该计算资源至公共资源池,从而通过作业粒度的资源创建和释放对用户作业所需资源进行灵活调度。
本方案中,由于采用了根据用户提交具体的作业,自动弹性在云上的公共资源池申请资源,即计算资源,因此不需要用户提前规划集群,节省了用户的搭建资源调度架构的成本。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例的资源服务架构示意图;
图2为本发明实施例的资源调度框架结构示意图;
图3为本发明实施例的资源调度方法流程图一;
图4为本发明实施例的资源调度方法流程图二;
图5为本发明实施例的资源调度方法流程图三;
图6为本发明实施例的资源调度方法流程图四;
图7为本发明实施例的资源调度装置结构图一;
图8为本发明实施例的计算资源创建模块的结构图;
图9为本发明实施例的资源调度装置结构图二;
图10为本发明实施例的资源调度装置结构图三;
图11为本发明实施例的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为便于理解,对本申请方案中相关术语进行说明。
Serverless:用户在提交应用时感知不到后端服务器,服务器由服务提供方管理;
VPC(私有网络):Virtual Private Cloud是公有云上自定义的逻辑隔离网络空间,可以自定义IP地址范围、网段、路由表和网关等。同一个VPC内部的网络互通,不同VPC默认不通。
本方案是将Serverless的服务提供思想,与在云端弹性创建计算资源进行了有机结合,实现的一种全新的资源调度框架。该资源调度框架以作业粒度弹性创建计算资源,并在作业处理完成后,及时释放相应的计算资源,从而实现资源的灵活伸缩性。
如图1所示,为本发明实施例的资源服务架构示意图。该资源服务架构包括三个层面:控制面、服务面和资源面。本方案的资源调度框架主要工作在服务面和资源面。
控制面:
其作用主要是将资源调度框架通过管控对接到云服务商的产品销售页面,如图中的控制台,以向用户提供购买云资源的服务。控制台可以通过调用开放平台(Open API)(步骤①)调用管控的相关服务,并利用数据库管控从管控为用户获取证书(步骤②),然后将证书反馈给用户,以使用户在后续提交作业时携带该证书,以用于验证用户身份。
服务面:
其主要是由Master做资源的全局管理、对外向用户提供计算服务。用户登陆Client,并通过代理(Proxy)服务器的虚拟网络地址(VIP)向Master提交作业(提交作业的同时提交之前获取的证书)。然后,Master上传作业信息和证书信息到管控,以使管控对该用户身份进行认证和申请资源(步骤③)。
资源面:
管控对用户身份进行认证并通过后,触发资源管控层以为用户作业申请资源(步骤④)。资源管控层创建计算资源,如容器资源,以在容器资源中运行作业。资源管控层通过镜像文件创建容器,即Container(步骤⑤)。用户每次提交作业都会提交镜像文件,镜像文件包括基础镜像文件,其可以在管控里保存;而增量的镜像文件,用户会根据所提交的作业的运行需求在每次提交作业的时候提交。在进行资源申请时,管控会将本次创建的容器所需的镜像文件发送给资源管控层用于创建容器。资源管控层向云服务申请具体的container容器资源,同时分发镜像以启动容器。
在创建容器(Container)时,设置每个VPC(专有网络)和一个用户的信息进行绑定,并和分配给该用户的容器资源通过如弹性虚拟网卡进行绑定。这样,不同的用户提交的作业会分别处于不同的VPC网络环境中(具体运行在Container的User Worker中)。每个作业可以访问对应的VPC网络环境的数据库服务,如Hbase、HybridDB等。这样,当用户有一个分布式作业需要去操作相应VPC网络环境的数据库服务时,只需要通过Serverless的方式提交一个具有对应网络环境属性的计算作业即可,计算结束后,该作业所对应的服务资源(Container)立即被释放。
另外,可以在各VPC中创建的一个Container,在其中设置User Master,以对VPC内的各User Worker进行运行状态的监控和管理。
图2为本方案的资源调度框架的架构图,该资源调度主要提供如下能力:资源网络隔离、将资源动态绑定不同的VPC、资源弹性伸缩。并且,还可同时兼容大数据资源调度的标准YARN的API。如图2所示,该资源调度框架主要涉及以下几方面内容。
1、资源基础:调度平台的底层物理资源可从弹性容器实例(Elastic ContainerInstance,ECI)服务中申请,然后对其做管理;每一个用户的分布式计算作业会根据作业需求申请一批ECI的实例,在之上部署Agent来管理实例所处VPC环境的准备、资源的弹性伸缩等。
2、container资源环境,在图2中资源面可以看到计算资源的原子单位为POD:
2.1每个container资源环境中User Worker以及业务数据的部分为用户任务的进程及环境,User Worker为用户计算任务的进程,可以为Spark的executor等;而业务数据是计算任务运行过程中产生的数据,包括如launch_shell、token、jar、log等数据;
2.2平台管理的资源面,其中Agent用来和资源调度框架的Master节点进行通信、绑定用户作业需要的VPC网络环境的弹性网卡(ENI)、以及该container要访问的共享存储NFS信息;
2.3POD为container对应调用的云服务,包括ENI(弹性网卡)、NFS。
3、作业级别的网络隔离:UserWorker以及业务数据对应的container通过Agent绑定到同一User VPC1(或者User VPC2)的弹性网卡ENI,使其具有对应的网络属性,从而可以访问对应网络环境的外部数据服务;
4、资源弹性伸缩:为了做到弹性伸缩需要保证两点,有一个大的资源池可以满足资源的随时申请释放、大数据分布式计算的中间状态shuffle数据需要从container中解耦做成服务:
4.1弹性资源池:弹性的资源池借助ECI的资源池能力,该资源池和云服务器(ElasticComputeService,ECS)共用,同时ECI实例的轻量化特性以及分布式计算作业资源粒度比较小,可以快速的做到申请和释放;
4.2Shuffle Service服务:由于类似spark、mapreduce这样的分布式计算框架的作业在运行过程中都会产生中间状态数据,如果这些数据直接保留在对应的container中,对应的计算节点在计算任务结束后不能释放,这样无法做到资源弹性,因此本方案中构建了Shuffle Service服务来解决该问题。
4.2.1中间状态数据的产生及保存:每个container的计算任务产生的中间状态数据被写到共享存储NFS之中,之后对NFS进行打包形成Shuffle Service服务集群对外提供数据访问服务;
4.2.2资源的弹性缩减:当中间状态数据交由外部的Shuffle Service服务管理,对应的计算资源就可以直接释放掉,从而降低作业成本;
4.2.3数据读取:需要读取相应中间状态的计算节点,可以基于管控颁发的证书访问Shuffle Service;
5服务化:通过大数据资源调度的标准YARN API对外提供Serverless服务,主要包括身份认证、管理向ECI申请的资源、接受用户的作业提交请求。
为了方便对每个VPC内部的container资源及作业任务进行调度处理可以在每个VPC中创建一个设置有UserMaster的container,通过UserMaster,可以协调各个Agent与Master的交互,比如监控作业运行状态,向Master申请资源,或者触发ContainerD释放container资源,其中,ContainerD用于管理容器的生命周期。
本方案和现有技术对比,具有如下优势:
1、由于本发明用户在提交具体的作业时自动弹性在云上申请资源,因此不需要提前规划集群;
2、本发明中资源的申请是按照作业粒度的,当作业少的时候是不会额外申请资源,所以不会浪费资源;
3、基于本发明的云上Serverless资源调度框架,当业务峰值时云上的资源是充足的所以可以申请获得相应的资源来运行对应的作业;
4、本发明中每个作业都能够绑定相应的VPC网络属性,完全按照用户的设计满足服务访问需求。
另外,需要说明的是本方案不局限于应用在分布式系统中。
下面通过多个实施例来进一步说明本申请的技术方案。
实施例一
图3为本发明实施例提供的资源调度方法流程图一,包括如下步骤:
S310,接收用户提交的作业。
用户可先从云服务商处获取用于身份认证的证书,然后向指定的接收作业的服务器,如图1中的Master提交作业(提交作业的同时提交之前获取的证书)。然后,Master上传作业信息和证书信息到管控。管控根据用户上传的作业信息确定待处理的作业数量和作业内容。
S320,针对用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业。
例如,图1中的管控可基于用户上传作业信息和证书信息先对用户身份进行认证,待认证通过后为用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,比如图1中User Worker所在Container,以在该计算资源中处理该作业。
在进行资源申请时,管控会将本次创建的计算容器所需的镜像文件发送给资源管控层用于创建容器。资源管控层向云服务申请具体的容器资源,同时分发镜像以启动计算容器。镜像文件包括基础镜像文件和增量镜像文件,基础镜像文件可以在管控里保存;而增量镜像文件,用户会根据所提交的作业的运行需求在每次提交作业的时候提交。
进一步地,在处理用户作业时,可将在处理作业过程中所产生的状态数据存储到指定的存储服务器(如图2中的Shuffle Service)上,并基于该存储服务器向用户提供状态数据查询服务。这样,用户可以凭借之前获取的证书访问远程存储服务器读取状态数据。
另外,在创建作业对应的计算资源时,可以进一步将用户提交的每个作业拆分为至少一个作业任务,然后从公共资源池中申请资源以创建每个作业任务对应的计算容器,以在计算容器中处理对应的作业任务。这样可以更细粒度的作业任务弹性申请资源,以方便对申请的资源进行管理。
S330,当计算资源中的作业被处理完成后,释放该计算资源至公共资源池。
基于上一步骤中,以作业粒度申请计算资源,当计算资源中的作业被处理完成后,可以释放该计算资源至公共资源池,从而节省该部分资源,以作为其他用户或者该用户提交的后续作业的资源予以使用。
例如,基于上一步骤中,将用户提交的作业拆分成至少一个作业任务进行资源申请,创建每个作业任务对应的计算容器的场景,本步骤在释放计算资源时,可以是当任一计算容器中的作业任务被处理完成后,释放该计算容器所占用的资源至公共资源池。由于作业任务的粒度更小,则可以对公共资源池中的资源进行更细粒度的资源申请和释放,使得对资源的伸缩性处理更加灵活。
本发明提供的资源调度方法,通过在接收用户提交的作业后,针对该作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业;当计算资源中的作业被处理完成后,释放该计算资源至公共资源池,从而通过作业粒度的资源创建和释放对用户作业所需资源进行灵活调度。
本方案中,由于采用了根据用户提交具体的作业,自动弹性在云上的公共资源池申请资源,如计算容器,因此不需要用户提前规划集群,节省了用户的搭建资源调度架构的成本。
实施例二
图4为本发明实施例提供的资源调度方法流程图二,该方法在图1所示方法的基础上,对创建作业对应的计算容器的处理过程中的,计算容器的网络属性的配置和解除进行说明,包括如下步骤:
S410,提供多个私有网络,并在用户提交作业时,为每个用户分配一个私有网络。
本方案中预先提供了多个私有网络VPC,当用户首次提交作业,或者在用户提交作业时,确定没有对应的VPC时,可以为该用户分配一个VPC,不同用户在同一时间所分配VPC不相同。
S420,将所创建的计算容器的网络属性信息绑定到相应用户的私有网络。
在确定分配给用户的VPC后,可以将为该用户作业所创建的计算容器的网络属性信息绑定到该用户的私有网络中,这样可以保证同一用户的计算资源位于同一VPC中,满足用户的需求。具体地,可以通过计算容器中的弹性虚拟网卡ENI进行网络属性配置。
S430,当计算容器中的作业被处理完成后,解除该计算容器的网络属性信息与私有网络的绑定关系。
当计算容器中的作业被处理完成,需要对计算容器所占用的资源进行释放时,可以解除该计算容器的网络属性信息与私有网络的绑定关系,从而使得计算容器从该用户所在的VPC中释放掉。释放掉的计算容器可以被从绑定到其他用户的VPC网络,或者将其所占用的资源回收到公共资源池。
S440,当所属同一用户的所有计算容器中的作业被处理完成后,解除该用户与私有网络的分配关系。
在上一步骤的基础上,如果所属同一用户的所有计算容器中的作业被处理完成后,相应的该用户对应的VPC中的计算容器的资源被释放,不存在计算容器,那么可以将该VPC与相应用户之间的分配(绑定)关系解除,以使得该VPC网络可以被从新分配给其他用户使用。
进一步地,在执行图4所示方法步骤的过程中,还可执行图5所示的方法步骤,包括:
S510,从公共资源池中申请资源以为每个用户所申请的计算容器创建监控容器,并将该监控容器的网络属性信息绑定到相应用户的私有网络。
为了方便对VPC网络内的计算容器的工作状态进行监督和管理,可以从公共资源池中申请资源为每个用户所申请的计算容器创建监控容器,如图2中包含User Master的Container,并将该监控容器的网络属性信息绑定到相应用户的私有网络,这样UserMaster就可以和计算容器中的Agent进行交互实现对计算容器的监控和管理。
S520,通过监控容器监测其所属私有网络内的所有计算容器的工作状态,以在任一计算容器中的作业被处理完成后,触发解除该计算容器的网络属性信息与私有网络的绑定关系,以及对该计算容器所占用的资源进行释放的操作。
例如,当User Master监测到其所属私有网络内的任一计算容器中的作业被处理完成,则可触发Master执行解除该计算容器的网络属性信息与对应VPC的绑定关系的操作,以及对该计算容器所占用的资源进行释放的操作。
S530,当所属同一私有网络的所有计算容器中的作业被处理完成后,解除该私有网络中的监控容器的网络属性信息与私有网络的绑定关系,并对该监控容器所占用的资源进行释放。
在上一步骤的基础上,如果所属同一用户的所有计算容器中的作业被处理完成后,相应的该用户对应的VPC中的计算容器的资源被释放,不存在计算容器,那么可以将该监控容器与对应的VPC的绑定关系解除,并释放该监控容器所占用的资源,节省资源。
进一步地,在执行图5所示方法步骤的过程中,还可执行如下步骤:
S610,通过监控容器评估用于处理用户提交作业所需的计算容器。
在接收到用户提交的作业后,可通过监控容器先评估处理这些作业所需的计算容器,如计算容器中CPU的数量,内存大小等。
S620,根据评估所需的计算容器,触发从公共资源池中申请资源以创建该作业对应的计算容器的操作。
待监控容器评估作业所需的计算容器的资源后,触发如图1中的Master,进而控制管控从公共资源池中申请资源以创建该作业对应的计算容器。
S630,将用户提交的作业分发到相应的计算容器进行处理。
监控容器将用户提交的作业分发到相应的计算容器进行处理,以协调处理计算资源创建和作业分发工作。
本发明提供的资源调度方法,在实施例一所示资源调度方法的基础中,提供了对用户的计算容器的网络属性进行配置的过程,以使用户的每个作业都能够绑定相应的VPC网络属性,实现按照用户的设计满足服务访问需求。
进一步地,本实施例中在每个VPC网络中还增设了监控容器,以对同一VPC网络中的计算容器进行监控和管理。
实施例三
图7为本发明实施例提供的资源调度装置结构图一,该装置可用于执行图3所示的方法步骤,其包括:
作业接收模块710,用于接收用户提交的作业;
计算资源创建模块720,用于针对用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业;
计算资源释放模块730,用于当计算资源中的作业被处理完成后,释放该计算资源至公共资源池。
进一步地,在图7所示的资源调度装置中还可包括:
查询服务提供模块,用于将在处理作业过程中所产生的状态数据存储到指定的存储服务器上,并基于存储服务器向用户提供状态数据查询服务。
进一步地,上述计算资源创建模块720,可用于将用户提交的作业拆分为至少一个作业任务,从公共资源池中申请资源以创建每个作业任务对应的计算容器,以在计算容器中处理对应的作业任务。
进一步地,上述计算资源释放模块730,可用于当任一计算容器中的作业任务被处理完成后,释放该计算容器所占用的资源至公共资源池。
进一步地,如图8所示,图7所示的资源调度装置中,计算资源创建模块720可包括:
私有网络提供单元810,用于提供多个私有网络,并在用户提交作业时,为每个用户分配一个私有网络;
计算容器绑定单元820,用于将所创建的计算容器的网络属性信息绑定到相应用户的私有网络;
计算容器解除单元830,用于当计算容器中的作业被处理完成后,解除该计算容器的网络属性信息与私有网络的绑定关系;
私有网络解除单元840,用于当所属同一用户的所有计算容器中的作业被处理完成后,解除该用户与私有网络的分配关系。
图8所示的资源调度装置可用于执行如图4所示的方法步骤。
进一步地,如图9所示,在图8所示的资源调度装置中还包括:
监控容器创建模块910,用于从公共资源池中申请资源以为每个用户所申请的计算容器创建监控容器,并将该监控容器的网络属性信息绑定到相应用户的私有网络;
监控状态触发模块920,用于通过监控容器监测其所属私有网络内的所有计算容器的工作状态,以在任一计算容器中的作业被处理完成后,触发解除该计算容器的网络属性信息与私有网络的绑定关系,以及对该计算容器所占用的资源进行释放的操作;
监控容器释放模块930,用于当所属同一私有网络的所有计算容器中的作业被处理完成后,解除该私有网络中的监控容器的网络属性信息与私有网络的绑定关系,并对该监控容器所占用的资源进行释放。
图9所示的资源调度装置可用于执行如图5所示的方法步骤。
进一步地,如图10所示,在图9所示的资源调度装置中还包括:
计算容器评估模块101,用于通过监控容器评估用于处理用户提交作业所需的计算容器;
创建容器触发模块102,用于通过监控容器根据评估所需的计算容器,触发从公共资源池中申请资源以创建该作业对应的计算容器的操作;
作业分发模块103,用于将用户提交的作业分发到相应的计算容器进行处理。
图10所示的资源调度装置可用于执行如图6所示的方法步骤。
本发明提供的资源调度装置,通过在接收用户提交的作业后,针对该作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业;当计算资源中的作业被处理完成后,释放该计算资源至公共资源池,从而通过作业粒度的资源创建和释放对用户作业所需资源进行灵活调度。
本方案中,由于采用了根据用户提交具体的作业,自动弹性在云上的公共资源池申请资源,如计算容器,因此不需要用户提前规划集群,节省了用户的搭建资源调度架构的成本。
进一步地,本实施例提供了对用户的计算容器的网络属性进行配置的功能模块,以使用户的每个作业都能够绑定相应的VPC网络属性,实现按照用户的设计满足服务访问需求。
进一步地,本实施例中在每个VPC网络中还增设了监控容器,以对同一VPC网络中的计算容器进行监控和管理。
实施例四
前面实施例描述了资源调度装置的整体架构,该装置的功能可借助一种电子设备实现完成,如图11所示,其为本发明实施例的电子设备的结构示意图,具体包括:存储器111和处理器112。
存储器111,用于存储程序。
除上述程序之外,存储器111还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器111可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器112,耦合至存储器111,用于执行存储器111中的程序,所述程序运行时执行前述实施例中所描述的资源调度方法的操作步骤。
此外,处理器112也可以包括前述实施例所描述的各种模块以执行资源调度的处理操作,并且存储器111可以例如用于存储这些模块执行操作所需要的数据和/或所输出的数据。
上述的具体处理操作已经在前面实施例中进行了详细说明,在此不再赘述。
进一步,如图11所示,电子设备还可以包括:通信组件113、电源组件114、音频组件115、显示器116等其它组件。图11中仅示意性给出部分组件,并不意味着电子设备只包括图11所示组件。
通信组件113被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件113经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件113还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件114,为电子设备的各种组件提供电力。电源组件114可以包括电源管理系统,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件115被配置为输出和/或输入音频信号。例如,音频组件115包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器111或经由通信组件113发送。在一些实施例中,音频组件115还包括一个扬声器,用于输出音频信号。
显示器116包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
另外,本说明书实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有当被处理器执行时使得处理器执行前述实施例中所描述的资源调度方法的程序指令。
另外,本说明书实施例还提供了一种资源调度系统,包括:对外交互平台、管控组件、服务组件以及资源组件,管控组件通过对外交互平台向用户提供账号身份信息以及校验证书;其中,
管控组件,用于通过服务组件接收用户提交的作业;针对用户提交的作业,调用资源组件从公共资源池中申请资源以创建该作业对应的计算资源,以在计算资源中处理该作业;
当计算资源中的作业被处理完成后,管控组件调用资源组件释放该计算资源至公共资源池。
其中,对照图1所示的资源调度架构,上述对外交互平台以及管控组件可分别对应为控制面中的控制台和管控;服务组件以及资源组件可可分别对应为服务面以及资源面中的相关组件。
上述资源调度系统可用于执行图3-图6中任一所示的方法步骤。最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (17)
1.一种资源调度方法,包括:
接收用户提交的作业;
针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
当所述计算资源中的作业被处理完成后,释放该计算资源至所述公共资源池。
2.根据权利要求1所述的方法,其中,所述方法还包括:
将在处理所述作业过程中所产生的状态数据存储到指定的存储服务器上,并基于所述存储服务器向用户提供状态数据查询服务。
3.根据权利要求1所述的方法,其中,所述针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业包括:
将用户提交的作业拆分为至少一个作业任务,从所述公共资源池中申请资源以创建每个作业任务对应的计算容器,以在所述计算容器中处理对应的作业任务。
4.根据权利要求3所述的方法,其中,所述释放该计算资源至所述公共资源池包括:
当任一所述计算容器中的作业任务被处理完成后,释放该计算容器所占用的资源至所述公共资源池。
5.根据权利要求3所述的方法,其中,所述创建作业任务对应的计算容器的处理包括:
提供多个私有网络,并在用户提交作业时,为每个用户分配一个私有网络;
将所创建的计算容器的网络属性信息绑定到相应用户的私有网络;
当所述计算容器中的作业被处理完成后,解除该计算容器的网络属性信息与所述私有网络的绑定关系;
当所属同一用户的所有计算容器中的作业被处理完成后,解除该用户与所述私有网络的分配关系。
6.根据权利要求5所述的方法,其中,所述方法还包括:
从所述公共资源池中申请资源以为每个用户所申请的所述计算容器创建监控容器,并将该监控容器的网络属性信息绑定到相应用户的私有网络;
通过所述监控容器监测其所属私有网络内的所有计算容器的工作状态,以在任一所述计算容器中的作业被处理完成后,触发解除该计算容器的网络属性信息与所述私有网络的绑定关系,以及对该计算容器所占用的资源进行释放的操作;
当所属同一私有网络的所有计算容器中的作业被处理完成后,解除该私有网络中的监控容器的网络属性信息与所述私有网络的绑定关系,并对该监控容器所占用的资源进行释放。
7.根据权利要求6所述的方法,其中,所述方法还包括:
通过所述监控容器评估用于处理所述用户提交作业所需的计算容器;
根据评估所需的计算容器,触发从公共资源池中申请资源以创建该作业对应的计算容器的操作;
将用户提交的作业分发到相应的所述计算容器进行处理。
8.一种资源调度装置,包括:
作业接收模块,用于接收用户提交的作业;
计算资源创建模块,用于针对所述用户提交的作业,从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
计算资源释放模块,用于当所述计算资源中的作业被处理完成后,释放该计算资源至所述公共资源池。
9.根据权利要求8所述的装置,其中,所述装置还包括:
查询服务提供模块,用于将在处理所述作业过程中所产生的状态数据存储到指定的存储服务器上,并基于所述存储服务器向用户提供状态数据查询服务。
10.根据权利要求8所述的装置,其中,
所述计算资源创建模块,用于将用户提交的作业拆分为至少一个作业任务,从所述公共资源池中申请资源以创建每个作业任务对应的计算容器,以在所述计算容器中处理对应的作业任务。
11.根据权利要求10所述的装置,其中,
计算资源释放模块,用于当任一所述计算容器中的作业任务被处理完成后,释放该计算容器所占用的资源至所述公共资源池。
12.根据权利要求10所述的装置,其中,所述计算资源创建模块包括:
私有网络提供单元,用于提供多个私有网络,并在用户提交作业时,为每个用户分配一个私有网络;
计算容器绑定单元,用于将所创建的计算容器的网络属性信息绑定到相应用户的私有网络;
计算容器解除单元,用于当所述计算容器中的作业被处理完成后,解除该计算容器的网络属性信息与所述私有网络的绑定关系;
私有网络解除单元,用于当所属同一用户的所有计算容器中的作业被处理完成后,解除该用户与所述私有网络的分配关系。
13.根据权利要求12所述的装置,其中,所述装置还包括:
监控容器创建模块,用于从所述公共资源池中申请资源以为每个用户所申请的所述计算容器创建监控容器,并将该监控容器的网络属性信息绑定到相应用户的私有网络;
监控状态触发模块,用于通过所述监控容器监测其所属私有网络内的所有计算容器的工作状态,以在任一所述计算容器中的作业被处理完成后,触发解除该计算容器的网络属性信息与所述私有网络的绑定关系,以及对该计算容器所占用的资源进行释放的操作;
监控容器释放模块,用于当所属同一私有网络的所有计算容器中的作业被处理完成后,解除该私有网络中的监控容器的网络属性信息与所述私有网络的绑定关系,并对该监控容器所占用的资源进行释放。
14.根据权利要求13所述的装置,其中,所述装置还包括:
计算容器评估模块,用于通过所述监控容器评估用于处理所述用户提交作业所需的计算容器;
创建容器触发模块,用于通过所述监控容器根据评估所需的计算容器,触发从公共资源池中申请资源以创建该作业对应的计算容器的操作;
作业分发模块,用于将用户提交的作业分发到相应的所述计算容器进行处理。
15.一种电子设备,包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于执行所述程序,所述程序运行时执行权利要求1-7中任一项所述的资源调度方法。
16.一种计算机可读存储介质,所述计算机可读存储介质存储有当被处理器执行时使得处理器执行权利要求1至7中的任一项所述的方法的程序指令。
17.一种资源调度系统,包括:对外交互平台、管控组件、服务组件以及资源组件,所述管控组件通过所述对外交互平台向用户提供账号身份信息以及校验证书;其中,
所述管控组件,用于通过所述服务组件接收用户提交的作业;针对所述用户提交的作业,调用所述资源组件从公共资源池中申请资源以创建该作业对应的计算资源,以在所述计算资源中处理该作业;
当所述计算资源中的作业被处理完成后,所述管控组件调用所述资源组件释放该计算资源至所述公共资源池。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910798324.7A CN112445602A (zh) | 2019-08-27 | 2019-08-27 | 资源调度方法、装置、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910798324.7A CN112445602A (zh) | 2019-08-27 | 2019-08-27 | 资源调度方法、装置、系统及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112445602A true CN112445602A (zh) | 2021-03-05 |
Family
ID=74741484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910798324.7A Pending CN112445602A (zh) | 2019-08-27 | 2019-08-27 | 资源调度方法、装置、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112445602A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032152A (zh) * | 2021-04-02 | 2021-06-25 | 北京百度网讯科技有限公司 | 用于深度学习框架的调度方法、调度装置、电子设备、存储介质和程序产品 |
CN113741961A (zh) * | 2021-11-08 | 2021-12-03 | 梯度云科技(北京)有限公司 | 基于Kubernetes容器编排软件提交大数据计算作业的方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105354076A (zh) * | 2015-10-23 | 2016-02-24 | 深圳前海达闼云端智能科技有限公司 | 一种应用部署方法及装置 |
CN106708622A (zh) * | 2016-07-18 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 集群资源处理方法和系统、资源处理集群 |
US20180060394A1 (en) * | 2016-09-01 | 2018-03-01 | Amazon Technologies, Inc. | Selecting resource configurations for query execution |
CN108293041A (zh) * | 2015-12-28 | 2018-07-17 | 华为技术有限公司 | 一种资源的分配方法、装置和系统 |
CN108304260A (zh) * | 2017-12-15 | 2018-07-20 | 上海超算科技有限公司 | 一种基于高性能云计算的虚拟化作业调度系统及其实现方法 |
CN108512935A (zh) * | 2018-04-16 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 数据服务系统、方法、服务器和计算机可读存储介质 |
-
2019
- 2019-08-27 CN CN201910798324.7A patent/CN112445602A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105354076A (zh) * | 2015-10-23 | 2016-02-24 | 深圳前海达闼云端智能科技有限公司 | 一种应用部署方法及装置 |
CN108293041A (zh) * | 2015-12-28 | 2018-07-17 | 华为技术有限公司 | 一种资源的分配方法、装置和系统 |
CN106708622A (zh) * | 2016-07-18 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 集群资源处理方法和系统、资源处理集群 |
US20180060394A1 (en) * | 2016-09-01 | 2018-03-01 | Amazon Technologies, Inc. | Selecting resource configurations for query execution |
CN108304260A (zh) * | 2017-12-15 | 2018-07-20 | 上海超算科技有限公司 | 一种基于高性能云计算的虚拟化作业调度系统及其实现方法 |
CN108512935A (zh) * | 2018-04-16 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 数据服务系统、方法、服务器和计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
程振京;李海波;黄秋兰;程耀东;陈刚;: "高能物理云平台中的弹性计算资源管理机制", 计算机工程与应用, no. 08, 15 April 2017 (2017-04-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032152A (zh) * | 2021-04-02 | 2021-06-25 | 北京百度网讯科技有限公司 | 用于深度学习框架的调度方法、调度装置、电子设备、存储介质和程序产品 |
CN113741961A (zh) * | 2021-11-08 | 2021-12-03 | 梯度云科技(北京)有限公司 | 基于Kubernetes容器编排软件提交大数据计算作业的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112019475B (zh) | 无服务器架构下的资源访问方法、设备、系统及存储介质 | |
CN111279314B (zh) | 利用微服务容器在多租户api网关中提供租户隔离 | |
CN108228316B (zh) | 一种密码设备虚拟化的方法及设备 | |
US10917294B2 (en) | Network function instance management method and related device | |
US20160350157A1 (en) | Dynamic thread pool management | |
CN111212116A (zh) | 一种基于容器云的高性能计算集群创建方法和系统 | |
CN106533713B (zh) | 一种应用部署方法及设备 | |
CN111796838B (zh) | Mpp数据库自动部署方法及装置 | |
US10817327B2 (en) | Network-accessible volume creation and leasing | |
CN110008019B (zh) | 共享服务器资源的方法及装置、系统 | |
US8606908B2 (en) | Wake-up server | |
CN110837407B (zh) | 无服务器云服务系统及其资源管理方法以及电子设备 | |
WO2016095524A1 (zh) | 资源分配方法及装置 | |
CN105516086A (zh) | 业务处理方法及装置 | |
CN113419846A (zh) | 资源配置方法和装置、电子设备及计算机可读存储介质 | |
CN112445602A (zh) | 资源调度方法、装置、系统及电子设备 | |
CN113285843B (zh) | 容器网络配置方法、装置、计算机可读介质及电子设备 | |
CN113114503B (zh) | 基于应用交付网络需求的部署方法及装置 | |
CN116069493A (zh) | 一种数据处理方法、装置、设备以及可读存储介质 | |
CN113391925A (zh) | 云资源管理方法、系统、介质、计算机设备 | |
CN112256760B (zh) | 一种数据预测方法、装置、计算机设备及存储介质 | |
US9338229B2 (en) | Relocating an application from a device to a server | |
CN111190731A (zh) | 基于权重的集群任务调度系统 | |
CN113923257A (zh) | 容器组实例终止和创建方法、装置、电子设备和存储介质 | |
CN108833177A (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 |