CN114189482A - 一种集群资源的控制方法、装置和系统 - Google Patents

一种集群资源的控制方法、装置和系统 Download PDF

Info

Publication number
CN114189482A
CN114189482A CN202111524982.0A CN202111524982A CN114189482A CN 114189482 A CN114189482 A CN 114189482A CN 202111524982 A CN202111524982 A CN 202111524982A CN 114189482 A CN114189482 A CN 114189482A
Authority
CN
China
Prior art keywords
cluster
resources
idle resources
resource
idle
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
CN202111524982.0A
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.)
Zhengzhou Apas Digital Cloud Information Technology Co ltd
Original Assignee
Zhengzhou Apas Digital Cloud 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 Zhengzhou Apas Digital Cloud Information Technology Co ltd filed Critical Zhengzhou Apas Digital Cloud Information Technology Co ltd
Priority to CN202111524982.0A priority Critical patent/CN114189482A/zh
Publication of CN114189482A publication Critical patent/CN114189482A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • 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/5022Mechanisms to release resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/823Prediction of resource usage

Abstract

本申请公开了一种集群资源的控制方法、装置和系统,该方法包括:获取第一集群和第二集群各自当前的资源使用数据,第一集群和第二集群隔离运行;根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据;根据当前的资源使用数据和预测得到的资源使用数据,判断第一集群和第二集群是否有扩容需求或是否存在空闲资源;在确定第一集群有扩容需求且第二集群有空闲资源的情况下,控制第二集群释放空闲资源,以及控制第一集群回收空闲资源以对第一集群扩容。第一集群和第二集群隔离运行可以避免资源争抢,将第二集群的空闲资源释放给第一集群,可以避免第一集群中的任务阻塞保证任务平滑执行,同时提高第二集群的资源利用率。

Description

