CN109614241A - 基于Yarn队列实现多集群多租户资源隔离的方法及系统 - Google Patents
基于Yarn队列实现多集群多租户资源隔离的方法及系统 Download PDFInfo
- Publication number
- CN109614241A CN109614241A CN201811541036.5A CN201811541036A CN109614241A CN 109614241 A CN109614241 A CN 109614241A CN 201811541036 A CN201811541036 A CN 201811541036A CN 109614241 A CN109614241 A CN 109614241A
- Authority
- CN
- China
- Prior art keywords
- cluster
- task
- configuration information
- client
- tenant
- 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
- 238000002955 isolation Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000003795 chemical substances by application Substances 0.000 claims description 39
- 238000012545 processing Methods 0.000 claims description 22
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 238000000605 extraction Methods 0.000 abstract 1
- 238000007726 management method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 238000003860 storage Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000004140 cleaning Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/5061—Partitioning or combining of resources
-
- 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/504—Resource capping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种基于Yarn队列实现多集群多租户资源隔离的方法及系统,其中方法包括:发送任务的客户端根据任务所属的租户获取集群配置信息;发送任务的客户端将任务与集群配置信息进行拼装,得到拼装信息,并将拼装信息发送至提交任务的代理器;提交任务的代理器接收拼装信息,提取任务中的任务类型和集群配置信息,实例化计算引擎的客户端,利用计算引擎的客户端将任务提交到关联的集群上通过Yarn队列执行。由此可以实现多集群多租户资源隔离。
Description
技术领域
本发明涉及大数据技术集群资源管理技术领域,尤其涉及一种基于Yarn队列实现多集群多租户资源隔离的方法及系统。
背景技术
现有的开源技术方案有以下不足:
1、集群使用Yarn作为资源管理框架时,默认只对内存资源进行管理。虽然Yarn也能支持cpu资源,但在集群规模大、任务多时资源竞争问题很严重;
2、无法解决多租户下多集群的资源分配问题。
发明内容
本发明旨在提供一种克服上述问题之一或者至少部分地解决上述任一问题的基于Yarn队列实现多集群多租户资源隔离的方法及系统。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明的一个方面提供了一种基于Yarn队列实现多集群多租户资源隔离的方法,包括:发送任务的客户端根据任务所属的租户获取集群配置信息;发送任务的客户端将任务与集群配置信息进行拼装,得到拼装信息,并将拼装信息发送至提交任务的代理器;提交任务的代理器接收拼装信息,提取任务中的任务类型和集群配置信息,实例化计算引擎的客户端,利用计算引擎的客户端将任务提交到关联的集群上通过Yarn队列执行。
其中,发送任务的客户端根据任务所属的租户获取集群配置信息包括:发送任务的客户端根据任务所属的租户查询缓存;在查询到缓存中存储有集群配置信息时,从缓存中获取集群配置信息;在查询到缓存中没有存储集群配置信息时,从集群控制台获取集群配置信息。
其中,集群控制台通过Rest访问接口与发送任务的客户端进行通信。
其中,方法还包括:集群控制台在变更集群配置信息时,触发事件通知,并将事件通知发送至发送任务的客户端。
其中,方法还包括:发送任务的客户端接收事件通知,根据事件通知清理缓存。
本发明另一方面提供了一种基于Yarn队列实现多集群多租户资源隔离的系统,包括:发送任务的客户端,用于根据任务所属的租户获取集群配置信息,将任务与集群配置信息进行拼装,得到拼装信息,并将拼装信息发送至提交任务的代理器;提交任务的代理器,用于接收拼装信息,提取任务中的任务类型和集群配置信息,实例化计算引擎的客户端,利用计算引擎的客户端将任务提交到关联的集群上通过Yarn队列执行。
其中,系统还包括:集群控制台;发送任务的客户端,具体用于根据任务所属的租户查询缓存,在查询到缓存中存储有集群配置信息时,从缓存中获取集群配置信息;在查询到缓存中没有存储集群配置信息时,从集群控制台获取集群配置信息。
其中,集群控制台,还用于通过Rest访问接口与发送任务的客户端进行通信。
其中,集群控制台,还用于在变更集群配置信息时,触发事件通知,并将事件通知发送至发送任务的客户端。
其中,发送任务的客户端,还用于接收事件通知,根据事件通知清理缓存。
本发明又一方面提供了一种基于Yarn队列实现多集群多租户资源隔离的系统,其特征在于,包括:集群控制台、发送任务的客户端和提交任务的代理器;其中,集群控制台包括集群信息管理单元、资源控制单元和事件通知单元;
发送任务的客户端包括缓存器单元和事件处理单元;其中,集群信息管理单元,用于管理所有集群配置信息,添加新的集群配置信息,对已有的集群配置信息进行修改、删除操作,和/或管理租户和Yarn队列的逻辑关系;资源控制单元,用于使用Apache HadoopYarn作为统一的资源管理和调度框架,节点机器统一使用基于Linux内核的系统,并使用cgroup组件控制系统资源,和/或集群中的计算资源通过Yarn队列进行分配;事件通知单元,用于修改或删除一个集群配置信息时引发集群事件通知,和/或修改租户与Yarn队列的逻辑关系时引发租户事件通知;缓存器单元,用于缓存集群配置信息;事件处理单元,用于监听事件通知单元,并接收事件通知,处理集群事件和/或处理租户事件。
由此可见,通过本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法及系统,可以通过发送任务的客户端根据任务所属的租户,并获取与租户关联的集群配置信息,与任务进行拼装后继续发送给提交任务的代理器,以通过提交任务的代理器根据任务的类型和集群配置信息实例化计算引擎的Client,使用Client可以将任务提交到与租户有关联的指定集群,从而可以实现多集群多租户资源隔离。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统的一种结构示意图;
图2为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统的另一种结构示意图;
图3为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法的一种流程图;
图4为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法的另一种流程图;
图5为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统中集群控制台的结构示意图;
图6为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统包含发送任务的客户端具体结构的结构示意图;
图7为本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统包含提交任务的代理器具体结构的结构示意图;
图8为本发明实施例提供的一种具体的基于Yarn队列实现多集群多租户资源隔离的方法的流程图;
图9为本发明实施例提供的另一种具体的基于Yarn队列实现多集群多租户资源隔离的方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的一种基于Yarn队列实现多集群多租户资源隔离的系统的结构示意图,参见图1,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统包括:
发送任务的客户端101,用于根据任务所属的租户获取集群配置信息,将任务与集群配置信息进行拼装,得到拼装信息,并将拼装信息发送至提交任务的代理器102;
提交任务的代理器102,用于接收拼装信息,提取任务中的任务类型和集群配置信息,实例化计算引擎的客户端,利用计算引擎的客户端将任务提交到关联的集群上通过Yarn队列执行。
基于此,可以通过发送任务的客户端根据任务所属的租户,并获取与租户关联的集群配置信息,与任务进行拼装后继续发送给提交任务的代理器,以通过提交任务的代理器根据任务的类型和集群配置信息实例化计算引擎的Client,使用Client可以将任务提交到与租户有关联的指定集群,从而可以实现多集群多租户资源隔离。
进一步,作为本发明实施例的一种可选实施方式,参见图2,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统还可以包括:集群控制台103;发送任务的客户端101,具体用于根据任务所属的租户查询缓存,在查询到缓存中存储有集群配置信息时,从缓存中获取集群配置信息;在查询到缓存中没有存储集群配置信息时,从集群控制台103获取集群配置信息。通过缓存集群配置信息可以减少与集群控制台的网络通信。其中,作为本发明实施例的一个可选实施方式,集群控制台103,还用于通过Rest访问接口与发送任务的客户端101进行通信。
作为本发明实施例的一个可选实施方式,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统中,集群控制台103,还用于在变更集群配置信息时,触发事件通知,并将事件通知发送至发送任务的客户端101。具体地,集群控制台103可以提供Rest接口可以获取集群配置信息;管理集群配置信息;管理租户和Yarn队列的逻辑关系;使用cgroup控制集群中节点的系统资源,并交由Yarn队列进行分配;可以触发事件通知。
作为本发明实施例的一个可选实施方式,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统中,发送任务的客户端101,还用于接收事件通知,根据事件通知清理缓存。具体地,发送任务的客户端101用于:缓存集群配置信息,监听集群控制台的事件通知,处理集群事件和/或处理租户事件。具体地,发送任务的客户端101发送任务时先根据任务所属的租户,从集群控制台103获取关联的集群配置信息与任务进行拼装,继而发送给提交任务的代理器102;缓存集群配置信息减少与集群控制台的网络通信;接收事件通知并清理缓存;
提交任务的代理器102,具体可以包括:接收从发送任务的客户端101发来的任务;提取任务中的任务类型和集群配置信息等参数,实例化计算引擎的Client;使用计算引擎的Client最终将任务提交到关联的集群上执行。
由此可以通过集群控制台管理集群配置信息、管理租户和Yarn队列的逻辑关系,还可以通过cgroup控制集群节点的系统资源,通过Yarn队列分配集群计算资源,达到集群计算资源分配给租户的目的;还可以通过事件监听的方式及时清理缓存中的租户关联的集群配置信息数据,使发送任务的客户端被迫重新获取。
基于图1实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统,图3示出了本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法的流程图,参见图3,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法,包括:
S101,发送任务的客户端根据任务所属的租户获取集群配置信息;
S102,发送任务的客户端将任务与集群配置信息进行拼装,得到拼装信息,并将拼装信息发送至提交任务的代理器;
S103,提交任务的代理器接收拼装信息,提取任务中的任务类型和集群配置信息,实例化计算引擎的客户端,利用计算引擎的客户端将任务提交到关联的集群上通过Yarn队列执行。
基于此,可以通过发送任务的客户端根据任务所属的租户,并获取与租户关联的集群配置信息,与任务进行拼装后继续发送给提交任务的代理器,以通过提交任务的代理器根据任务的类型和集群配置信息实例化计算引擎的Client,使用Client可以将任务提交到与租户有关联的指定集群,从而可以实现多集群多租户资源隔离。
进一步,基于上述图2实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统,作为本发明实施例的一种可选实施方式,参见图4,其中,S101,发送任务的客户端根据任务所属的租户获取集群配置信息包括:
S1011,发送任务的客户端根据任务所属的租户查询缓存;
S1012,在查询到缓存中存储有集群配置信息时,从缓存中获取集群配置信息;
S1013,在查询到缓存中没有存储集群配置信息时,从集群控制台获取集群配置信息。
通过缓存集群配置信息可以减少与集群控制台的网络通信。其中,作为本发明实施例的一个可选实施方式,集群控制台通过Rest访问接口与发送任务的客户端进行通信。
作为本发明实施例的一个可选实施方式,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法还包括:集群控制台在变更集群配置信息时,触发事件通知,并将事件通知发送至发送任务的客户端。具体地,集群控制台具体用于:管理所有集群配置信息,添加新的集群配置信息,对已有的集群配置信息进行修改、删除操作,和/或管理租户和Yarn队列的逻辑关系;使用cgroup组件控制系统资源,通过Yarn队列分配集群中的计算资源;修改或删除集群配置信息时引发集群事件通知,和/或修改租户与Yarn队列的逻辑关系时引发租户事件通知。具体地,集群控制台可以提供Rest接口可以获取集群配置信息;管理集群配置信息;管理租户和Yarn队列的逻辑关系;使用cgroup控制集群中节点的系统资源,并交由Yarn队列进行分配;可以触发事件通知。
作为本发明实施例的一个可选实施方式,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的方法还包括:发送任务的客户端接收事件通知,根据事件通知清理缓存。具体地,发送任务的客户端具体用于:缓存集群配置信息,监听集群控制台的事件通知,处理集群事件和/或处理租户事件。具体地,发送任务的客户端发送任务时先根据任务所属的租户,从集群控制台获取关联的集群配置信息与任务进行拼装,继而发送给提交任务的代理器;缓存集群配置信息减少与集群控制台的网络通信;接收事件通知并清理缓存。
提交任务的代理器,具体可以包括:接收从发送任务的客户端发来的任务;提取任务中的任务类型和集群配置信息等参数,实例化计算引擎的Client;使用计算引擎的Client最终将任务提交到关联的集群上执行。
由此可以通过集群控制台管理集群配置信息、管理租户和Yarn队列的逻辑关系,还可以通过cgroup控制集群节点的系统资源,通过Yarn队列分配集群计算资源,达到集群计算资源分配给租户的目的;还可以通过事件监听的方式及时清理缓存中的租户关联的集群配置信息数据,使发送任务的客户端被迫重新获取。
图5-图7示出了本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统中各个部件的具体结构示意图,参见图5-图7,本发明实施例提供的基于Yarn队列实现多集群多租户资源隔离的系统,包括:
集群控制台、发送任务的客户端和提交任务的代理器;
其中,
集群控制台包括集群信息管理单元、资源控制单元和事件通知单元;
发送任务的客户端包括缓存器单元和事件处理单元;
其中,集群信息管理单元,用于管理所有集群配置信息,添加新的集群配置信息,对已有的集群配置信息进行修改、删除操作,和/或管理租户和Yarn队列的逻辑关系;
资源控制单元,用于使用Apache Hadoop Yarn作为统一的资源管理和调度框架,节点机器统一使用基于Linux内核的系统,并使用cgroup组件控制系统资源,和/或集群中的计算资源通过Yarn队列进行分配;
事件通知单元,用于修改或删除一个集群配置信息时引发集群事件通知,和/或修改租户与Yarn队列的逻辑关系时引发租户事件通知;
缓存器单元,用于缓存集群配置信息;
事件处理单元,用于监听事件通知单元,并接收事件通知,处理集群事件和/或处理租户事件。
具体地,在集群控制台管理集群的配置信息,管理租户-yarn队列的逻辑关系,将租户绑定到某一个Yarn队列上就是与这个集群建立了逻辑关系;发送任务的客户端在发送任务时需要先拿到集群配置信息,如果本地缓存没有数据则从集群控制台获取,然后将集群配置信息拼装到任务中;提交任务的代理器在接受到任务时,会根据任务类型和集群配置信息先实例化计算引擎的Client,最后通过Client将任务提交到关联的集群上执行。
其中,参见图5,集群控制台,包括:
集群信息管理单元:管理所有集群配置信息,可以添加新的集群配置信息,可以对已有的集群配置信息进行修改、删除操作;管理租户和Yarn队列的逻辑关系。
资源控制单元:集群使用Apache Hadoop Yarn作为统一的资源管理和调度框架;节点机器统一使用基于Linux内核的系统,并使用cgroup组件控制系统资源;集群中的计算资源通过Yarn队列进行分配。
事件通知单元:事件通知有两种类型,集群事件通知和租户事件通知;修改或删除一个集群配置信息时引发集群事件通知,以此集群关联的所有租户为事件内容触发事件通知;修改租户与Yarn队列的逻辑关系时引发租户事件通知,以此租户为事件内容触发事件通知。
另外,集群控制台还可以包括租户-yarn队列管理单元,用以将租户与Yarn队列建立逻辑关系
具体地,在所有集群的节点上先配置Yarn和cgroup;然后在集群控制台中管理集群配置信息,可以新增一个新的集群,添加完毕后会在管理界面显示该集群的Yarn队列信息;将租户与Yarn队列建立逻辑关系,间接地就是让租户与集群产生了逻辑关系;提供了获取集群配置信息的Rest接口;当集群配置信息或租户-yarn队列的关系发生变更时,会触发事件通知,及时地让处理事件的一方得到响应。
其中,参见图6,发送任务的客户端,包括:
缓存器单元:缓存集群配置信息的数据有两级,分为内存缓存和Redis缓存,支持多种缓存策略;发送任务的客户端在发送任务时,以任务所属的租户信息为条件,优先从缓存器中查找集群配置信息。
事件处理单元:监听事件通知单元,并接收事件通知;处理的事件有两种类型,集群事件和租户事件;处理集群事件时,将事件内容中所有租户的集群配置信息的缓存数据进行清理;处理租户事件时,将事件内容中的租户的集群配置信息的缓存数据进行清理。
具体地,发送任务的客户端在发送任务时,先以Rest访问方式,根据任务所属租户信息从集群控制台获取关联的集群配置信息;获取到的集群配置信息与任务进行拼装,继而发送给提交任务的代理器;将集群配置信息缓存在本地的缓存器中,减少发送任务的客户端与集群控制台之间的通信;会处理事件通知,及时地清理客户端上的缓存数据。
其中,参见图7,发提交任务的代理器,包括:
实例化计算引擎的Client。
具体地,提交任务的代理器接收从发送任务的客户端发来的任务;提取任务中的任务类型和集群配置信息等参数,实例化计算引擎的Client;最后通过计算引擎的Client将任务提交到关联的集群上执行。
图8示出了本发明实施例提供的一种具体的基于Yarn队列实现多集群多租户资源隔离的方法的流程图,但本发明并不局限于此,该方法包括:
开始任务;
发送任务的客户端根据租户查询缓存;
判断缓存是否命中,如果未命中,则从集群控制台获取集群配置信息,如果命中,则从缓存获取集群配置信息;
发送任务的客户端拼装任务和集群配置信息并发送至提交任务的代理器;
提交任务的代理器根据任务类型和集群信息实例化计算引擎Client;
提交任务的代理器提交任务到集群;
结束任务。
由此可见,可以通过发送任务的客户端根据任务所属的租户,并获取与租户关联的集群配置信息,与任务进行拼装后继续发送给提交任务的代理器,以通过提交任务的代理器根据任务的类型和集群配置信息实例化计算引擎的Client,使用Client可以将任务提交到与租户有关联的指定集群,从而可以实现多集群多租户资源隔离。
图9示出了本发明实施例提供的另一种具体的基于Yarn队列实现多集群多租户资源隔离的方法的流程图,但本发明并不局限于此,该方法包括:
1、集群控制台获取集群信息;
2、租户绑定到一个集群中的一个队列;
3、用户发送任务至发送任务的客户端,其中任务可以包括但不限于Spark任务、Flink任务和MapReduce任务;
4、发送任务的客户端从集群控制台获取集群配置信息并缓存在客户端;
5、在集群控制台变更集群配置时,触发事件通知,使发送任务的客户端清理缓存;
6、发送任务的客户端将任务和集群配置信息进行拼装,发送至提交任务的代理器;
7、提交任务的代理器实例化计算引擎的Client,并提交任务至集群,其中集群可以通过yarn队列执行任务,其中,实例化计算引擎的Client可以包括但不限于:Spark计算引擎的Client、Flink计算引擎的Client和MapReduce计算引擎的Client。
由此可见,可以通过发送任务的客户端根据任务所属的租户,并获取与租户关联的集群配置信息,与任务进行拼装后继续发送给提交任务的代理器,以通过提交任务的代理器根据任务的类型和集群配置信息实例化计算引擎的Client,使用Client可以将任务提交到与租户有关联的指定集群,从而可以实现多集群多租户资源隔离。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于Yarn队列实现多集群多租户资源隔离的方法,其特征在于,包括:
发送任务的客户端根据任务所属的租户获取集群配置信息;
发送任务的客户端将所述任务与所述集群配置信息进行拼装,得到拼装信息,并将所述拼装信息发送至提交任务的代理器;
所述提交任务的代理器接收所述拼装信息,提取所述任务中的任务类型和所述集群配置信息,实例化计算引擎的客户端,利用所述计算引擎的客户端将所述任务提交到关联的集群上通过Yarn队列执行。
2.根据权利要求1所述的方法,其特征在于,所述发送任务的客户端根据任务所属的租户获取集群配置信息包括:
发送任务的客户端根据所述任务所属的租户查询缓存;
在查询到缓存中存储有所述集群配置信息时,从缓存中获取所述集群配置信息;
在查询到缓存中没有存储所述集群配置信息时,从集群控制台获取所述集群配置信息。
3.根据权利要求2所述的方法,其特征在于,所述集群控制台通过Rest访问接口与所述发送任务的客户端进行通信。
4.根据权利要求2所述的方法,其特征在于,还包括:
所述集群控制台在变更所述集群配置信息时,触发事件通知,并将所述事件通知发送至所述发送任务的客户端。
5.根据权利要求4所述的方法,其特征在于,还包括:
所述发送任务的客户端接收所述事件通知,根据所述事件通知清理缓存。
6.一种基于Yarn队列实现多集群多租户资源隔离的系统,其特征在于,包括:
发送任务的客户端,用于根据任务所属的租户获取集群配置信息,将所述任务与所述集群配置信息进行拼装,得到拼装信息,并将所述拼装信息发送至提交任务的代理器;
所述提交任务的代理器,用于接收所述拼装信息,提取所述任务中的任务类型和所述集群配置信息,实例化计算引擎的客户端,利用所述计算引擎的客户端将所述任务提交到关联的集群上通过Yarn队列执行。
7.根据权利要求6所述的系统,其特征在于,还包括:集群控制台;
所述发送任务的客户端,具体用于根据所述任务所属的租户查询缓存,在查询到缓存中存储有所述集群配置信息时,从缓存中获取所述集群配置信息;在查询到缓存中没有存储所述集群配置信息时,从所述集群控制台获取所述集群配置信息。
8.根据权利要求7所述的系统,其特征在于,所述集群控制台,还用于通过Rest访问接口与所述发送任务的客户端进行通信。
9.根据权利要求7所述的系统,其特征在于,所述集群控制台,还用于在变更所述集群配置信息时,触发事件通知,并将所述事件通知发送至所述发送任务的客户端,所述发送任务的客户端还用于接收所述事件通知,根据所述事件通知清理缓存。
10.一种基于Yarn队列实现多集群多租户资源隔离的系统,其特征在于,包括:
集群控制台、发送任务的客户端和提交任务的代理器;
其中,
所述集群控制台包括集群信息管理单元、资源控制单元和事件通知单元;
所述发送任务的客户端包括缓存器单元和事件处理单元;
其中,所述集群信息管理单元,用于管理所有集群配置信息,添加新的集群配置信息,对已有的集群配置信息进行修改、删除操作,和/或管理租户和Yarn队列的逻辑关系;
所述资源控制单元,用于使用Apache Hadoop Yarn作为统一的资源管理和调度框架,节点机器统一使用基于Linux内核的系统,并使用cgroup组件控制系统资源,和/或集群中的计算资源通过Yarn队列进行分配;
所述事件通知单元,用于修改或删除一个集群配置信息时引发集群事件通知,和/或修改租户与Yarn队列的逻辑关系时引发租户事件通知;
所述缓存器单元,用于缓存所述集群配置信息;
所述事件处理单元,用于监听所述事件通知单元,并接收事件通知,处理集群事件和/或处理租户事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811541036.5A CN109614241B (zh) | 2018-12-17 | 2018-12-17 | 基于Yarn队列实现多集群多租户资源隔离的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811541036.5A CN109614241B (zh) | 2018-12-17 | 2018-12-17 | 基于Yarn队列实现多集群多租户资源隔离的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109614241A true CN109614241A (zh) | 2019-04-12 |
CN109614241B CN109614241B (zh) | 2024-03-12 |
Family
ID=66010252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811541036.5A Active CN109614241B (zh) | 2018-12-17 | 2018-12-17 | 基于Yarn队列实现多集群多租户资源隔离的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109614241B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110351384A (zh) * | 2019-07-19 | 2019-10-18 | 深圳前海微众银行股份有限公司 | 大数据平台资源管理方法、装置、设备及可读存储介质 |
CN110532099A (zh) * | 2019-08-30 | 2019-12-03 | 联想(北京)有限公司 | 资源隔离方法和装置以及电子设备和介质 |
CN111338770A (zh) * | 2020-02-12 | 2020-06-26 | 咪咕文化科技有限公司 | 一种任务调度的方法、服务器和计算机可读存储介质 |
CN112130976A (zh) * | 2020-09-21 | 2020-12-25 | 厦门南讯股份有限公司 | 一种基于rest的多引擎大数据任务管理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957246A (zh) * | 2014-04-22 | 2014-07-30 | 广州杰赛科技股份有限公司 | 基于租户感知的动态负载均衡方法及系统 |
CN105094984A (zh) * | 2014-11-25 | 2015-11-25 | 航天恒星科技有限公司 | 资源调度的方法及系统 |
CN108132775A (zh) * | 2016-11-30 | 2018-06-08 | 新华三技术有限公司 | 一种租户管理系统及方法 |
CN108737270A (zh) * | 2018-05-07 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种服务器集群的资源管理方法和装置 |
-
2018
- 2018-12-17 CN CN201811541036.5A patent/CN109614241B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103957246A (zh) * | 2014-04-22 | 2014-07-30 | 广州杰赛科技股份有限公司 | 基于租户感知的动态负载均衡方法及系统 |
CN105094984A (zh) * | 2014-11-25 | 2015-11-25 | 航天恒星科技有限公司 | 资源调度的方法及系统 |
CN108132775A (zh) * | 2016-11-30 | 2018-06-08 | 新华三技术有限公司 | 一种租户管理系统及方法 |
CN108737270A (zh) * | 2018-05-07 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种服务器集群的资源管理方法和装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110351384A (zh) * | 2019-07-19 | 2019-10-18 | 深圳前海微众银行股份有限公司 | 大数据平台资源管理方法、装置、设备及可读存储介质 |
CN110532099A (zh) * | 2019-08-30 | 2019-12-03 | 联想(北京)有限公司 | 资源隔离方法和装置以及电子设备和介质 |
CN110532099B (zh) * | 2019-08-30 | 2022-05-31 | 联想(北京)有限公司 | 资源隔离方法和装置以及电子设备和介质 |
CN111338770A (zh) * | 2020-02-12 | 2020-06-26 | 咪咕文化科技有限公司 | 一种任务调度的方法、服务器和计算机可读存储介质 |
CN112130976A (zh) * | 2020-09-21 | 2020-12-25 | 厦门南讯股份有限公司 | 一种基于rest的多引擎大数据任务管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109614241B (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190377604A1 (en) | Scalable function as a service platform | |
US10515326B2 (en) | Database systems and related queue management methods | |
US10999234B1 (en) | Message processing using messaging services | |
US11409719B2 (en) | Co-locating microservice persistence containers within tenant-specific database | |
US11119813B1 (en) | Mapreduce implementation using an on-demand network code execution system | |
CN110383764B (zh) | 无服务器系统中使用历史数据处理事件的系统和方法 | |
CN109614241A (zh) | 基于Yarn队列实现多集群多租户资源隔离的方法及系统 | |
US10084839B2 (en) | Upload operation using multiple connections | |
US10365953B2 (en) | Tracking and utilizing facts about a node of a multi-tenant cloud hosting environment | |
CN112753019A (zh) | 按需代码执行系统中执行环境的有效状态维持 | |
US11481239B2 (en) | Apparatus and methods to incorporate external system to approve deployment provisioning | |
US20130297673A1 (en) | Mechanism for node selection for a new application in a multi-tenant cloud hosting environment | |
US20170093988A1 (en) | Workflow service using state transfer | |
US11093279B2 (en) | Resources provisioning based on a set of discrete configurations | |
US20200259902A1 (en) | Filesystem i/o scheduler | |
US10387195B2 (en) | Method, apparatus, and computer-readable medium for performing a data exchange on a data exchange framework | |
US11316947B2 (en) | Multi-level cache-mesh-system for multi-tenant serverless environments | |
CN111435315A (zh) | 分配资源的方法、装置、设备和计算机可读介质 | |
US20210311757A1 (en) | Introspection into workloads running within virtual machines | |
CN117642724A (zh) | 使用无服务器计算系统的流式分析 | |
US10990385B1 (en) | Streaming configuration management | |
US11115365B1 (en) | Messaging overflow service | |
CN108810645B (zh) | 弹幕消息分发方法、装置、设备及存储介质 | |
US11900152B1 (en) | Controlled automatic updates to disk image layers with compatibility verification | |
CN111949378B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 311121 room 102-1 / F, room 102-2 / F, building 6, Haizhi center, 2301 yuhangtang Road, Cangqian street, Yuhang District, Hangzhou, Zhejiang Province Applicant after: HANGZHOU DAISHU TECHNOLOGY CO.,LTD. Address before: 310030 8F, building 2, Hangzhou Internet innovation and entrepreneurship Park, 176 Zixia street, Xihu District, Hangzhou, Zhejiang Applicant before: HANGZHOU DAISHU TECHNOLOGY CO.,LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |