CN111880934A - 一种资源管理方法、装置、设备及可读存储介质 - Google Patents
一种资源管理方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN111880934A CN111880934A CN202010745334.7A CN202010745334A CN111880934A CN 111880934 A CN111880934 A CN 111880934A CN 202010745334 A CN202010745334 A CN 202010745334A CN 111880934 A CN111880934 A CN 111880934A
- Authority
- CN
- China
- Prior art keywords
- task
- node
- resource management
- information
- standby
- 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.)
- Withdrawn
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
- G06F9/505—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 considering the load
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种资源管理方法、装置、设备及可读存储介质,该方法包括:监控容器化YARN对应的资源管理集群;资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息;主节点对应的pod失效后,从备节点中选定主节点;利用主节点处理资源管理任务。可见,在本方法中,在主节点对应的pod失效后,无需等待Resource Manager重建,而是直接从资源管理集群中重新选定主节点的方式实现任务接管,能够有效保障容器化YARN的高可靠性、持续性,即本方法实现了容器化的YARN AH。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种资源管理方法、装置、设备及可读存储介质。
背景技术
YARN是Hadoop集群的资源管理系统。通常YARN包括一个全局的资源管理器(Resource Manager)和每个应用程序特有的应用程序管理器(Application Master)。其中,Resource Manager负责整个系统的资源管理和分配,而Application Master负责单个应用程序的管理。
Docker提供一种轻量级的虚拟化技术,让开发者可以将应用程序、依赖的运行库文件打包并移植到一个新的容器中,Kubernetes简化了大规模部署的容器管理问题。Hadoop是一个可靠的、可扩展的、用于分布式计算的分布式系统基础架构,将Hadoop等计算、存储平台迁移部署到Kubernetes上,构建容器云平台是业界的发展趋势。
YARN是Hadoop核心组件之一,当前业界在Kubernetes平台上容器化YARN时,依赖Kubernetes的Pod重建策略保证YARN Resource Manager HA,这种HA解决方案在YARN集群中Resource Manager所在的Pod失败后,需要重建新的Resource Manager Pod,然后从状态存储区读取应用上下文信息,从Node Manager收集节点资源使用状况,以再次启用Resource Manager。虽然方案可行,但是这种HA解决方案在Resource Manager Pod重建完成前无法对外提供服务,影响了系统的整体服务性能。
综上所述,如何有效地保障容器化YARN的高可靠性等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种资源管理方法、装置、设备及可读存储介质,通过集群化Resource Manager,能够保障容器化YARN的高可靠性。
为解决上述技术问题,本发明提供如下技术方案:
一种资源管理方法,包括:
监控容器化YARN对应的资源管理集群;所述资源管理集群包括主节点和备节点,所述备节点从所述主节点中的状态存储区同步任务信息;
所述主节点对应的pod失效后,从所述备节点中选定所述主节点;
利用所述主节点处理资源管理任务。
优选地,从所述备节点中选定所述主节点,包括:
统计各个所述备节点同步的所述任务信息对应标识信息;
利用所述标识信息,将具有最新所述任务信息的备节点确定为所述主节点。
优选地,还包括:
创建与资源管理节点对应的目标pod,并将所述目标pod作为所述备节点添加至所述资源管理集群。
优选地,所述利用所述主节点处理资源管理任务,包括:
判断所述资源管理集群中是否存在未同步的目标任务;
如果是,则利用所述主节点重新处理所述目标任务。
优选地,利用所述主节点处理资源管理任务,包括:
接收目标新任务;
获取在所述主节点处理目标历史任务后,已同步历史任务信息的备节点数量;所述历史任务信息与所述目标历史任务对应;
判断所述备节点数量是否大于阈值;
如果是,则利用所述主节点处理所述目标新任务。
优选地,所述利用所述主节点处理所述目标新任务,包括:
向所述目标新任务分配任务标识;
利用所述主节点将所述目标新任务对应的目标任务信息写入状态存储区;其中,所述目标任务信息包括所述任务标识,所述目标新任务对应的任务元数据信息、任务资源信息;
运行所述目标新任务,并在运行结束后,利用所述主节点删除所述状态存储区中的所述目标任务信息。
优选地,运行所述目标新任务的过程,包括:
向YARN的节点管理集群提交统计信息;所述统计信息包括资源统计信息和任务进度信息中的至少一种;
接收所述节点管理集群反馈的相应版本号;
利用所述主节点将所述统计信息和所述对应版本号写入所述资源管理集群;
统计各个所述备节点的数据同步状态;
利用所述数据同步状态,对所述资源管理集群中的所述统计信息和所述相应版本号进行管理。
一种资源管理装置,包括:
监控模块,用于监控容器化YARN对应的资源管理集群;所述资源管理集群包括主节点和备节点,所述备节点从所述主节点中的状态存储区同步任务信息;
故障处理模块,用于所述主节点对应的pod失效后,从所述备节点中选定所述主节点;
资源任务处理模块,用于利用所述主节点处理资源管理任务。
一种资源管理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述资源管理方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述资源管理方法的步骤。
应用本发明实施例所提供的方法,监控容器化YARN对应的资源管理集群;资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息;主节点对应的pod失效后,从备节点中选定主节点;利用主节点处理资源管理任务。
为了解决因Resource Manager对应的pod失效,在重建Resource Manager时,从而导致系统无法对外提供服务的问题。在本方法中,提出了资源管理集群的概念,并基于集群同步的概念,使得集群中的节点间能够实现数据同步。具体的,即将Resource Manager集群化为资源管理集群,在该资源管理集群中主节点(Active Resource Manager,ARM)处理资源管理任务,备节点(StandBy Resource Manager,SRM)能够同步主节点中状态存储区内的任务信息,因此能够在主节点对应的pod失效后,直接接替主节点角色,进而处理资源管理任务。由此可见,在本方法中,在主节点对应的pod失效后,无需等待Resource Manager重建,而是直接从资源管理集群中重新选定主节点的方式实现任务接管,能够有效保障容器化YARN的高可靠性、持续性,即本方法实现了容器化的YARN AH。
相应地,本发明实施例还提供了与上述资源管理方法相对应的资源管理装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种资源管理方法的实施流程图;
图2为本发明实施例中一种Kubernetes上部署YARN AH集群的示意图;
图3为本发明实施例中一种基于Kubernetes的YARN HA任务提交流程示意图;
图4为本发明实施例中一种建立资源信息的流程示意图;
图5为本发明实施例中一种建立任务进度信息的流程示意图;
图6为本发明实施例中主节点失效后,数据一致性恢复示意图;
图7为本发明实施例中一种资源管理装置的结构示意图;
图8为本发明实施例中一种资源管理设备的结构示意图;
图9为本发明实施例中一种资源管理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于理解本发明实施例所提供的技术方案,下面对本发明实施例所涉及的技术用语进行详细说明:
Hadoop:一个由Apache基金会所开发的,可靠的、可扩展的、用于分布式计算的分布式系统基础架构。
HA:High Available,指高可用性集群,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,分为活动节点及备用节点。
YARN:Hadoop集群的资源管理系统。YARN包含一个全局的资源管理器ResourceManager和每个应用程序特有的Application Master。其中Resource Manager负责整个系统的资源管理和分配,而Application Master负责单个应用程序的管理。
Resource Manager集群(资源管理集群):包含2种角色,主节点(Active ResourceManager,ARM)、备节点(StandBy Resource Manager,SRM)。
状态存储区:Resource Manager存储应用上下文的数据结构,具体实现可以存储在HDFS、ZooKeeper、Etcd中。
Kubernetes:一个开源的用于管理云平台中多个主机上的容器化的应用,它支持自动化部署、大规模可伸缩、应用容器化管理。
Pod:Kubernetes创建或部署的最小的基本单位,一个Pod中包含若干容器应用。
WAL(Write-Ahead Logging),预写日志系统。
请参考图1,图1为本发明实施例中一种资源管理方法的流程图,该方法包括以下步骤:
S101、监控容器化YARN对应的资源管理集群。
其中,资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息。
容器化YARN,即在Kubernetes上实现YARN。
在本发明实施例中容器化YARN可以具体包括资源管理集群和节点管理集群。也就是说,可以在容器化YARN中部署YARN RM服务和YARN NM服务。其中,YARN RM服务由Resource Manager集群(资源管理集群)提供服务,包含一个Active Resource Manager(主节点)和多个StandBy Resource Manager(备节点)。YARN NM服务由Node Manager集群(节点管理集群)提供服务。YARN RM的部署方式可利用Kubernetes的组件Etcd集群进行部署实现,作为少量数据的高可用存储;Node Manager集群可实现负载均衡策略。YARN HA在Kubernetes上的部署可具体参考图2,图2为本发明实施例中一种Kubernetes上部署YARNAH集群的示意图。
需要说明的是,对于容器化YARN对应的资源管理集群,在该资源管理集群中,主节点为1个,即活动节点为1个,备节点(即备用节点)可以为1个也可以为多个,可根据具体需求进行设置,例如,对于主节点对应pod失效频率较高的应用场景,可设置更多的备节点。
在本发明实施例中,可通过对资源管理任务的执行情况进行统计分析,从而实现对资源管理集群进行监控。具体的,可对资源管理任务的执行数量、响应时间进行统计,以确定主节点是否有效。
S102、主节点对应的pod失效后,从备节点中选定主节点。
在确定主节点对应的pod失效后,可直接从备节点中选定一个节点作为主节点。
优选地,为了保障系统的可靠性,在从备节点中选定主节点时,可优先选择与已失效主节点信息同步效果最佳的节点。具体的,主节点选定过程,包括:
步骤一、统计各个备节点同步的任务信息对应标识信息;
步骤二、利用标识信息,将具有最新任务信息的备节点确定为主节点。
为便于描述,下面将上述两个步骤结合起来进行说明。
在本发明实施例中,主节点在状态存储区存储任务信息时,可为不同的任务对应的任务信息设置标识信息,如任务ID或版本号等。基于任务标识,便可确定出当前各个备节点同步数据的情况,最终可基于标识信息将具有最终任务信息的备节点确定为主节点。
举例说明,主节点的状态存储区中存储的任务信息均具有对应的任务ID,且新任务的ID总是大于历史任务的ID;因此,可直接获取各个备节点所同步的任务信息的任务ID,将同步有最大任务ID对应的任务信息的备节点确定为主节点。当然,在存在多个备节点均满足主节点情况时,可随机选择其中一个节点为主节点。
S103、利用主节点处理资源管理任务。
在本发明实施例中,主节点即负载处理资源管理任务。该主节点可以为失效前的主节点,也可以为在先的主节点失效后重新选定的主节点。
其中,资源管理任务也可称之为资源管理作业。
需要说明的是,在主节点没有失效的情况下,则直接执行步骤S103。
对于主节点存在更替的情况,下面分别对主节点没有出现更替,以及主节点出现更替这两种情况分别对主节点如何处理资源管理任务进行详细说明。
情况一:
对于主节点未出现更替,资源管理任务处理过程,包括:
步骤一、接收目标新任务;
步骤二、获取在主节点处理目标历史任务后,已同步历史任务信息的备节点数量;历史任务信息与目标历史任务对应;
步骤三、判断备节点数量是否大于阈值;
步骤四、如果是,则利用主节点处理目标新任务。
当主节点没有出现更替,则主节点无需考虑上一个主节点的是否有对应未处理完的任务。在接收到目标新任务后,为了确保备节点进行了有效同步,在执行目标新任务之前,需先对备节点同步任务信息的情况进行统计。
具体的,若需要主节点和备节点具有高度任务信息同步,可以仅在确定了上一个目标历史任务对应的历史任务信息均已同步到全部备节点之后,再处理目标新任务。当然,也可以在前N(N大于1)个目标历史任务对应的历史任务信息被同步到指定数量的备节点之后,再处理目标新任务。也就是说,步骤二中的目标历史任务可以为上一个被处理的任务,也可以为上N个被处理的任务。步骤三中的阈值可以为资源管理集群中全部备节点的数量,也可以为资源管理集群中的部分被节点的数量,例如,若资源管理集群共5个备节点,该阈值可以为1至5中的任意数值。
确定备节点的同步情况达到要求之后,便可利用主节点来执行目标新任务。若备节点的同步情况没有达到要求,则可以等待达到要求之后再执行目标新任务。
其中,上述步骤四中执行目标新任务,可以具体包括:
步骤1、向目标新任务分配任务标识。
步骤2、利用主节点将目标新任务对应的目标任务信息写入状态存储区;其中,目标任务信息包括任务标识,目标新任务对应的任务元数据信息、任务资源信息。
步骤3、运行目标新任务,并在运行结束后,利用主节点删除状态存储区中的目标任务信息。
其中,任务标识可以具体为任务ID。为了便于同步,该任务ID的数值可以具体为新任务对应的ID大于历史任务对应的ID。
其中,任务元数据信息可以具体包括:任务JAR文件、配置文件以及输入分片地址信息。
由于相邻任务可能属于不同的类型任务,因此,在完成某个任务之后,可将状态存储区中的对应的目标任务信息进行删除。
举例说明:请参考图2和图3,其中,图3为本发明实施例中一种基于Kubernetes的YARN HA任务提交流程示意图。客户端向YARN RM服务提交新作业(即目标新任务),YARN RM服务为该新作业分配作业ID,Active RM节点(即主节点)把作业ID、作业元数据信息、作业资源信息写入到内存中的状态存储区中,并持久化到Etcd集群上。YARN RM集群中所有StandBy RM节点感知新作业以及新的资源的分配,并同步Active RM节点中状态存储区数据。StandBy RM节点和Active RM节点数据同步后,发送ACK确认信号。Active RM节点收到过半的ACK信号,则可处理该下一个任务(任务可从资源请求中解析确定出),需要注意的是下一个资源请求可能属于不同的作业。当作业运行结束后,删除作业在Etcd状态存储区内的所有信息。
优选地,为了实现YARN资源统计和任务进度查看功能,执行上述步骤3,运行目标新任务的过程,包括:
步骤3.1、向YARN的节点管理集群提交统计信息;统计信息包括资源统计信息和任务进度信息中的至少一种;
步骤3.2、接收节点管理集群反馈的相应版本号;
步骤3.3、利用主节点将统计信息和对应版本号写入资源管理集群;
步骤3.4、统计各个备节点的数据同步状态;
步骤3.5、利用数据同步状态,对资源管理集群中的统计信息和相应版本号进行管理。
为便于描述,下面将上述步骤3.1至步骤3.5结合起来进行说明。
在本发明实施例中,可以仅针对资源统计信息,也可以仅针对任务进度信息,还可同时对资源统计信息和任务进度信息进行统计管理。
下面分别对仅针对资源统计信息,也可以仅针对任务进度信息进行统计管理的具体实现进行详细说明,对应同时管理二者的情况可参照于此。
对于资源统计信息的统计管理,请参考图4,图4为本发明实施例中一种建立资源信息的流程示意图。
YARN RM服务向YARN NM服务提交资源统计信息,YARN RM服务分配版本号后,YARN中的Active Resource Manager把资源统计信息及版本号写入到Etcd集群中,YARN RM集群中所有的StandBy RM节点感知新的资源统计信息及版本号,和本地节点上当前资源统计信息版本号进行比较,同步数据,并向Active Resource Manager发送ACK确认信号。当ActiveResource Manager收到过半ACK信号,确定同步完成,删除Etcd集群上资源统计信息及版本号。
相应的,对于任务进度信息的统计管理,请参考图5,图5为本发明实施例中一种建立任务进度信息的流程示意图。
YARN RM服务向YARN NM服务提交任务进度信息,YARN RM服务分配版本号后YARNActive Resource Manager把任务进度信息及版本号写入到Etcd集群中,YARN RM集群中所有StandBy RM节点感知新的任务进度信息及版本号,和本地节点上当前作业任务进度信息版本号进行比较,基于比较结果进行同步数据并发送ACK确认信号。当Active ResourceManager收到过半ACK信号,确定同步完成,删除Etcd集群上作业任务进度信息及版本号。
情况二:
对于主节点出现更替后,资源管理任务处理过程,包括:
步骤一、判断资源管理集群中是否存在未同步的目标任务。
步骤二、如果是,则利用主节点重新处理目标任务。
从上述步骤一和步骤二可见,在本实施例中,为了确保任务执行的可靠性,在主节点更替后,新主节点需要对上一个主节点的任务处理情况进行检查,当存在未同步的目标任务时,则需要重新处理目标任务,避免出现任务遗漏。
举例说明:请参考图6,图6为本发明实施例中主节点失效后,数据一致性恢复示意图。采用如图3所示的提交流程,在YARN应用提交过程中,Active Resource Manager(主节点)失效,由于Resource Manager集群中至少有一半StandBy Resource Manager节点状态和Active Resource Manager的失效前状态保持一致,这些StandBy Resource Manager节点的状态存储区和Active Resource Manager最多相差一个任务(当然,在实际应用中也可以相差N个任务,具体可参见上文中的目标新任务执行要求)。使用一定的选举策略(如随时选择,基于版本号或任务ID进行筛选),从该StandBy Resource Manager集合中选举一个StandBy Resource Manager作为Active Resource Manager,和Etcd集群上存储的作业和任务号做比较,最多处理一个任务后,便可以保证基于Kubernetes的YARN HA集群仍然可以对外提供读服务。
而在更替后的主节点完成了上一个主节点未完成的任务之后,便可正常处理任务,此时具体的处理过程可参考上文中的情况一的具体处理过程。
应用本发明实施例所提供的方法,监控容器化YARN对应的资源管理集群;资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息;主节点对应的pod失效后,从备节点中选定主节点;利用主节点处理资源管理任务。
为了解决因Resource Manager对应的pod失效,在重建Resource Manager时,从而导致系统无法对外提供服务的问题。在本方法中,提出了资源管理集群的概念,并基于集群同步的概念,使得集群中的节点间能够实现数据同步。具体的,即将Resource Manager集群化为资源管理集群,在该资源管理集群中主节点(Active Resource Manager,ARM)处理资源管理任务,备节点(StandBy Resource Manager,SRM)能够同步主节点中状态存储区内的任务信息,因此能够在主节点对应的pod失效后,直接接替主节点角色,进而处理资源管理任务。由此可见,在本方法中,在主节点对应的pod失效后,无需等待Resource Manager重建,而是直接从资源管理集群中重新选定主节点的方式实现任务接管,能够有效保障容器化YARN的高可靠性、持续性,即本方法实现了容器化的YARN AH。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进方案。在优选/改进实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在本文的优选/改进实施例中不再一一赘述。
优选地,为了避免出现主节点连续失效,即重新选定的主节点也出现失效,最终导致资源管理集群中无备节点可接替主节点任务,在上述实施例一的基础上,还可创建资源管理节点对应的pod,从而对资源管理集群中的备节点进行补充。具体的,可创建与资源管理节点对应的目标pod,并将目标pod作为备节点添加至资源管理集群。如此,便可保障资源管理集群中的备节点数量充足,能够在主节点连续失效的情况下,也可对外进行持续可靠的服务。
相应于上面的方法实施例,本发明实施例还提供了一种资源管理装置,下文描述的资源管理装置与上文描述的资源管理方法可相互对应参照。
参见图7所示,该装置包括以下模块:
监控模块101,用于监控容器化YARN对应的资源管理集群;资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息;
故障处理模块102,用于主节点对应的pod失效后,从备节点中选定主节点;
资源任务处理模块103,用于利用主节点处理资源管理任务。
应用本发明实施例所提供的装置,监控容器化YARN对应的资源管理集群;资源管理集群包括主节点和备节点,备节点从主节点中的状态存储区同步任务信息;主节点对应的pod失效后,从备节点中选定主节点;利用主节点处理资源管理任务。
为了解决因Resource Manager对应的pod失效,在重建Resource Manager时,从而导致系统无法对外提供服务的问题。在本装置中,提出了资源管理集群的概念,并基于集群同步的概念,使得集群中的节点间能够实现数据同步。具体的,即将Resource Manager集群化为资源管理集群,在该资源管理集群中主节点(Active Resource Manager,ARM)处理资源管理任务,备节点(StandBy Resource Manager,SRM)能够同步主节点中状态存储区内的任务信息,因此能够在主节点对应的pod失效后,直接接替主节点角色,进而处理资源管理任务。由此可见,在本装置中,在主节点对应的pod失效后,无需等待Resource Manager重建,而是直接从资源管理集群中重新选定主节点的方式实现任务接管,能够有效保障容器化YARN的高可靠性、持续性,即本装置实现了容器化的YARN AH。
在本发明的一种具体实施方式中,故障处理模块102,具体用于统计各个备节点同步的任务信息对应标识信息;利用标识信息,将具有最新任务信息的备节点确定为主节点。
在本发明的一种具体实施方式中,还包括:
备节点创建模块,用于创建与资源管理节点对应的目标pod,并将目标pod作为备节点添加至资源管理集群。
在本发明的一种具体实施方式中,资源任务处理模块103,具体用于判断资源管理集群中是否存在未同步的目标任务;如果是,则利用主节点重新处理目标任务。
在本发明的一种具体实施方式中,资源任务处理模块103,具体用于接收目标新任务;获取在主节点处理目标历史任务后,已同步历史任务信息的备节点数量;历史任务信息与目标历史任务对应;判断备节点数量是否大于阈值;如果是,则利用主节点处理目标新任务。
在本发明的一种具体实施方式中,资源任务处理模块103,具体用于向目标新任务分配任务标识;利用主节点将目标新任务对应的目标任务信息写入状态存储区;其中,目标任务信息包括任务标识,目标新任务对应的任务元数据信息、任务资源信息;运行目标新任务,并在运行结束后,利用主节点删除状态存储区中的目标任务信息。
在本发明的一种具体实施方式中,资源任务处理模块103,具体用于向YARN的节点管理集群提交统计信息;统计信息包括资源统计信息和任务进度信息中的至少一种;接收节点管理集群反馈的相应版本号;利用主节点将统计信息和对应版本号写入资源管理集群;统计各个备节点的数据同步状态;利用数据同步状态,对资源管理集群中的统计信息和相应版本号进行管理。
相应于上面的方法实施例,本发明实施例还提供了一种资源管理设备,下文描述的一种资源管理设备与上文描述的一种资源管理方法可相互对应参照。
参见图8所示,该资源管理设备包括:
存储器332,用于存储计算机程序;
处理器322,用于执行计算机程序时实现上述方法实施例的资源管理方法的步骤。
具体的,请参考图9,图9为本实施例提供的一种资源管理设备的具体结构示意图,该资源管理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机应用程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在资源管理设备301上执行存储器332中的一系列指令操作。
资源管理设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。
上文所描述的资源管理方法中的步骤可以由资源管理设备的结构实现。
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种资源管理方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的资源管理方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
Claims (10)
1.一种资源管理方法,其特征在于,包括:
监控容器化YARN对应的资源管理集群;所述资源管理集群包括主节点和备节点,所述备节点从所述主节点中的状态存储区同步任务信息;
所述主节点对应的pod失效后,从所述备节点中选定所述主节点;
利用所述主节点处理资源管理任务。
2.根据权利要求1所述的资源管理方法,其特征在于,从所述备节点中选定所述主节点,包括:
统计各个所述备节点同步的所述任务信息对应标识信息;
利用所述标识信息,将具有最新所述任务信息的备节点确定为所述主节点。
3.根据权利要求1所述的资源管理方法,其特征在于,还包括:
创建与资源管理节点对应的目标pod,并将所述目标pod作为所述备节点添加至所述资源管理集群。
4.根据权利要求1所述的资源管理方法,其特征在于,所述利用所述主节点处理资源管理任务,包括:
判断所述资源管理集群中是否存在未同步的目标任务;
如果是,则利用所述主节点重新处理所述目标任务。
5.根据权利要求1所述的资源管理方法,其特征在于,利用所述主节点处理资源管理任务,包括:
接收目标新任务;
获取在所述主节点处理目标历史任务后,已同步历史任务信息的备节点数量;所述历史任务信息与所述目标历史任务对应;
判断所述备节点数量是否大于阈值;
如果是,则利用所述主节点处理所述目标新任务。
6.根据权利要求5所述的资源管理方法,其特征在于,所述利用所述主节点处理所述目标新任务,包括:
向所述目标新任务分配任务标识;
利用所述主节点将所述目标新任务对应的目标任务信息写入状态存储区;其中,所述目标任务信息包括所述任务标识,所述目标新任务对应的任务元数据信息、任务资源信息;
运行所述目标新任务,并在运行结束后,利用所述主节点删除所述状态存储区中的所述目标任务信息。
7.根据权利要求6所述的资源管理方法,其特征在于,运行所述目标新任务的过程,包括:
向YARN的节点管理集群提交统计信息;所述统计信息包括资源统计信息和任务进度信息中的至少一种;
接收所述节点管理集群反馈的相应版本号;
利用所述主节点将所述统计信息和所述对应版本号写入所述资源管理集群;
统计各个所述备节点的数据同步状态;
利用所述数据同步状态,对所述资源管理集群中的所述统计信息和所述相应版本号进行管理。
8.一种资源管理装置,其特征在于,包括:
监控模块,用于监控容器化YARN对应的资源管理集群;所述资源管理集群包括主节点和备节点,所述备节点从所述主节点中的状态存储区同步任务信息;
故障处理模块,用于所述主节点对应的pod失效后,从所述备节点中选定所述主节点;
资源任务处理模块,用于利用所述主节点处理资源管理任务。
9.一种资源管理设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述资源管理方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述资源管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010745334.7A CN111880934A (zh) | 2020-07-29 | 2020-07-29 | 一种资源管理方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010745334.7A CN111880934A (zh) | 2020-07-29 | 2020-07-29 | 一种资源管理方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111880934A true CN111880934A (zh) | 2020-11-03 |
Family
ID=73201123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010745334.7A Withdrawn CN111880934A (zh) | 2020-07-29 | 2020-07-29 | 一种资源管理方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111880934A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112190924A (zh) * | 2020-12-04 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 一种数据容灾方法、装置及计算机可读介质 |
CN112433999A (zh) * | 2020-11-05 | 2021-03-02 | 北京浪潮数据技术有限公司 | 一种Janusgraph客户端遍历方法及相关组件 |
CN112486513A (zh) * | 2020-11-25 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 一种基于容器的集群管理方法及系统 |
CN112491995A (zh) * | 2020-11-18 | 2021-03-12 | 浪潮云信息技术股份公司 | 一种高可用Redis服务架构及方法 |
CN112860413A (zh) * | 2021-03-29 | 2021-05-28 | 中信银行股份有限公司 | 一种集中式作业调度系统、装置、电子设备及计算机可读存储介质 |
CN113419838A (zh) * | 2021-07-16 | 2021-09-21 | 北京字节跳动网络技术有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN114969149A (zh) * | 2022-05-06 | 2022-08-30 | 北京偶数科技有限公司 | 数据资源的处理方法、装置以及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160188594A1 (en) * | 2014-12-31 | 2016-06-30 | Cloudera, Inc. | Resource management in a distributed computing environment |
US20160378560A1 (en) * | 2014-02-28 | 2016-12-29 | Pivotal Software, Inc. | Executing a foreign program on a parallel computing system |
CN106301823A (zh) * | 2015-05-19 | 2017-01-04 | 中兴通讯股份有限公司 | 一种关键组件的故障告警方法、装置及大数据管理系统 |
CN106953910A (zh) * | 2017-03-17 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种Hadoop计算存储分离方法 |
CN110362381A (zh) * | 2019-06-21 | 2019-10-22 | 深圳市汇川技术股份有限公司 | Hdfs集群高可用部署方法、系统、设备及存储介质 |
CN110750445A (zh) * | 2019-09-12 | 2020-02-04 | 苏州浪潮智能科技有限公司 | 一种yarn组件高可用性功能的测试方法、系统及设备 |
CN111327681A (zh) * | 2020-01-21 | 2020-06-23 | 北京工业大学 | 一种基于Kubernetes的云计算数据平台构建方法 |
-
2020
- 2020-07-29 CN CN202010745334.7A patent/CN111880934A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160378560A1 (en) * | 2014-02-28 | 2016-12-29 | Pivotal Software, Inc. | Executing a foreign program on a parallel computing system |
US20160188594A1 (en) * | 2014-12-31 | 2016-06-30 | Cloudera, Inc. | Resource management in a distributed computing environment |
CN106301823A (zh) * | 2015-05-19 | 2017-01-04 | 中兴通讯股份有限公司 | 一种关键组件的故障告警方法、装置及大数据管理系统 |
CN106953910A (zh) * | 2017-03-17 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种Hadoop计算存储分离方法 |
CN110362381A (zh) * | 2019-06-21 | 2019-10-22 | 深圳市汇川技术股份有限公司 | Hdfs集群高可用部署方法、系统、设备及存储介质 |
CN110750445A (zh) * | 2019-09-12 | 2020-02-04 | 苏州浪潮智能科技有限公司 | 一种yarn组件高可用性功能的测试方法、系统及设备 |
CN111327681A (zh) * | 2020-01-21 | 2020-06-23 | 北京工业大学 | 一种基于Kubernetes的云计算数据平台构建方法 |
Non-Patent Citations (1)
Title |
---|
陈国良等: ""大数据一体机关键技术及应用研究"", 《南京邮电大学学报(自然科学版)》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112433999A (zh) * | 2020-11-05 | 2021-03-02 | 北京浪潮数据技术有限公司 | 一种Janusgraph客户端遍历方法及相关组件 |
CN112433999B (zh) * | 2020-11-05 | 2023-12-22 | 北京浪潮数据技术有限公司 | 一种Janusgraph客户端遍历方法及相关组件 |
CN112491995A (zh) * | 2020-11-18 | 2021-03-12 | 浪潮云信息技术股份公司 | 一种高可用Redis服务架构及方法 |
CN112486513A (zh) * | 2020-11-25 | 2021-03-12 | 湖南麒麟信安科技股份有限公司 | 一种基于容器的集群管理方法及系统 |
CN112486513B (zh) * | 2020-11-25 | 2022-08-12 | 湖南麒麟信安科技股份有限公司 | 一种基于容器的集群管理方法及系统 |
CN112190924A (zh) * | 2020-12-04 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 一种数据容灾方法、装置及计算机可读介质 |
CN112860413A (zh) * | 2021-03-29 | 2021-05-28 | 中信银行股份有限公司 | 一种集中式作业调度系统、装置、电子设备及计算机可读存储介质 |
CN113419838A (zh) * | 2021-07-16 | 2021-09-21 | 北京字节跳动网络技术有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN114969149A (zh) * | 2022-05-06 | 2022-08-30 | 北京偶数科技有限公司 | 数据资源的处理方法、装置以及存储介质 |
CN114969149B (zh) * | 2022-05-06 | 2024-04-30 | 北京偶数科技有限公司 | 数据资源的处理方法、装置以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111880934A (zh) | 一种资源管理方法、装置、设备及可读存储介质 | |
US11714726B2 (en) | Failover and recovery for replicated data instances | |
US11477105B2 (en) | Monitoring of replicated data instances | |
CN105933137B (zh) | 一种资源管理方法、装置及系统 | |
CN108664496B (zh) | 数据迁移方法及装置 | |
US8631283B1 (en) | Monitoring and automated recovery of data instances | |
CN102346460B (zh) | 一种基于事务的服务控制系统及其控制方法 | |
CN108270726B (zh) | 应用实例部署方法及装置 | |
US11169787B2 (en) | Software acceleration platform for supporting decomposed, on-demand network services | |
CN113886089B (zh) | 一种任务处理方法、装置、系统、设备及介质 | |
CN115080436B (zh) | 测试指标确定方法、装置、电子设备及存储介质 | |
US11824922B2 (en) | Operating cloud-managed remote edge sites at reduced disk capacity | |
CN112612579A (zh) | 虚拟机部署方法、存储介质及计算机设备 | |
Salapura et al. | Remote Restart for a High Performance Virtual Machine Recovery in a Cloud | |
CN118075151A (zh) | 一种将应用迁移到边缘轻量级Kubernetes的方法及系统 | |
CN116880956A (zh) | 一种应用于数字工厂的自动化部署方法及系统 | |
CN118363944A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201103 |