一种集群资源的控制方法、装置和系统
技术领域
本申请涉及计算机技术领域,尤其涉及一种集群资源的控制方法、装置和系统。
背景技术
目前在使用多个集群对离线任务和在线任务进行处理时,通常可以采用两种方案。一种是混合部署的方案,即每个集群既可以处理离线任务又可以处理在线任务。另一种是隔离运行的方案,即离线任务和在线任务由不同的集群进行处理,同一集群仅处理离线任务或在线任务。
然而,在实际应用中,上述混合部署的方案容易出现在线任务和离线任务争抢资源的问题,导致任务提交缓慢或者运行时间过长。上述隔离运行的方案虽然不会出现争抢资源的问题,但是当任务过多或过少时,容易出现某个集群资源不足或资源空闲的问题。
发明内容
本申请实施例提供一种集群资源的控制方法、装置和系统,用于解决在使用在线集群和离线集群进行业务处理时,容易出现资源争抢、资源不足或资源空闲的问题。
为解决上述技术问题,本申请实施例是这样实现的:
第一方面,提出一种集群资源的控制方法,包括:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
第二方面,提出一种集群资源的控制装置,包括:
获取模块,获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
预测模块,根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
判断模块,根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
控制模块,在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
第三方面,提出一种电子设备,该电子设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,该可执行指令在被执行时使该处理器执行以下操作:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
第四方面,提出一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下方法:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
第五方面,提出一种集群资源的控制系统,包括服务器、第一集群和第二集群,所述第一集群和所述第二集群隔离运行,其中:
所述服务器用于获取所述第一集群和所述第二集群各自当前的资源使用数据;根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群进行扩容;
所述第二集群用于响应所述服务器的控制并释放空闲资源;
所述第一集群用于响应所述服务器的控制并回收所述第二集群释放的空闲资源。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在第一集群和第二集群隔离运行的情况下,可以实时获取第一集群和第二集群各自的资源使用情况,并根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用情况,然后根据当前获取的资源使用情况和预测得到的资源使用情况判断第一集群和第二集群是否有扩容需求或是否有空闲资源,在确定第一集群有扩容需求且第二集群有空闲资源时,可以控制第二集群释放空闲资源,同时控制第一集群回收该空闲资源以对第一集群进行扩容。这样,由于第一集群和第二集群是隔离运行的,即在线任务和离线任务可以由不同的集群进行处理,因此,可以避免在线任务和离线任务由同一集群处理时出现的资源争抢问题;由于可以预测第一集群和第二集群各自在未来指定时间的资源使用情况,并在确定第一集群在未来指定时间有扩容需求且第二集群有空闲资源的情况下,控制将第二集群中的空闲资源释放给第一集群以对第一集群扩容,因此,可以保证第一集群有足够的资源进行任务处理,避免第一集群中的任务阻塞,保证任务的平滑执行,同时也可以避免第二集群中的资源浪费,提高第二集群的资源利用率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一个实施例集群资源的控制系统的架构示意图;
图2是本申请的一个实施例集群资源的控制方法的流程示意图;
图3是本申请的一个实施例集群资源的控制方法的流程示意图;
图4是本申请的一个实施例电子设备的结构示意图;
图5是本申请的一个实施例集群资源的控制装置的结构示意图;
图6是本申请的一个实施例集群资源的控制系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
目前在使用多个集群对离线任务和在线任务进行处理时,可以采用混合部署的方案,也可以采用隔离运行的方案。然而,混合部署的方案容易出现资源争抢的问题,导致任务阻塞,进而导致任务提交缓慢运行时间过长,同时也容易导致集群不够稳定,集群的维护成本高。隔离运行的方案可以将不同任务交由不同集群进行处理,虽然不会出现资源争抢的问题,但是,当需要处理的任务较多时,容易出现资源不足的问题,导致任务处理不及时,当需要处理的任务较少时,容易出现资源空闲的问题,导致资源利用率低。
为了解决上述技术问题,本申请实施例提出一种集群资源的控制方法、装置和系统,该方法包括:获取第一集群和第二集群各自当前的资源使用数据,第一集群和第二集群隔离运行;根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据;根据第一集群和第二集群各自当前的资源使用数据和预测得到的资源使用数据,判断第一集群和第二集群是否有扩容需求或是否存在空闲资源;在确定第一集群有扩容需求且第二集群有空闲资源的情况下,控制第二集群释放空闲资源,以及控制第一集群回收空闲资源以对第一集群扩容。
这样,由于第一集群和第二集群是隔离运行的,即在线任务和离线任务可以由不同的集群进行处理,因此,可以避免在线任务和离线任务由同一集群处理时出现的资源争抢问题;由于可以预测第一集群和第二集群各自在未来指定时间的资源使用情况,并在确定第一集群在未来指定时间有扩容需求且第二集群有空闲资源的情况下,控制将第二集群中的空闲资源释放给第一集群以对第一集群扩容,因此,可以保证第一集群有足够的资源进行任务处理,避免第一集群中的任务阻塞,保证任务的平滑执行,同时也可以避免第二集群中的资源浪费,提高第二集群的资源利用率。
本申请实施例中,第一集群和第二集群隔离运行,该隔离运行具体可以是第一集群和第二集群用于处理不同的任务(离线任务和在线任务),且第一集群和第二集群各自用于处理任务的资源互不干扰。第一集群和第二集群可以用于处理相同或不同业务系统中的不同任务。在该相同或不同的业务系统中,在线任务(也可以称为实时任务)和离线任务可以具有一定的规律性,该规律性可表现为:当在线任务处于高峰期时,离线任务通常处于非高峰期,当离线任务处于高峰期时,在线任务通常处于非高峰期。考虑到业务的规律性,为了解决上述技术问题,本申请实施例可以在预测到第一集群在未来指定时间需要扩容且第二集群有空闲资源时,可以将第二集群的空闲资源释放给第一集群,即在集群之间进行资源切换,使得第一集群可以有足够的资源进行业务处理,避免任务阻塞,保证业务的平滑执行,同时可以还保证第二集群中的资源能够得到充分利用,避免第二集群中的源费浪资,提高资源利用率。
上述第一集群可以是离线集群,第二集群为在线集群(也可以称为实时集群),或者,也可以是第一集群为在线集群,第二集群为离线集群。其中,离线集群可以是对离线任务进行处理的集群,在线集群可以是对在线任务进行处理的集群,每个集群中可以包括多个主机。
下面结合图1对本申请实施例提供的技术方案的一种可能的应用场景进行说明。图1是本申请的一个实施例集群资源的控制系统的架构示意图,图1所示的系统中包括服务器11、第一集群12和第二集群13,第一集群12和第二集群13隔离运行。
服务器11可以提供数据采集服务、模型训练服务、模型预测服务和集群资源控制服务,该数据采集服务用于获取第一集群12和第二集群13中的资源使用数据和任务运行数据。模型训练服务用于训练预测模型,预测模型用于预测第一集群12和第二集群13各自在未来任意时间的资源使用情况。模型预测服务用于根据预测模型预测第一集群12和第二集群13在未来指定时间的资源使用情况。集群资源控制服务用于判断第一集群12和第二集群13在未来指定时间是否有扩容需求或是否有空闲资源,并在确定第一集群12有扩容需求且第二集群13有空闲资源的情况下,向第二集群13发送控制指令以控制第二集群13释放空闲资源,同时还会向第一集群12发送控制指令以控制第一集群12回收第二集群13释放的空闲资源,进而对第一集群12扩容。
第一集群12中包括多个主机,分别为Host1至HostN,多个主机提供集群资源并对任务进行处理。第一集群12中设置有客户端,客户端用于接收服务器11的控制指令。第一集群12中还提供yarn资源管理服务和Spark History Server服务,yarn资源管理服务用于提供第一集群12的历史和实时资源使用数据,Spark History Server服务用于提供第一集群12的历史任务运行数据。
第二集群13中也包括多个主机,分别为Host1至HostM,多个主机提供集群资源并对任务进行处理。第二集群13中设置也有第一集群12中的客户端并用于接收服务器11的控制指令。第二集群13也可以提供上述yarn资源管理服务和Spark History Server服务。
本申请实施例中,第一集群12和第二集群13的每个主机中都可以设置两套系统镜像,分别是第一集群的系统镜像和第二系统的系统镜像,两个系统镜像之间可以相互切换。当主机为第一集群12提供资源时,主机可以切换为第一集群12的系统镜像,当主机为第二集群13提供资源时,主机中可以切换为第二集群13的系统镜像。
基于本申请实施例提供的技术方案,服务器11中的数据采集服务可以预先获取第一集群12和第二集群13中的历史资源使用数据和历史任务运行数据,然后由模型训练服务进行模型训练得到预测模型。在对第一集群12和第二集群13中的集群资源进行控制时,服务器11中的数据采集服务可以获取第一集群12和第二集群13当前的资源使用数据,模型预测服务可以根据预先训练的模型预测第一集群12和第二集群13在未来指定时间的资源使用数据,集群资源控制服务可以根据数据采集服务获取的当前资源使用数据和模型预测服务预测得到的资源使用数据,判断第一集群12和第二集群13在未来指定时间是否有扩容需求或是否有空闲资源,若第一集群12有扩容需求且第二集群13有空闲资源,则向第二集群13发送控制指令以控制第二集群13释放空闲资源,同时向第一集群12发送控制指令以控制第一集群12回收第二集群13释放的空闲资源,进而对第一集群12扩容。
由于第一集群12和第二集群13是隔离运行的,即在线任务和离线任务可以由不同的集群进行处理,因此,可以避免在线任务和离线任务由同一集群处理时出现的资源争抢问题;由于在预测到第一集群12在未来指定时间有扩容需求且第二集群13有空闲资源的情况下,可以控制将第二集群13中的空闲资源释放给第一集群12,因此,可以保证第一集群12有足够的资源进行任务处理,避免第一集群12中的任务阻塞,保证任务的平滑执行,同时也可以避免第二集群13中的资源浪费,提高第二集群13的资源利用率。
需要说明的是,本申请实施例在第一集群12和第二集群13的基础上引入服务器11,该服务器11可以是人工智能服务器,且可以在不需要人为干预的情况下自动进行集群的资源控制,这样,一方面可以提高对集群资源的智能控制,提高控制的灵活性,另一方面,还可以避免由第一集群12或第二集群13进行资源控制时无法保证集群中的资源全部用于任务处理进而导致任务无法平滑执行的问题。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图2是本申请的一个实施例集群资源的控制方法的流程示意图。图2所示实施例的执行主体可以是图1所示的服务器11,所述方法如下所述。
S202:获取第一集群和第二集群各自当前的资源使用数据,第一集群和第二集群隔离运行。
在对第一集群和第二集群中的资源进行控制时,可以获取第一集群和第二集群各自在当前的资源使用数据。该当前的资源使用数据可以表征第一集群和第二集群各自在当前的资源使用情况,具体可以是第一集群的内存使用数据和/或CPU使用数据,以及第二集群的内存使用数据和/或CPU使用数据。内存使用数据可以表征内存使用情况,具体可以包括内存使用率、已使用的内存量、未使用的内存量、内存总量、剩余的可用内存量等。CPU使用数据可以表征CPU使用情况,具体可以包括CPU使用率、已使用的CPU、未使用的CPU、CPU总量、剩余的可用CPU等。
第一集群和第二集群隔离运行。第一集群和第二集群可以分别是离线集群、在线集群,或者也可以分别是在线集群、离线集群。离线集群用于处理离线任务,在线集群用于处理在线任务。
S204:根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据。
预测模型可以基于第一集群和第二集群各自的历史资源使用数据和历史任务运行数据预先训练得到,该预测模型可以预测得到第一集群和第二集群在未来任一时间的资源使用数据。在对集群资源进行控制时,可以根据预先训练得到的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据。该未来指定时间可以根据实际情况确定,这里不做具体限定。可选地,该未来指定时间可以是当前时间的15分钟后。
S206:根据当前的资源使用数据和预测得到的资源使用数据,判断第一集群和第二集群是否有扩容需求或是否存在空闲资源。
这里可以分别对第一集群和第二集群进行判断。具体地,针对第一集群,可以将第一集群当前的资源使用数据与预测得到的资源使用数据进行比较,根据比较结果判断第一集群在未来指定时间是否有扩容需求或是否存在空闲资源。根据第二集群,可以将第二集群当前的资源使用数据与预测得到的资源使用数据进行比较,根据比较结果判断第二集群在未来指定时间是否有扩容需求或是否存在空闲资源。
S208:在确定第一集群有扩容需求且第二集群有空闲资源的情况下,控制第二集群释放空闲资源,以及控制第一集群回收空闲资源以对第一集群扩容。
在对第一集群和第二集群各自在当前和未来指定时间的资源使用情况进行上述判断后,若判断结果为第一集群有扩容需求且第二集群有空闲资源,则可以控制第二集群释放空闲资源,以及控制第一集群回收空闲资源以对第一集群扩容。具体地,可以向第二集群下发控制指令,该控制指令用于指示第二集群释放空闲资源,同时向第一集群发送控制指令,该控制指令用于指示第一集群回收第二集群释放的空闲资源。
可选地,服务器在向第一集群和第二集群发送控制指令时,可以先将控制指令先发送到第一集群和第二集群中设置的与服务器对应的客户端(如图1所示的客户端),由客户端将控制指令转发给相应的第一集群和第二集群,这样可以方便地实现服务端和集群之间的交互。可选地,为了保证客户端和服务器的正常运行,在集群运行的过程中,可以通过客户端对服务器进行心跳检测,保证服务器和客户端可以正常通信,从而保证服务器的控制指令可以正常发送到客户端进而发送给第一集群/第二集群。
在一种可能的实现方式中,服务器控制第二集群释放空闲资源,具体可以是控制第二集群在未来指定时间释放空闲资源,保证从当前时间到未来指定时间之间的这段时间内,第二集群的空闲资源可以用于处理第二集群中的任务,保证第二集群中的任务能够在这段时间内及时被处理,不会出现任务阻塞。或者,也可以是控制第二集群在当前时间之后且在未来指定时间之前释放空闲资源,从而保证在到达未来指定时间时可以完成资源释放。或者,在当前时间到未来指定时间之间的这段时间内,在确定第二集群始终都有该空闲资源的情况下,也可以控制第二集群在当前时间释放空闲资源。第二集群具体的资源释放时机可以根据实际情况确定,这里不做具体限定。
需要说明的是,上述在判断第一集群和第二集群是否有扩容需求或是否存在空闲资源时,得到的判断结果至少可以包括以下四种情况:
第一种情况:第一集群和第二集群都有扩容需求;
第二种情况:第一集群和第二集群都有空闲资源;
第三种情况:第一集群有扩容需求,第二集群有空闲资源;
第四种情况:第一集群有空闲资源,第二集群有扩容需求。
针对上述第一种情况,可以不执行S208,即不在第一集群和第二集群之间进行资源的释放和回收。针对上述第二种情况,可以控制第一集群和第二集群释放各自内部的空闲资源且可以不回收对方的资源,避免资源浪费。针对上述第三种情况,可以执行S208。针对上述第四种情况,可以控制第一集群释放空闲资源,以及控制第二集群回收第一集群释放的空闲资源以对第二集群扩容,该第四种情况与第三种情况类似,均属于一个集群有空闲资源另一个集群有扩容需求的情况,本申请实施例仅以上述第三种情况为例进行说明。
本申请实施例中,由于第一集群和第二集群是隔离运行的,即在线任务和离线任务可以由不同的集群进行处理,因此,可以避免在线任务和离线任务由同一集群处理时出现的资源争抢问题;由于可以预测第一集群和第二集群各自在未来指定时间的资源使用情况,并在确定第一集群在未来指定时间有扩容需求且第二集群有空闲资源的情况下,控制将第二集群中的空闲资源释放给第一集群以对第一集群扩容,因此,可以保证第一集群有足够的资源进行任务处理,避免第一集群中的任务阻塞,保证任务的平滑执行,同时也可以避免第二集群中的资源浪费,提高第二集群的资源利用率。
在一种实现方式中,服务器在执行上述S204之前,还可以预先对预测模型进行训练。对预测模型进行训练的具体实现方式如下:
S2041:获取第一集群和第二集群各自的历史资源使用数据和历史任务运行数据。
具体地,服务器可以通过第一集群中的yarn资源管理服务获取第一集群的历史资源使用数据,通过第一集群中的Spark History Server服务获取第一集群的历史任务运行数据。服务器通过第二集群中的yarn资源管理服务获取第二集群的历史资源使用数据,通过第二集群中的Spark History Server服务获取第二集群的历史任务运行数据。可选地,在通过第一集群/第二集群中的yarn资源管理服务/Spark History Server服务获取第一集群/第二集群的历史资源使用数据/历史任务运行数据时,还可以在第一集群/第二集群中设置数据采集客户端,该数据采集客户端可以与yarn资源管理服务/Spark HistoryServer服务进行通信,进而获取yarn资源管理服务/Spark History Server服务提供的历史资源使用数据/历史任务运行数据,然后将历史资源使用数据/历史任务运行数据上报给服务器。
服务器获取到的第一集群/第二集群的历史资源使用数据具体可以包括以下至少一种:可供分配的虚拟核数;待分配的虚拟核数;已分配的虚拟核数;预留的虚拟核数;可供分配的内存量;待分配的内存量;已分配的内存量;预留的内存量;运行中的任务数;挂起的任务数;终止的任务数;失败的任务数;完成的任务数;提交的任务数;已分配的容器数;待分配的容器数;预留的容器数;内存剩余百分比;CPU剩余百分比;待分配的容器数与已分配的容器数的比率。
服务器获取到的第一集群/第二集群的历史任务运行数据可以包括第一集群/第二集群历史处理的每个任务的运行数据,每个任务的运行数据具体可以包括以下至少一种:任务开始时间;任务结束时间;任务实际使用的VCore的秒数;任务实际使用的内存的秒数;任务数据类型;任务数据大小;任务指定的executor数;任务指定的task数。
应理解,上述历史资源使用数据和历史任务运行数据中包括的数据仅为示例性说明,在其他实现方式中,也可以是其他可以表征集群历史资源使用情况的数据以及历史执行任务情况的数据,这里不再一一举例说明。
S2042:对历史资源使用数据和历史任务运行数据进行预处理。
这里的预处理具体可以是删除历史资源使用数据和历史任务运行数据中的无效数据,该无效数据可以是脏数据等。具体地,可以对历史资源使用数据和历史任务运行数据中的每个字段进行非空判断,去除数据中百分之五十(也可以是其他数值)的参数都为空的数据。
S2043:将历史资源使用数据和历史任务运行数据进行时间关联和相关性分析,得到用于模型训练的特征数据。
在对历史资源使用数据和历史任务运行数据进行预处理后,可以进一步将预处理后的历史资源使用数据和历史任务运行数据进行时间关联,即按照时间将历史资源使用数据和历史任务运行数据关联起来,得到与时间存在对应关系的历史资源使用数据和历史任务运行数据。
在对历史资源使用数据和历史任务运行数据进行时间关联后,可以进一步进行相关性分析。这里可以利用Spearman对历史资源使用数据和历史任务运行数据进行相关性分析,去除其中Spearman关系数为零的参数,然后将剩余参数进行归一化(Min-MaxNormalization)处理,归一化处理后的数据可以作为模型训练的特征数据。
S2044:对特征数据进行模型训练得到预测模型,预测模型用于预测第一集群和第二集群各自在未来任一时间的资源使用数据。
在一种实现方式中,对特征数据进行模型训练可以是根据模型数据进行曲线拟合,拟合后得到的多项式可以作为预测模型。其中,可以分别针对第一集群和第二集群进行多项式的拟合,得到两个预测模型,一个预测模型用于预测第一集群在未来指定时间的资源使用数据,另一个预测模型用于预测第二集群在未来指定时间的资源使用数据。在一种更为具体的实现方式,预测模型可以是时间和资源使用数据之间的多项式,在根据预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据时,可以将未来指定时间输入用于对第一集群进行预测的模型中,模型输出即为第一集群在未来指定时间的资源使用数据,将未来指定时间输入用于对第二集群进行预测的模型中,模型输出即为第二集群在未来指定时间的资源使用数据。
基于上述S2041至S2044记载的模型训练过程,由于可以获取第一集群和第二集群各项历史资源使用数据和各项历史任务运行数据,然后对这些历史数据进行时间关联和相关性分析,可以使得最终训练得到的预测模型准确预测第一集群和第二集群各自在未来时间的资源使用情况,从而可以准确判断第一集群和第二集群是否有扩容需求或是否存在空闲资源。
在一种实现方式中,在上述S206根据第一集群和第二集群各自当前的资源使用数据和预测得到的资源使用数据,判断第一集群和第二集群是否有扩容需求或是否存在空闲资源时,以判断第一集群是否有扩容需求,第二集群是否存在空闲资源为例,具体可以包括以下步骤:
在判断第一集群是否有扩容需求时,可以根据第一集群当前的资源使用数据和预测得到的资源使用数据,判断第一集群在未来指定时间的资源需求是否大于第一集群当前的已使用资源与剩余可用资源的总和的第一预设比例;若是,则确定第一集群在未来指定时间有扩容需求。
具体地,第一集群在未来指定时间的资源需求可以是第一集群在未来指定时间进行任务处理时,待处理任务所需的资源。比如,若第一集群在未来指定时间进行任务处理时,待处理任务需要的CPU数为4000,则该4000个CPU可以是第一集群在未来指定时间的资源需求。第一集群当前的已使用资源可以是第一集群当前正在进行任务处理的资源,第一集群当前的剩余可用资源可以是第一集群中当前未使用的资源中的可用资源。比如,第一集群的CPU一共有3000个,该3000个CPU中当前正在进行任务处理的CPU有2000个,剩余的1000个中有100个出现故障,900个正常且处于空闲可用状态,那么,该2000个CPU即为第一集群当前的已使用资源,该900个CPU即为第一集群当前的剩余可用资源。第一集群当前的已使用资源与当前的剩余可用资源的总和可以是第一集群当前可以用于进行任务处理的所有可用资源,即可以用于在未来指定时间进行任务处理的资源。
第一预设比例可以是第一集群在超载和未超载的临界情况下,第一集群中的已使用资源和所有可用资源的比例(小于1且大于0)。比如,第一集群中可用的CPU共3000个,使用2550个CPU不超载,使用2551个CPU超载,那么,第一预设比例可以是85%。当然,该85%仅仅是一种示例,具体数值可以根据实际情况确定,这里不做具体限定。这样,在基于该第一预设比例判断第一集群是否有扩容需求时,若第一集群在未来指定时间的资源需求大于第一集群当前所有可用资源的超载临界值,则可以确定第一集群有扩容需求,反之则可以确定第一集群没有扩容需求。
可选地,在不考虑超载的情况下,第一预设比例也可以取值为1。这样,在基于该第一预设比例判断第一集群是否有扩容需求时,即判断第一集群在未来指定时间的资源需求是否大于第一集群当前的所有可用资源,若是,则可以确定第一集群有扩容需求,反之则可以确定第一集群没有扩容需求。
在判断第二集群是否有空闲资源时,可以根据第二集群当前的资源使用数据和预测得到的资源使用数据,判断第二集群在未来指定时间的资源需求是否小于第二集群当前的已使用资源与剩余可用资源的总和的第二预设比例;若是,则确定第二集群在未来指定时间有空闲资源。
这里的第二集群在未来指定时间的资源需求、第二集群当前的已使用资源、当前的剩余可用资源所表征的含义与上述第一集群的相应描述所表征的含义相同,这里不再详细说明。
第二预设比例可以是第二集群在超载和未超载的临界情况下,第二集群中的已使用资源和所有可用资源的比例(小于1且大于0)。比如,第二集群中可用的CPU共2000个,使用1700个CPU不超载,使用1701个CPU超载,那么,第二预设比例可以是85%。当然,该85%仅仅是一种示例,具体数值可以根据实际情况确定,这里不做具体限定。这样,在基于该第二预设比例判断第二集群是否有空闲资源时,若第二集群在未来指定时间的资源需求小于第二集群当前所有可用资源的超载临界值,则可以确定第二集群有空闲资源,反之则可以确定第二集群没有空闲资源。
可选地,在不考虑超载的情况,第二预设比例也可以取值为1。这样,在基于该第二预设比例判断第二集群是否有空闲资源时,即判断第二集群在未来指定时间的资源需求是否小于第二集群当前的所有可用资源,若是,则可以确定第二集群有空闲资源,反之则可以确定第二集群没有空闲资源。
在一种更为具体的实现方式中,上述第一预设比例和第二预设比例可以相同,可选地,可以均设置为85%,或者均设置为1。
通过设置第一预设比例和第二预设比例,并结合集群在未来指定时间的资源需求和当前的已使用资源与剩余可用资源的总和进行判断,可以有效判断出集群是否有扩容需求或是否有空闲资源。此外,由于第一预设比例和第二预设比例各自可以根据不同的业务需求选取不同的数值,因此,还可以根据不同的业务场景灵活判断集群是否有扩容需求或是否有空闲资源,从而更加符合实际的业务需求。
在上述208中,在控制第二集群释放第二集群中的空闲资源时,在一种可能的实现方式中,只要第二集群有空闲资源,不管该空闲资源大小,都可以控制第二集群释放其空闲资源。这样,针对第一集群而言,在回收到第二集群释放的空闲资源后,都可以在一定程度上缓解第一集群的资源紧张,进而减少阻塞的待处理任务的数量,提升任务的处理效率。
在另一种可能的实现方式中,在第二集群有空闲资源的基础上,还可以根据第二集群的空闲资源是否满足第一集群的扩容需求来控制第二集群释放空闲资源。具体可以包括以下步骤:
S2081:判断第二集群的空闲资源是否满足第一集群的扩容需求。
第一集群的扩容需求可以是第一集群扩容时需要增加的资源量。在判断第二集群的空闲资源是否满足第一集群的扩容需求时,具体实现方式如下:
首先,根据第一集群当前的资源使用数据,确定第一集群当前的集群资源中可用于未来指定时间的第一资源。
第一集群当前的集群资源中可用于未来指定时间的第一资源即为第一集群当前资源中可用于在未来指定时间进行业务处理的资源。这里确定第一资源是为了确定第一集群当前的资源中有多少资源可以用于在未来指定时间进行业务处理,以便后续基于该资源进一步确定需要扩容的资源量。比如,第一集群中共有3000个CPU,该3000个CPU中有2800个CPU(另200个CPU故障或有其他用处)可以用于在未来指定时间进行业务处理,则第一资源即为该2800个CPU。
其次,根据第一集群预测得到的资源使用数据,确定在未来指定时间满足第一集群的资源需求且不会超载的第二资源。
具体地,根据第一集群预测得到的资源使用数据可以确定第一集群在未来指定时间的资源需求。在确定该资源需求后,使用该资源需求除以超载临界值就可以得到在未来指定时间满足第一集群的资源需求且不会超载的第二资源。比如,若预测得到第一集群在未来指定时间的资源需求为4000个CPU,则第二资源为该4000个CPU除以85%,即4706个CPU。
最后,判断第二集群的空闲资源是否大于或等于第二资源与第一资源的差值。
第二资源与第一资源的差值即为第一集群的扩容需求。若第二集群的空闲资源大于或等于第二资源与第一资源的差值,则可以说明第二集群的空闲资源满足第一集群的扩容需求,反之,若第二集群的空闲资源小于第二资源与第一资源的差值,则可以说明第二集群的空闲资源不满足第一集群的扩容需求。
若第二集群的空闲资源满足第一集群的扩容需求,则可以执行S2082;反之,则可以执行S2083。
S2082:控制第二集群释放空闲资源。
S2083:每隔设定时长循环判断第二集群的空闲资源是否满足第一集群的扩容需求,直至第二集群的空闲资源满足第一集群的扩容需求时,控制第二集群释放空闲资源。
上述设定时长可以小于当前时间到未来指定时间之间的时间段。可选地,该设定时长可以是当前时间到未来指定时间之间的时间段的1/3。比如,未来指定时间是15分钟后,则该设定时长可以是5分钟,可以每隔5分钟循环判断第二集群的空闲资源是否满足第一集群的扩容需求。
需要说明的是,由于第二集群中的空闲资源可以随时间的变化而变化,因此,在每隔设定时长循环判断第二集群的空闲资源是否满足第一集群的扩容需求的过程中,可能会出现某一次判断时第二集群的空闲资源由不满足第一集群的扩容需求变为满足第一集群的扩容需求的情况。在确定满足第一集群的扩容需求的情况下,可以控制第二集群释放空闲资源。其中,在循环判断第二集群的空闲资源是否满足第一集群的扩容需求时,具体实现方式可以参见上述S2081中记载的内容,这里不再重复说明。
需要说明的是,若在达到未来指定时间之前,第二集群的空闲资源仍不满足第一集群的扩容需求,则,可选地,可以强制控制第二集群释放其空闲资源,以便为第一集群提供空闲资源,进而缓解第一集群中的资源紧张的情况。可选地,可以取消释放第二集群中的空闲资源,避免出现将不足够的空闲资源释放给第一集群后无法完全解决第一集群的资源紧张的问题。具体采用何种实现方式可以根据具体的业务场景确定,这里不做具体限定。
基于上述S2081至2083记载的内容,由于在控制第二集群释放空闲资源之前,可以判断第二集群的空闲资源是否满足第一集群的扩容需求,并在确定第二集群的空闲资源满足第一集群的扩容需求的情况下,才控制第二集群将空闲资源释放给第一集群,因此,可以保证空闲资源的有效释放,避免出现将空闲资源释放给第一集群后无法完全解决第一集群的资源需求,进而导致空闲资源无效释放的问题。
本申请实施例中,第二集群中可以包括多个主机,每个主机中可以包括第一集群的系统镜像和第二集群的系统镜像,当主机中的系统镜像为第一集群的系统镜像时,主机可以提供第一集群的任务处理服务,当主机中的系统镜像为第二集群的系统镜像时,主机可以提供第二集群的任务处理服务。比如,若第一集群为离线集群,第二集群为在线集群,则当主机中的系统镜像为第一集群的系统镜像时,主机可以用于处理离线任务,当主机中的系统镜像为第二集群的系统镜像时,主机可以用于处理在线任务。
基于上述第二集群中每个主机各自包括的两种系统镜像,在上述S208、S2082或S2083中,在控制第二集群释放空闲资源时,具体实现方式如下:
向第二集群发送控制指令,控制指令用于请求第二集群释放空闲资源,第二集群用于根据控制指令将空闲的一个或多个主机中的第二集群的系统镜像切换为第一集群的系统镜像。
这里的空闲的一个或多个主机即为第二集群中的空闲资源。第二集群在接收到控制指令之前,该一个或多个多个主机中是第二集群的系统镜像。第二集群在接收到控制指令后,可以控制该一个或多个多个主机将第二集群的系统镜像切换为第一集群的系统镜像。具体而言,可以在该一个或多个主机中安装第一集群的镜像文件并重启,重启后,可以将该一个或多个主机的系统镜像切换为第一集群的系统镜像。
第二集群在将上述一个或多个主机切换为第一集群的系统镜像后,第一集群可以在服务器的控制下回收该一个或多个主机,该一个或多个主机即转化为第一集群中的主机,从而实现对第一集群的扩容。在对第一集群扩容后,第一集群在未来指定时间就能够有足够的资源进行离线任务的处理,从而保证离线任务可以平滑执行。
可选地,在控制第二集群释放空闲资源,以及控制第一集群回收空闲资源后,考虑到第一集群在后续的某个时间需要处理的任务量降低,可能不需要使用较多的资源进行业务处理,因此,在对第一集群进行扩容后,在未来指定时间还可以继续预测第一集群在相对该未来指定时间的未来某个时间的资源使用情况,进而判断第一集群在相对该未来指定时间的未来某个时间是否有缩容需求,即是否有空闲资源,具体判断是否有空闲资源的实现方式可以参见上述S206中记载的相关内容,这里不再详细说明。
若第一集群有缩容需求,则可以控制第一集群释放空闲资源(具体可以是向第一集群发送控制指令,由第一集群将其中空闲的一个或多个主机的系统镜像由第一集群的系统镜像切换为第二集群的系统镜像),以及控制第二集群回收第一集群释放的空闲资源。这样,可以将第二集群之前释放给第一集群的资源回收回来,以便后续第二集群在需要处理的任务较多时,可以有足够的资源进行任务处理,保证任务的平滑执行。
基于本申请实施例提供的技术方案,可以每隔设定时长(根据实际情况确定,也可以实时)动态获取并预测第一集群和第二集群各自的资源使用情况,并判断第一集群和第二集群是否有扩容需求或是否有空闲资源,在确定其中一个集群有扩容需求另一个集群有空闲资源时,可以控制有空闲资源的集群释放空闲资源以及控制需要扩容的集群回收该释放的空闲资源。由此可以实现第一集群和第二集群之间资源的动态切换,保证每个时间段每个集群都有足够的资源进行任务处理,避免任务阻塞,进而保证任务可以平滑执行,同时还可以避免集群资源的浪费,提高资源利用率。
为了便于理解本申请实施例提供的技术方案,可以参见图3所示的实施例。图3所示的实施例可以基于图1所示的框架实现,与图2所示的实施例属于相同的发明构思,执行主体也可以是图1所示的服务器11。图3所示的实施例可以包括以下步骤:
S301:获取第一集群和第二集群各自的历史资源使用数据和历史任务运行数据。
第一集群为离线集群,第二集群为在线集群;或,第一集群为在线集群,第二集群为离线集群。
S302:根据第一集群和第二集群各自的历史资源使用数据和历史任务运行数据进行模型训练,得到用于预测资源使用情况的预测模型。
上述S301至S302的具体实现可以参见图2所示实施例中相应步骤的具体实现,这里不再重复说明。
S303:获取第一集群和第二集群各自当前的资源使用数据,第一集群和第二集群隔离运行。
S304:根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用数据。
S305:根据当前的资源使用数据和预测得到的资源使用数据,判断第一集群和第二集群是否有扩容需求或是否存在空闲资源。
这里的判断结果可以包括以下四种情况:
第一种情况:第一集群和第二集群都有扩容需求;
第二种情况:第一集群和第二集群都有空闲资源;
第三种情况:第一集群有扩容需求,第二集群有空闲资源;
第四种情况:第一集群有空闲资源,第二集群有扩容需求。
这里仅以上述第三种情况为例进行说明,其他情况可以参见图2所示实施例中的相应步骤的具体实现,这里不再重复说明。
S306:在确定第一集群有扩容需求且第二集群有空闲资源的情况下,判断第二集群的空闲资源是否满足第一集群的扩容需求。
若是,则可以执行S307;若否,则可以执行S308。
S307:控制第二集群释放空闲资源。
S308:每隔设定时长循环判断所第二集群的空闲资源是否满足第一集群的扩容需求,直至第二集群的空闲资源满足第一集群的扩容需求时,控制第二集群释放所述空闲资源。
在执行S307或S308后,可以执行S309。
S309:在未来指定时间判断第一集群是否有缩容需求。
若没有缩容需求,则可以不执行任何操作,或者可以循环执行S309。若有缩容需求则可以致新S310,本实施例仅以有缩容需求为例进行说明。
S310:在确定第一集群有缩容需求时,控制第一集群释放空闲资源,以及控制第二集群回收第一集群释放的空闲资源。
以下将以一个具体的应用场景为例对本申请实施例提供的技术方案进行说明。
假设离线集群中包括60台主机,实时集群中包括40台主机。离线集群的任务有一些周期性。比如在凌晨0点到3点的这个时间段运行的任务数比其他时间段要多,大概要多数倍,这是由于有些T+1按天运行的任务会在这个时间段进行提交。再比如我们的业务场景不仅包含常见的业务数据(这种数据遵循着良好的范式要求,因此数据比较规整,处理起来比较容易,且数据量级要小)同时也有日志,图片,视频这样的非结构化数据(这种数据需要规范化处理,同时图片,视频对应着一些复杂的处理逻辑,且数据量级较大),由于产品的特点,用户更习惯在休息日或者非工作时间去打开,所以在对应的时间任务处理时长会有明显增长,造成集群资源短缺,间接影响其他任务。由于实时任务业务迭代快,以及必要时候应对一些流量洪峰,因此实时任务资源预留充足,可最大贡献出20台主机的一个资源量。
在上述离线集群和在线集群的情况下,假设在晚上11点45分,服务器根据预测模型预测到15分钟后,即0点,离线集群处理任务所需的CPU数为4000(因为大量的T+1按天处理的任务将在0点进行提交),在保证未超载的情况下,需要的CPU数为4000/0.85=4706(这里以CPU使用率超过85%为超载为例),即集群需要至少4706个CPU的资源。而目前离线集群只有60台服务器,每台服务器包括64个CPU,共60*64=3840个CPU,需要扩容866个CPU,866/64约等于14台主机,即离线集群的扩容需求为14台机器。已知当前在线集群有20台主机空闲,则可以确定在线集群的空闲资源可以满足离线集群的扩容需求。此时,服务器会向在线集群发送控制指令以控制在线集群释放14台主机的空闲资源,在线集群接收到控制指令后可以将空闲的14台主机中的系统镜像切换到离线集群的系统镜像并进行重启。同时,服务器还会向离线集群发送控制指令以控制离线集群回收在线集群释放的空闲资源,离线集群在接收到控制指令后,可以回收在线集群释放的14台主机资源。这样,当0点到达时,离线集群可以有足够的资源进行任务处理,同时还可以保证离线集群不超载。在凌晨3点后,当离线集群需要处理的任务量降低并恢复正常,并预测到离线集群有缩容需求时,可以控制离线集群缩容。比如,可以控制离线集群释放之前的那14台主机,同时还可以控制在线集群回收离线集群释放的资源,也即回收在线集群之前释放给离线集群的14台主机,这样,当在线集群需要处理较多的任务时,可以保证有足够的资源进行任务处理。
从上述整个过程可以看出,通过在在线集群和离线集群之间进行资源切换,不仅保证了离线集群中任务的平滑处理,避免任务阻塞,还提高了在线集群中的资源利用率。
本申请实施例提供的技术方案,在第一集群和第二集群隔离运行的情况下,可以实时获取第一集群和第二集群各自的资源使用情况,并根据预先训练的预测模型预测第一集群和第二集群各自在未来指定时间的资源使用情况,然后根据当前获取的资源使用情况和预测得到的资源使用情况判断第一集群和第二集群是否有扩容需求或是否有空闲资源,在确定第一集群有扩容需求且第二集群有空闲资源时,可以控制第二集群释放空闲资源,同时控制第一集群回收该空闲资源以对第一集群进行扩容。这样,由于第一集群和第二集群是隔离运行的,即在线任务和离线任务可以由不同的集群进行处理,因此,可以避免在线任务和离线任务由同一集群处理时出现的资源争抢问题;由于可以预测第一集群和第二集群各自在未来指定时间的资源使用情况,并在确定第一集群在未来指定时间有扩容需求且第二集群有空闲资源的情况下,控制将第二集群中的空闲资源释放给第一集群以对第一集群扩容,因此,可以保证第一集群有足够的资源进行任务处理,避免第一集群中的任务阻塞,保证任务的平滑执行,同时也可以避免第二集群中的资源浪费,提高第二集群的资源利用率。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图4是本申请的一个实施例电子设备的结构示意图。请参考图4,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成集群资源的控制装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
上述如本申请图4所示实施例揭示的集群资源的控制装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图2和图3的方法,并实现集群资源的控制装置在图2和图3所示实施例中的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图2和图3所示实施例的方法,并具体用于执行以下操作:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
图5是本申请的一个实施例集群资源的控制装置50的结构示意图。请参考图5,在一种软件实施方式中,所述集群资源的控制装置50可包括:获取模块51、预测模块52、判断模块53和控制模块54,其中:
获取模块51,获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
预测模块52,根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
判断模块53,根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
控制模块54,在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
可选地,所述第一集群为离线集群,所述第二集群为在线集群;或,
所述第一集群为在线集群,所述第二集群为离线集群;
其中,所述离线集群用于处理离线任务,所述在线集群用于处理在线任务。
可选地,所述预测模块52在根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据之前:
获取所述第一集群和所述第二集群各自的历史资源使用数据和历史任务运行数据;
对所述历史资源使用数据和所述历史任务运行数据进行预处理;
将所述历史资源使用数据和所述历史任务运行数据进行时间关联和相关性分析,得到用于模型训练的特征数据;
对所述特征数据进行模型训练得到所述预测模型,所述预测模型用于预测所述第一集群和所述第二集群各自在未来任一时间的资源使用数据。
可选地,所述判断模块53根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源,包括:
根据所述第一集群当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群在所述未来指定时间的资源需求是否大于所述第一集群当前的已使用资源与剩余可用资源的总和的第一预设比例;若是,则确定所述第一集群在所述未来指定时间有扩容需求;
根据所述第二集群当前的资源使用数据和预测得到的资源使用数据,判断所述第二集群在所述未来指定时间的资源需求是否小于所述第二集群当前的已使用资源与剩余可用资源的总和的第二预设比例;若是,则确定所述第二集群在所述未来指定时间有空闲资源。
可选地,所述控制模块54控制所述第二集群释放所述空闲资源,包括:
判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求;
若是,则控制所述第二集群释放所述空闲资源;
若否,则每隔设定时长循环判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求,直至所述第二集群的空闲资源满足所述第一集群的扩容需求时,控制所述第二集群释放所述空闲资源。
可选地,所述判断模块53判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求,包括:
根据所述第一集群当前的资源使用数据,确定所述第一集群当前的集群资源中可用于所述未来指定时间的第一资源;
根据所述第一集群预测得到的资源使用数据,确定在所述未来指定时间满足所述第一集群的资源需求且不会超载的第二资源;
判断所述第二集群的空闲资源是否大于或等于所述第二资源与所述第一资源的差值;
若是,则确定所述第二集群的空闲资源满足所述第一集群的扩容需求;
若否,则确定所述第二集群的空闲资源不满足所述第一集群的扩容需求。
可选地,所述第二集群中包括多个主机,每个主机中包括所述第一集群的系统镜像和所述第二集群的系统镜像;
其中,所述控制模块54控制所述第二集群释放所述空闲资源,包括:
向所述第二集群发送控制指令,所述控制指令用于请求所述第二集群释放空闲资源,所述第二集群用于根据所述控制指令将空闲的一个或多个主机中的所述第二集群的系统镜像切换为所述第一集群的系统镜像。
可选地,在所述控制模块54控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容后,所述判断模块53在所述未来指定时间判断所述第一集群是否有缩容需求;
若是,则所述控制模块54控制所述第一集群释放空闲资源,以及控制所述第二集群回收所述第一集群释放的空闲资源。
本申请实施例提供的集群资源的控制装置50还可执行图2和图3的方法,并实现集群资源的控制装置在图2和图3所示实施例的功能,本申请实施例在此不再赘述。
图6是本申请的一个实施例集群资源的控制系统60的结构示意图。请参考图6,在一种软件实施方式中,所述集群资源的控制系统60可包括:服务器61、第一集群62和第二集群63,所述第一集群61和所述第二集群62隔离运行,其中:
所述服务器61用于获取所述第一集群62和所述第二集群63各自当前的资源使用数据;根据预先训练的预测模型预测所述第一集群62和所述第二集群63各自在未来指定时间的资源使用数据;根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群62和所述第二集群63是否有扩容需求或是否存在空闲资源;在确定所述第一集群62有扩容需求且所述第二集群63有空闲资源的情况下,控制所述第二集群63释放所述空闲资源,以及控制所述第一集群62回收所述空闲资源以对所述第一集群62进行扩容;
所述第二集群63用于响应所述服务器的控制并释放空闲资源;
所述第一集群62用于响应所述服务器的控制并回收所述第二集群63释放的空闲资源。
图6所示的服务器61可以实现图1至图3所示实施例中的服务器所实现的各个步骤和功能,第一集群62可以实现图1至图3所示实施例中的第一集群所实现的各个步骤和功能,第二集群63可以实现图1至图3所示实施例中的第二集群所实现的各个步骤和功能,且可以实现相同的技术效果,这里都不再重复说明。
总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (12)

1.一种集群资源的控制方法,其特征在于,包括:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
2.如权利要求1所述的方法,其特征在于,
所述第一集群为离线集群,所述第二集群为在线集群;或,
所述第一集群为在线集群,所述第二集群为离线集群;
其中,所述离线集群用于处理离线任务,所述在线集群用于处理在线任务。
3.如权利要求1所述的方法,其特征在于,在根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据之前,所述方法还包括:
获取所述第一集群和所述第二集群各自的历史资源使用数据和历史任务运行数据;
对所述历史资源使用数据和所述历史任务运行数据进行预处理;
将所述历史资源使用数据和所述历史任务运行数据进行时间关联和相关性分析,得到用于模型训练的特征数据;
对所述特征数据进行模型训练得到所述预测模型,所述预测模型用于预测所述第一集群和所述第二集群各自在未来任一时间的资源使用数据。
4.如权利要求1所述的方法,其特征在于,根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源,包括:
根据所述第一集群当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群在所述未来指定时间的资源需求是否大于所述第一集群当前的已使用资源与剩余可用资源的总和的第一预设比例;若是,则确定所述第一集群在所述未来指定时间有扩容需求;
根据所述第二集群当前的资源使用数据和预测得到的资源使用数据,判断所述第二集群在所述未来指定时间的资源需求是否小于所述第二集群当前的已使用资源与剩余可用资源的总和的第二预设比例;若是,则确定所述第二集群在所述未来指定时间有空闲资源。
5.如权利要求1所述的方法,其特征在于,控制所述第二集群释放所述空闲资源,包括:
判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求;
若是,则控制所述第二集群释放所述空闲资源;
若否,则每隔设定时长循环判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求,直至所述第二集群的空闲资源满足所述第一集群的扩容需求时,控制所述第二集群释放所述空闲资源。
6.如权利要求5所述的方法,其特征在于,判断所述第二集群的空闲资源是否满足所述第一集群的扩容需求,包括:
根据所述第一集群当前的资源使用数据,确定所述第一集群当前的集群资源中可用于所述未来指定时间的第一资源;
根据所述第一集群预测得到的资源使用数据,确定在所述未来指定时间满足所述第一集群的资源需求且不会超载的第二资源;
判断所述第二集群的空闲资源是否大于或等于所述第二资源与所述第一资源的差值;
若是,则确定所述第二集群的空闲资源满足所述第一集群的扩容需求;
若否,则确定所述第二集群的空闲资源不满足所述第一集群的扩容需求。
7.如权利要求1所述的方法,其特征在于,所述第二集群中包括多个主机,每个主机中包括所述第一集群的系统镜像和所述第二集群的系统镜像;
其中,控制所述第二集群释放所述空闲资源,包括:
向所述第二集群发送控制指令,所述控制指令用于请求所述第二集群释放空闲资源,所述第二集群用于根据所述控制指令将空闲的一个或多个主机中的所述第二集群的系统镜像切换为所述第一集群的系统镜像。
8.如权利要求1所述的方法,其特征在于,在控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容后,所述方法还包括:
在所述未来指定时间判断所述第一集群是否有缩容需求;
若是,则控制所述第一集群释放空闲资源,以及控制所述第二集群回收所述第一集群释放的空闲资源。
9.一种集群资源的控制装置,其特征在于,包括:
获取模块,获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
预测模块,根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
判断模块,根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
控制模块,在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
10.一种电子设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,该可执行指令在被执行时使该处理器执行以下操作:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下方法:
获取第一集群和第二集群各自当前的资源使用数据,所述第一集群和所述第二集群隔离运行;
根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;
根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;
在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群扩容。
12.一种集群资源的控制系统,其特征在于,包括服务器、第一集群和第二集群,所述第一集群和所述第二集群隔离运行,其中:
所述服务器用于获取所述第一集群和所述第二集群各自当前的资源使用数据;根据预先训练的预测模型预测所述第一集群和所述第二集群各自在未来指定时间的资源使用数据;根据所述当前的资源使用数据和预测得到的资源使用数据,判断所述第一集群和所述第二集群是否有扩容需求或是否存在空闲资源;在确定所述第一集群有扩容需求且所述第二集群有空闲资源的情况下,控制所述第二集群释放所述空闲资源,以及控制所述第一集群回收所述空闲资源以对所述第一集群进行扩容;
所述第二集群用于响应所述服务器的控制并释放空闲资源;
所述第一集群用于响应所述服务器的控制并回收所述第二集群释放的空闲资源。
CN202111524982.0A 2021-12-14 2021-12-14 一种集群资源的控制方法、装置和系统 Pending CN114189482A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111524982.0A CN114189482A (zh) 2021-12-14 2021-12-14 一种集群资源的控制方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111524982.0A CN114189482A (zh) 2021-12-14 2021-12-14 一种集群资源的控制方法、装置和系统

Publications (1)

Publication Number Publication Date
CN114189482A true CN114189482A (zh) 2022-03-15

Family

ID=80543678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111524982.0A Pending CN114189482A (zh) 2021-12-14 2021-12-14 一种集群资源的控制方法、装置和系统

Country Status (1)

Country Link
CN (1) CN114189482A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114726734A (zh) * 2022-03-21 2022-07-08 平安壹账通云科技(深圳)有限公司 云服务资源扩容方法、装置、电子设备及存储介质
CN114866563A (zh) * 2022-06-16 2022-08-05 中国电信股份有限公司 扩容方法、装置、系统和存储介质
CN117311992A (zh) * 2023-11-28 2023-12-29 南京亚信软件有限公司 基于既定资源预测并自动动态平衡集群内部资源的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160292608A1 (en) * 2015-04-03 2016-10-06 Alibaba Group Holding Limited Multi-cluster management method and device
CN109032914A (zh) * 2018-09-06 2018-12-18 掌阅科技股份有限公司 资源占用数据预测方法、电子设备、存储介质
CN110120979A (zh) * 2019-05-20 2019-08-13 华为技术有限公司 一种调度方法、装置及相关设备
CN110888733A (zh) * 2018-09-11 2020-03-17 北京奇虎科技有限公司 集群资源使用情况处理方法、装置及电子设备
CN111506390A (zh) * 2020-03-31 2020-08-07 新浪网技术(中国)有限公司 一种基于容器化部署的视频转码调度方法及系统
CN112860403A (zh) * 2021-02-22 2021-05-28 中国联合网络通信集团有限公司 集群负载资源调度方法、装置、设备、介质及产品
CN112905334A (zh) * 2021-02-02 2021-06-04 深信服科技股份有限公司 资源管理方法、装置、电子设备和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160292608A1 (en) * 2015-04-03 2016-10-06 Alibaba Group Holding Limited Multi-cluster management method and device
CN109032914A (zh) * 2018-09-06 2018-12-18 掌阅科技股份有限公司 资源占用数据预测方法、电子设备、存储介质
CN110888733A (zh) * 2018-09-11 2020-03-17 北京奇虎科技有限公司 集群资源使用情况处理方法、装置及电子设备
CN110120979A (zh) * 2019-05-20 2019-08-13 华为技术有限公司 一种调度方法、装置及相关设备
CN111506390A (zh) * 2020-03-31 2020-08-07 新浪网技术(中国)有限公司 一种基于容器化部署的视频转码调度方法及系统
CN112905334A (zh) * 2021-02-02 2021-06-04 深信服科技股份有限公司 资源管理方法、装置、电子设备和存储介质
CN112860403A (zh) * 2021-02-22 2021-05-28 中国联合网络通信集团有限公司 集群负载资源调度方法、装置、设备、介质及产品

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114726734A (zh) * 2022-03-21 2022-07-08 平安壹账通云科技(深圳)有限公司 云服务资源扩容方法、装置、电子设备及存储介质
CN114866563A (zh) * 2022-06-16 2022-08-05 中国电信股份有限公司 扩容方法、装置、系统和存储介质
CN117311992A (zh) * 2023-11-28 2023-12-29 南京亚信软件有限公司 基于既定资源预测并自动动态平衡集群内部资源的方法
CN117311992B (zh) * 2023-11-28 2024-02-13 南京亚信软件有限公司 基于既定资源预测并自动动态平衡集群内部资源的方法

Similar Documents

Publication Publication Date Title
CN114189482A (zh) 一种集群资源的控制方法、装置和系统
CN108632365B (zh) 服务资源调整方法、相关装置和设备
CN107770088B (zh) 一种流量控制方法及装置
US20150295970A1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
CN107818012B (zh) 一种数据处理方法、装置及电子设备
CN113608871A (zh) 业务处理方法及装置
CN109802986B (zh) 设备管理方法、系统、装置及服务器
CN114416352A (zh) 算力资源分配方法、装置、电子设备及储存介质
CN109739627B (zh) 任务的调度方法、电子设备及介质
CN112579304A (zh) 基于分布式平台的资源调度方法、装置、设备及介质
Wang et al. A cluster autoscaler based on multiple node types in kubernetes
CN112596898A (zh) 一种任务执行器调度的方法及装置
CN113190343A (zh) 应用实例的控制方法、装置、设备及系统
CN116776980A (zh) 一种预测推理系统及方法
CN111897785A (zh) 工单数量的控制方法、装置及设备
CN115587049A (zh) 内存回收方法、装置、电子设备及存储介质
CN112291326B (zh) 负载均衡方法、负载均衡装置、存储介质与电子设备
CN113032207A (zh) 应用进程的监控方法、装置、电子设备及存储介质
CN114416326A (zh) 大数据管控方法、装置、管控系统及可读存储介质
CN109391663B (zh) 一种访问请求的处理方法与设备
CN111090627A (zh) 基于池化的日志存储方法、装置、计算机设备及存储介质
CN112995613B (zh) 一种分析资源管理方法及装置
CN116915717B (zh) 吞吐量分配方法、装置、存储介质及电子设备
CN116719632B (zh) 任务调度方法、装置、设备以及介质
CN114760209B (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