节点状态的调整方法、装置、计算机设备和存储介质与流程

未命名 10-14 阅读:114 评论:0


1.本技术涉及集群技术领域,特别是涉及一种节点状态的调整方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.随着高性能计算技术的不断发展,也推动了集群技术的日益发展。集群系统一般以降低任务的平均响应时间,提高系统的吞吐率为主要目标,这一性能目标通过合理的资源分配以及高效的任务调度来实现。然而,集群系统在提高强大计算能力的同时也消耗了巨大的能量,对系统产生了诸多负面影响,因此需要对大规模集群系统进行节能处理。
3.相关技术中,针对集群系统的整体能耗所采取的优化措施只能配置远程开关机方式,例如是仅支持在节点空闲了设定的时间后将节点关机,导致节能方法较为单一。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够提供节能效率较好且较为丰富的节点状态的调整方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
5.第一方面,本技术提供了一种节点状态的调整方法。所述方法包括:
6.获取目标系统的当前节能调整模式;
7.获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;
8.基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。
9.本实施例中,可以支持多种节能模式,还可以在保证系统性能不受影响下的情况下,降低系统的整体功耗,还可以在基于时间窗口的节能模式和基于空闲时间的节能模式之间灵活切换。
10.在其中一个实施例中,所述当前节能调整模式为基于时间窗口的调整模式,所述节点信息为当前时间;所述基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,包括:
11.如果当前时间与预设的时间窗口匹配,则在目标系统包含的多个节点确定符合目标关机条件的第一目标节点;
12.将所述第一目标节点的节点状态调整为关机状态。
13.本实施例中,通过基于时间窗口的调整模式对目标系统包含的各个节点进行节能调整,可以在保证节点调整效率的情况下,降低节点的能耗。
14.在其中一个实施例中,所述方法还包括:
15.如果所述当前时间与所述预设的时间窗口不匹配,则在目标系统包含的多个节点确定符合目标唤醒条件的第二目标节点;
16.将所述第二目标节点的节点状态调整为工作状态。
17.本实施例中,通过基于时间窗口的调整模式对目标系统包含的各个节点进行节能
调整,在当前时间不在预设时间窗口内,及时唤醒各节点,实现在降低节点的能耗的效果下,保证目标系统的正常运行的效果。
18.在其中一个实施例中,所述当前节能调整模式为基于空闲时间的调整模式,所述节点信息至少包括节点的历史负载信息;所述基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,包括:
19.针对当前节能调整模式是基于空闲时间的调整模式的节点,基于所述节点的历史负载信息,计算所述节点的平均负载信息,所述节点的历史负载信息是在到达预设检测时间的情况下采集的;
20.将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态;
21.将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态;
22.将平均负载信息小于或者等于第一负载阈值,且大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。
23.本实施例中,通过基于空闲时间的调整模式,可以基于第一负载阈值以及第二负载阈值对各个节点的节点状态进行调整,增加低频运行状态以及睡眠状态,保证节点运行状态的多样性,实现节点的低能耗运行,避免资源的额外消耗。
24.在其中一个实施例中,所述方法还包括:
25.在接收到提交的作业的情况下,基于各节点的优先级确定所述作业对应的作业节点列表,所述节点的优先级是基于所述节点的节点状态确定的,低频运行状态的节点的优先级高于睡眠状态节点的优先级,睡眠状态节点的优先级高于关机状态节点的优先级;
26.基于所述作业节点列表包含的节点,运行所述作业。
27.本实施例中,通过接收到的作业确定执行该作业的作业节点列表,并基于节点状态确定节点的使用优先级,实现节点的高效调度。
28.在其中一个实施例中,所述方法还包括:
29.获取节能调整模式对应的节点列表以及预设的空闲节点数目;
30.将所述节能调整模式对应的节点列表中,连续的空闲节点数目个节点,调整为非节能调整模式。
31.本实施例中,通过维持连续的节点的非节能调整模式,便于调度系统基于节点的连续性调度节点,提高节点调度的效率。
32.在其中一个实施例中,所述方法还包括:
33.基于所述目标系统中各节点的实时负载信息,确定集群的总负载信息,并基于所述总负载信息,确定节能调整模式对应的节点数量;
34.如果各排队作业的占用节点数量大于或者等于所述节能调整模式对应的节点数量,则调整所述节能调整模式对应的节点为非节能调整模式。
35.本实施例中,通过基于排队作业确定节能调整模式对应的节点数量,可以实现对节点状态的灵活调整。
36.在其中一个实施例中,所述方法还包括:
37.如果所述目标系统不存在排队作业,且所述目标系统中的空闲节点的数量大于预设空闲节点阈值,且所述总负载信息满足预设低负载条件,则调整所述目标系统中的空闲节点的节点状态为关机状态。
38.本实施例中,通过基于排队作业确定节能调整模式对应的节点数量,可以实现对节点状态的灵活调整。
39.第二方面,本技术还提供了一种节点状态的调整装置。所述装置包括:
40.第一获取模块,用于获取目标系统的当前节能调整模式;
41.第二获取模块,用于获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;
42.第一调整模块,用于基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。
43.在其中一个实施例中,当前节能调整模式为基于时间窗口的调整模式,节点信息为当前时间;第一调整模块,具体用于:
44.如果当前时间与预设的时间窗口匹配,则在目标系统包含的多个节点确定符合目标关机条件的第一目标节点;将第一目标节点的节点状态调整为关机状态。
45.在其中一个实施例中,装置还包括:
46.第一确定模块,用于如果当前时间与预设的时间窗口不匹配,则在目标系统包含的多个节点确定符合目标唤醒条件的第二目标节点;
47.第二调整模块,用于将第二目标节点的节点状态调整为工作状态。
48.在其中一个实施例中,当前节能调整模式为基于空闲时间的调整模式,节点信息至少包括节点的历史负载信息;第一调整模块,具体用于:
49.针对当前节能调整模式是基于空闲时间的调整模式的节点,基于节点的历史负载信息,计算节点的平均负载信息,节点的历史负载信息是在到达预设检测时间的情况下采集的;
50.将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态;
51.将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态;
52.将平均负载信息小于或者等于第一负载阈值,且大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。
53.在其中一个实施例中,装置还包括:
54.第二确定模块,用于在接收到提交的作业的情况下,基于各节点的优先级确定作业对应的作业节点列表,节点的优先级是基于节点的节点状态确定的,低频运行状态的节点的优先级高于睡眠状态节点的优先级,睡眠状态节点的优先级高于关机状态节点的优先级;
55.运行模块,用于基于作业节点列表包含的节点,运行作业。
56.在其中一个实施例中,装置还包括:
57.第三获取模块,用于获取节能调整模式对应的节点列表以及预设的空闲节点数目;
58.第三调整模块,用于将节能调整模式对应的节点列表中,连续的空闲节点数目个节点,调整为非节能调整模式。
59.在其中一个实施例中,装置还包括:
60.第三确定模块,用于基于目标系统中各节点的实时负载信息,确定集群的总负载信息,并基于总负载信息,确定节能调整模式对应的节点数量;
61.第四调整模块,用于如果各排队作业的占用节点数量大于或者等于节能调整模式对应的节点数量,则调整节能调整模式对应的节点为非节能调整模式。
62.在其中一个实施例中,装置还包括:
63.第五调整模块,用于如果目标系统不存在排队作业,且目标系统中的空闲节点的数量大于预设空闲节点阈值,且总负载信息满足预设低负载条件,则调整目标系统中的空闲节点的节点状态为关机状态。
64.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
65.获取目标系统的当前节能调整模式;
66.获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;
67.基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。
68.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
69.获取目标系统的当前节能调整模式;
70.获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;
71.基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。
72.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
73.获取目标系统的当前节能调整模式;
74.获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;
75.基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。
76.上述节点状态的调整方法、装置、计算机设备、存储介质和计算机程序产品,通过获取目标系统的当前节能调整模式;获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。通过采用本发明,可以支持多种节能模式,还可以在保证系统性能不受影响下的情况下,降低系统的整体功耗,还可以在基于时间窗口的节能模式和基于空闲时间的节能模式之间灵活切换。
附图说明
77.图1为一个实施例中节点状态的调整方法的流程示意图;
78.图2为一个实施例中调整为关机状态步骤的流程示意图;
79.图3为一个实施例中调整为开机状态步骤的流程示意图;
80.图4为一个实施例中调整为睡眠状态步骤的流程示意图;
81.图5为一个实施例中作业运行步骤的流程示意图;
82.图6为一个实施例中调整为非节能调整模式步骤的流程示意图;
83.图7为一个实施例中调整为非节能调整模式步骤的流程示意图;
84.图8为另一个实施例中节点状态的基于时间窗口的调整模式的流程示意图;
85.图9为另一个实施例中节点状态的定期采集作业负载信息步骤的流程示意图;
86.图10为另一个实施例中节点状态的调整方法的流程示意图;
87.图11为一个实施例中节点状态的调整装置的结构框图;
88.图12为一个实施例中计算机设备的内部结构图。
具体实施方式
89.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
90.在一个实施例中,如图1所示,提供了一种节点状态的调整方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现,上述终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑等,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本实施例中,该节点状态的调整方法包括以下步骤:
91.步骤102,获取目标系统的当前节能调整模式。
92.其中,目标系统可以是业务系统,或者是计算机集群系统;当前节能调整模式可以是在当前时刻目标系统中的各个节点的节能调整模式;该节能调整模式包含节能调整策略,该节能调整策略是用于对处于该节能调整模式下的节点进行节能调整的策略。
93.具体地,针对于目标系统中的节点,终端可以获取该目标系统中的配置文件,并基于该配置文件确定节点的当前节能调整模式。
94.步骤104,获取目标系统中各个节点的与当前节能调整模式对应的节点信息。
95.其中,节点信息可以是节点的特征信息,例如节点的历史负载信息等等;
96.当前节能调整模式对应的节点信息是,当前的节能调整模式对节点进行节能调整所需要的节点的特征信息;例如在当前节能调整模式是基于时间窗口的调整模式的情况下,对应的节点信息可以是节点当前的时间信息;在当前节能调整模式是基于空闲时间的调整模式的情况下,对应的节点信息可以是节点的历史负载信息,还可以是节点的平均负载信息等等。
97.具体地,针对于目标系统中的节点,终端在确定该节点对应的当前节能调整模式后,可以在该节点对应的节点信息中,确定该当前节能调整模式对应的节点信息。
98.步骤106,基于当前节能调整模式以及各个节点的与当前节能调整模式对应的节点信息,调整目标系统中的各个节点的节点状态。
99.其中,节点状态是节点的当前状态,例如可以是关机状态,非关机状态等等。
100.具体地,终端可以基于节点的当前节能调整模式以及该节点的与当前节能调整模式对应的节点信息,确定节点的目标节点状态,并将该节点的当前的节点状态调整至目标节点状态。在一个示例中,终端可以确定目标系统的当前节能调整模式,以及该目标系统包含的各个节点的与当前节能调整模式对应的鹅节点信息,确定各节点的目标节点状态,并将该各节点的节点状态调整至目标节点状态。
101.上述节点状态的调整方法中,获取目标系统的当前节能调整模式。获取所述目标
系统中各个节点的与所述当前节能调整模式对应的节点信息。基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。通过采用本发明,可以支持多种节能模式,还可以在保证系统性能不受影响下的情况下,降低系统的整体功耗,还可以在基于时间窗口的节能模式和基于空闲时间的节能模式之间灵活切换。
102.在一个实施例中,当前节能调整模式为基于时间窗口的调整模式,节点信息为当前时间。具体地,当前时间可以是节点对应的当前的实时时间,基于时间窗口的调整模式可以是基于实时时间与时间窗口的匹配关系,对节点的节点状态进行调整的模式。
103.相应地,如图2所示,步骤“基于当前节能调整模式以及各个节点的与当前节能调整模式对应的节点信息”的具体处理过程,包括:
104.步骤202,如果当前时间与预设的时间窗口匹配,则在目标系统包含的多个节点确定符合目标关机条件的第一目标节点。
105.其中,预设的时间窗口可以是预先配置的时间范围,例如可以是第一时间点至第二时间点,在一个示例中,预设的时间窗口可以是六点至二十点,即第一时间点(预设时间窗口的开始时间点)可以是六点,第二时间点(预设时间窗口的结束时间点)可以是二十点;目标关机条件可以是当前空闲的节点,也可以是目标系统当前包含的所有的节点,还可以当前的负载小于预设负载阈值的节点,还可以是当前的电源状态为开机状态的节点,目标关机条件的具体内容可以基于实际应用场景确定。
106.具体地,针对于目标系统内的节点,终端可以确定预先配置的时间窗口,并获取当前的实时时间;如果终端确定当前时间与预设的时间窗口匹配,即,终端如果确定当前时间在预设的时间窗口内,则终端可以在目标系统所包含的节点中确定满足目标关机条件的节点,并将满足目标关机条件的节点确定为第一目标节点;在一个示例中,终端如果确定当前的节能调整模式为基于时间窗口的节能调整模式,且终端确定当前的实时时间在预设的时间窗口内,则终端可以将目标系统内的电源状态为开启状态的节点,确定为满足目标关机条件的第一目标节点。
107.步骤204,将第一目标节点的节点状态调整为关机状态。
108.其中,关机状态可以是节点的电源被关闭的状态。
109.具体地,终端可以在当前时间在预设时间窗口内的情况下,终端可以将满足目标关机条件的第一目标节点的电源关闭,即将第一目标节点的节点状态调整为关机状态。
110.在一个示例中,终端可以生成电源关闭指令,并向满足目标关机条件的第一目标节点发送该电源关闭指令,以使节点在接收到该电源关闭指令后,可以关闭该节点的电源,即将该节点调整为关机状态。
111.本实施例中,通过基于时间窗口的调整模式对目标系统包含的各个节点进行节能调整,可以在保证节点调整效率的情况下,降低节点的能耗。
112.在一个实施例中,如图3所示,该节点状态的调整方法还包括:
113.步骤302,如果当前时间与预设的时间窗口不匹配,则在目标系统包含的多个节点确定符合目标唤醒条件的第二目标节点。
114.其中,目标唤醒条件可以是目标系统中待运行的作业所对应的节点,也可以是负载信息大于或者等于预设负载阈值的节点,还可以是目标系统案包含的所有节点等等,具
体目标唤醒条件的内容可以基于实际应用场景确定。
115.具体地,如果终端确定当前节能调整模式为基于时间窗口的节能调整模式,则针对于目标系统内的节点,终端可以确定预先配置的时间窗口,并获取当前的实时时间;如果终端确定当前时间与预设的时间窗口不匹配,即,终端如果确定当前时间并不属于预设的时间窗口,则终端可以在目标系统所包含的节点中确定满足目标唤醒条件的节点,并将满足目标唤醒条件的节点确定为第二目标节点;在一个示例中,终端如果确定当前的节能调整模式为基于时间窗口的节能调整模式,且终端确定当前的实时时间不属于预设的时间窗口,则终端可以将目标系统内的电源状态为关闭状态的节点,确定为满足目标唤醒条件的第一目标节点。
116.步骤304,将第二目标节点的节点状态调整为工作状态。
117.其中,工作状态可以是非关机状态,例如工作状态可以是节点的电源打开的状态。
118.具体地,终端可以在当前时间不在预设时间窗口内的情况下,将满足目标条件的节点确定为第二目标节点,并唤醒第二目标节点。例如终端可以将第二目标节点的电源打开,实现将第二目标节点的节点状态调整为工作状态,即实现将第二目标节点的节点状态调整为非关机状态。
119.在一个示例中,终端可以生成唤醒指令,并向满足目标唤醒条件的第二目标节点发送该唤醒指令,以使节点在接收到该唤醒指令后,可以打开该第二目标节点的电源,即将该节点调整为非关机状态。
120.在另一个示例中,针对于满足目标唤醒条件的第二目标节点,终端可以生成电源开启指令,并发送该电源开启指令,例如可以是向控制器发送电源开启指令,控制器在接收到第二目标节点对应的电源开启指令后,可以将第二目标节点的电源开启,实现将第二目标节点的节点状态调整为工作状态,即实现将第二目标节点的节点状态调整为非关机状态。
121.本实施例中,通过基于时间窗口的调整模式对目标系统包含的各个节点进行节能调整,在当前时间不在预设时间窗口内,及时唤醒各节点,实现在降低节点的能耗的效果下,保证目标系统的正常运行的效果。
122.在一个实施例中,当前节能调整模式为基于空闲时间的调整模式,节点信息至少包括节点的历史负载信息。节点的历史负载信息可以是节点在预设时间段内的负载信息,例如可以是负载值等等,基于空闲时间的调整模式可以是基于节点的负载信息以及节点的处于空闲状态的时间对节点的节点状态进行调整的模式。
123.相应地,如图4所示,步骤“基于当前节能调整模式以及各个节点的与当前节能调整模式对应的节点信息”的具体处理过程,包括:
124.步骤402,针对当前节能调整模式是基于空闲时间的调整模式的节点,基于节点的历史负载信息,计算节点的平均负载信息。
125.其中,节点的历史负载信息是在到达预设检测时间的情况下采集的。预设检测时间可以是检测目标系统包含的各节点的负载信息的时间点,预设检测时间的具体时间点数值可以是预先配置的,或者是基于实际应用场景确定的;历史负载信息可以是节点在历史时间段内的负载信息,也可以是历史时间段内的负载均值信息等等。
126.具体地,终端可以获取当前时间,如果确定当前时间已经到达预设检测时间,则终
端可以通过目标系统中的管理节点,获取目标系统包含的各个节点的负载信息,并存储获取到的各个节点的负载信息。基于此,终端可以获取目标系统对应的空闲时间,如果空闲时间大于或者等于预设空闲时间阈值,则终端可以获取目标系统中当前节能调整模式为基于空闲时间的调整模式的节点,即,终端可以获取节能模式的节点列表,其中,该节点列表包含当前节能调整模式为基于空闲时间的调整模式的多个节点。
127.这样,终端可以获取该节能模式的节点列表包含的各个节点的历史负载信息,并基于各个节点的历史负载信息,分别计算各个节点的平均负载信息。
128.步骤404,将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态。
129.其中,第一负载阈值可以是基于使用频率较高的节点的负载信息确定的负载数值,使用频率较高可以是使用频率大于或者等于预设使用频率阈值;使用频率较高的节点可以是经常被使用的节点。
130.具体地,终端可以获取节能模式的节点列表包含的各个节点的平均负载信息,并将各个节点的平均负载信息分别与第一负载阈值进行比较,得到各个节点的平均负载信息与第一负载阈值的比较结果。这样,终端可以将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态。其中,在基于空闲时间的调整模式中,节点的节点状态可以包括开机状态以及关机状态,该开机状态可以包括低频运行状态以及睡眠状态,低频运行状态可以是以第一低能耗的频率运行的状态,睡眠状态可以是维持第二低能耗的频率运行的状态,第一低能耗的频率高于第二低能耗的频率,第二低能耗的频率可以是最低的频率。
131.步骤406,将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态。
132.其中,第二负载阈值可以是基于多个使用频率较低的节点的负载信息确定的负载数值,使用频率较低可以是使用频率低于预设使用频率阈值。
133.具体地,终端可以获取节能模式的节点列表包含的各个节点的平均负载信息,并将各个节点的平均负载信息分别与第二负载阈值进行比较,得到各个节点的平均负载信息与第二负载阈值的比较结果。这样,终端可以将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态。具体地,终端可以向平均负载信息小于第二负载阈值的节点发送关机指令,以使接收到该关机指令的节点,可以将本身的节点状态调整为关机状态;在一个示例中,终端可以通过控制器,控制将平均负载信息小于第二负载阈值的节点的节点状态调整为关机状态。
134.步骤408,将平均负载信息小于或者等于第一负载阈值,且大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。
135.具体地,终端可以获取各个节点的平均负载信息与第一负载阈值的比较结果以及各个节点的平均负载信息与第二负载阈值的比较结果,获取平均负载信息小于或者等于第一负载阈值,且平均负载信息大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。
136.本实施例中,通过基于空闲时间的调整模式,可以基于第一负载阈值以及第二负载阈值对各个节点的节点状态进行调整,增加低频运行状态以及睡眠状态,保证节点运行
状态的多样性,实现节点的低能耗运行,避免资源的额外消耗。
137.在一个实施例中,如图5所示,该节点状态的调整方法还包括:
138.步骤502,在接收到提交的作业的情况下,基于各节点的优先级确定作业对应的作业节点列表。
139.其中,节点的优先级是基于节点的节点状态确定的,低频运行状态的节点的优先级高于睡眠状态节点的优先级,睡眠状态节点的优先级高于关机状态节点的优先级;该优先级可以是使用的优先级高低,优先级较高的节点会优先于优先级较低的节点被使用,例如可以是运行作业等等。
140.具体地,终端可以基于各个节点的当前的节点状态状态确定各个节点的优先级,终端可以通过调度系统接收到当前提交的作业,终端可以通过调度系统中的调度器确定运行该当前接收到的作业的节点列表。在一个示例中,终端可以确定该作业对应的节点数量,并按照优先级的从高到低的顺序,确定节点优先级序列,并在该优先级序列中,提取该作业对应的节点数量个节点,确定为该作业对应的作业节点列表。
141.在一个示例中,如果该作业节点列表包含处于基于空闲时间的调整模式的节点,则终端可以执行节点唤醒脚本,通过运行该节点唤醒脚本,唤醒目标系统包含的节点。例如,节点唤醒脚本可以是resume.sh脚本。
142.步骤504,基于作业节点列表包含的节点,运行作业。
143.具体地,终端可以在唤醒作业节点列表包含的各个节点的步骤之后,向作业节点列表包含的各个节点发送接收到的作业,以使作业节点列表包含的各个节点可以运行该作业,完成该作业包含的任务。
144.本实施例中,通过接收到的作业确定执行该作业的作业节点列表,并基于节点状态确定节点的使用优先级,实现节点的高效调度。
145.在一个实施例中,如图6所示,该节点状态的调整方法还包括:
146.步骤602,获取节能调整模式对应的节点列表以及预设的空闲节点数目。
147.其中,节能调整模式可以包含基于空闲时间的调整模式以及基于时间窗口的调整模式,节能调整模式可以是对节点进行节能处理,达到节能效果的调整模式。也就是说,在一个节点当前处于节能调整模式时,可以确定该节点的能耗较低。预设的空闲节点数目可以是预先配置的目标系统中可以包含的空闲节点的数量,本公开对预设的空闲节点数目的具体数值并不做具体限定。预设的空闲节点数目可以是预先配置的目标系统中节点状态为空闲状态的节点的数量。
148.具体地,终端可以在目标系统包含的节点中,获取当前处于节能调整模式的节点,组成节能调整模式对应的节点列表,同样地,终端还可以获取预先配置的目标系统对应的空闲节点数目。
149.步骤604,将节能调整模式对应的节点列表中,连续的空闲节点数目个节点,调整为非节能调整模式。
150.其中,节能调整模式对应的节点列表可以包含多个标注有序号的节点,例如可以包括节点1、节点2、节点3、节点4、
……
、节点n。连续的节点可以是在节点列表中相邻且连续的多个节点。
151.具体地,终端可以在节能调整模式对应的节点列表中,将连续的预设的空闲节点
数目个节点,配置为非节能调整模式;也就是说,终端可以在确定节点调整模式对应的节点列表后,基于预设的空闲节点数目,在节能调整模式对应的节点列表中提取连续的空闲节点数目个节点,调整为非节能调整模式。
152.在一个示例中,在确定进入节能调整模式的节点列表后,例如可以是节点1、节点2、节点4、节点5以及节点6;预先的空闲节点数目可以是3,这样终端可以在节能调整模式对应的节点列表中提取连续的3个节点维持非节能调整模式,例如终端确定出的连续的3个节点可以是节点4、节点5以及节点6。
153.本实施例中,通过维持连续的节点的非节能调整模式,便于调度系统基于节点的连续性调度节点,提高节点调度的效率。
154.在一个实施例中,如图7所示,该节点状态的调整方法还包括:
155.步骤702,基于目标系统中各节点的实时负载信息,确定集群的总负载信息,并基于总负载信息,确定节能调整模式对应的节点数量。
156.其中,各节点的实时负载信息可以是在到达检测时间时检测到的,集群的总负载信息可以是基于集群包含的各个节点的实时负载信息的和值确定的;节能调整模式对应的节点数量是在集群内应处于节能调整模式实现节能处理的节点的数量。目标系统也可以是目标集群,目标系统包含的各个节点可以是集群包含的各个节点。
157.具体地,在终端确定当前的实时时间到达负载检测时间时,终端可以获取目标系统包含的各个节点的实时负载信息,对各个节点的实时负载信息进行求和处理,将计算出的和值确定为集群的总负载信息。基于此,终端可以基于集群的总负载信息确定需要调整为节能调整模式的节点数量,即确定节能调整模式对应的节点数量。
158.步骤704,如果各排队作业的占用节点数量大于或者等于节能调整模式对应的节点数量,则调整节能调整模式对应的节点为非节能调整模式。
159.其中,各排队作业可以是目标系统的队列中的作业,各排队作业的占用节点数量可以是基于各个排队作业分别占用的节点数量确定的。
160.具体地,终端可以获取目标系统中排队的作业,并确定各个排队作业分别占用的占用节点数量,并计算目标系统中所有的排队作业的占用节点数量。如果终端确定各排队作业的占用节点数量大于或者等于节能调整模式对应的节点数量,则调整节能调整模式对应的节点为非节能调整模式。
161.在一个示例中,如果终端确定各排队作业的占用节点数量大于或者等于节能调整模式对应的节点数量,终端可以基于占用节点数量确定节点差值,并通过开机脚本唤醒节点差值对应的节点,实现对排队作业的运行。
162.本实施例中,通过基于排队作业确定节能调整模式对应的节点数量,可以实现对节点状态的灵活调整。
163.在一个实施例中,该节点状态的调整方法还包括:
164.如果目标系统不存在排队作业,且目标系统中的空闲节点的数量大于预设空闲节点阈值,且总负载信息满足预设低负载条件,则调整目标系统中的空闲节点的节点状态为关机状态。
165.其中,预设低负载条件可以是负载小于预设负载阈值。
166.具体地,如果目标系统不存在排队作业,且终端确定当前目标系统中的空闲节点
的数量大于预设空闲节点阈值,且总负载信息满足预设低负载条件,则终端可以将目标系统中的空闲节点的节点状态调整为关机状态。
167.本实施例中,通过基于排队作业确定节能调整模式对应的节点数量,可以实现对节点状态的灵活调整。
168.以下,结合一个具体实施例详细描述上述节点状态的调整方法的具体执行过程:
169.随着高性能计算的广泛发展,高性能计算集群中的节能技术也成为亟待关注的方向,相关技术中,针对集群系统的整体能耗所采取的优化措施主要有动态电源管理dpm和动态电压频率调节dvfs。相关技术中只是在调度系统层面上配置远程开关机以及配置何时进入节能模式,而节点的开关机操作会额外消耗能源,并且节点的启动需要消耗时间。因此,节点的按需开关机不仅会影响节能效果,还会影响到调度系统的性能和可靠性。本实施例所提供的节点状态的调整方法是基于调度系统来实现高性能计算机集群的节能,例如可以根据设定的时间窗口来实现节能,当集群中的节点在该时间窗口内时,可以将节点关机。还可以实现计算节点在空闲一段时间后进入节能模式,节能状态从低到高可以分为降频、睡眠及关机状态,节点恢复使用时也是逐渐升高。
170.本实施例所提供的节点状态的调整方法可以采用定期查询计算节点负载的方式,来确定节点的使用情况,并结合节点的空闲时间来决定节点应该进入何种节能模式。同时在队列的所有节点进入节能模式时,保留了部分空闲的节点,可以保证申请资源较少的作业可以快速且及时地启动。同时,这部分保持空闲节点的数量支持自定义并且是动态维持的,例如当一个节点被作业申请使用时,节能策略会重新启动一个新的处于节能状态的节点进行补充;还可以根据实际需求来手动控制节点进入或解除节能模式,提升易用性。当作业提交到调度系统时,会根据调度分配的节点唤醒相应的节点,在此过程中,处于睡眠状态的节点将被优先考虑。集群会定时轮询当前集群的开机节点列表、关机节点列表、节点状态,然后计算出当前集群负载情况,结合负载策略进行判断,若存在排队作业,则通过开机脚本进行开机操作;若无排队作业,且集群空闲节点数量大于设置的阈值,则进行关机操作;若当前空闲节点数量小于设置的阈值,则进行开机操作
171.本实施例所提供的节点状态的调整方法中的节能调整模式包括基于时间窗口的调整模式以及基于空闲时间的调整模式。
172.具体地,基于时间窗口的调整模式的具体过程可以是如图8所示,包括:
173.读取配置文件,具体地,终端可以基于目标系统中配置文件确定当前节点的处于节能调整模式,例如可以确定当前节能调整模式为基于时间窗口的调整模式。
174.到达开始时间窗口,判断节点电源状态,关闭节点电源。到达结束时间窗口。具体地,终端可以在确定当前的实时时间到达开始时间窗口的情况下,判断各个节点的电源状态,并将电源状态为开启状态的节点均调整为关闭状态。同样地终端可以在当前的实时时间到达结束时间窗口的情况下,重新调整节点的电源状态为开启状态,即将节点的节点状态调整为开启状态。也就是说,本实施例所提供的节点状态的调整方法增加新的节能模式,可根据时间窗口开关机节点,若选择基于时间窗口的节能模式,则在该时间窗口内,符合要求的节点都将进入节能模式,除手动开机外,无其他途径可将节点唤醒。
175.具体地,基于空闲时间的调整模式中的定期采集作业负载信息的具体过程可以是如图9所示,包括:判断是否到达检测时间,在确定到达检测时间的情况下,判断节点是否关
机,在确定节点没有关机的情况下,获取节点的实时负载,并读取数据至文件。具体地,终端可以确定,在选择节点空闲时间来判断节点是否可以进入节能的节能模式中,终端可以定期获取计算节点的负载信息。例如可以通过配置文件及脚本的方式,经由管理节点定期来获取节点的负载,并记录存储各节点的负载信息,该负载信息可以用于衡量节点应当进入何种节能模式。
176.具体地,在计算节点的空闲时间大于或者等于指定空闲时间阈值后,计算节点可以进入节能模式(即节点的节点状态,包含不同层级的节能状态,例如降频状态、睡眠状态和关机状态),不同层级的节能状态恢复到可以运行作业的状态(即工作状态)所需要的时间也是从低到高。如下表1所示,目前hpc集群中不同调控器模式下作业运行时间:
177.表1
178.调控器模式自动调整最小功耗最大性能总时间/s149961499514956
179.根据以上对于节能技术的描述,如图10所示:
180.判断是否到达检测时间,在确定到达检测时间时,获取所有计算节点实时负载,读取数据到文件,并判断是否到达时间阈值,在确定到达时间阈值的情况下,获取有资格进入节能模式节点,并计算节点历史平均负载,以及获取队列设置保留空闲的节点数量n,根据n至获取到本轮进入节能状态的节点列表。基于此,可以判断平均负载是否大于负载阈值,在平均负载大于负载阈值的情况下,可进入降频模式,即将节点状态调整为奖品状态;在平均负载小于或者等于负载阈值的情况下,可进入睡眠或关机模式,并修改调度系统节点状态。
181.具体地,在轮询完毕后,不同的节点会根据设置好的节能策略进入到不同的节能状态,最后,进入不同节能模式的节点会被保存在文件中,文件的主要内容包括节能节点列表、开机节点列表、节点状态等。在此过程中,保留空闲的节点数量n值支持全局默认值设置和队列单独配置,单独配置的优先级高于全局默认设置。
182.当作业提交到调度系统时,会根据调度分配的节点唤醒相应的节点,在此过程中,调度系统会首先去查询保存节点状态的文件,处于睡眠状态的节点将被优先考虑唤醒。另外,集群会定时轮询当前集群的节能节点列表、开机节点列表、节点状态,并计算出当前集群负载情况。然后结合负载策略进行判断,若存在排队作业,则通过开机脚本进行开机操作;若无排队作业,且集群空闲节点数量大于设置的阈值,则进行关机操作;若当前空闲节点数量小于设置的阈值,则进行开机操作。这样根据集群负载动态的使得节点进入或脱离节能状态,在一定程度上解决了能在作业到来之前能够唤醒节点的问题。
183.结合一个详细实施例描述本实施例所提供的节点状态的调整方法所提供的节能调度系统的总体调度流程如下:
184.步骤1:选择节能模式。
185.步骤2:若选择基于时间窗口的节能模式,则在到达时间窗口后,将相关节点置于节能模式,在时间窗口到达后,进行唤醒节点。
186.步骤3:若选择基于空闲时间的节能模式,则执行步骤4。
187.步骤4:调度系统接收到提交的作业。
188.步骤5:调度系统的调度器为作业分配作业的节点列表,若处于节能模式的节点列表中包含处于节能模式的节点,则执行resume.sh脚本唤醒节点,使节点恢复,在这个过程
中会优先考虑处于低等级节能模式的节点。
189.步骤6:分配作业到节点运行作业。
190.步骤7:若到达负载检测时间,管理节点会收集各个节点的负载情况并存储;
191.步骤8:若到达设置的空闲时间阈值,则获取所有可以进入节能模式的节点列表,后执行suspend.sh,在进入节能模式之前,会考虑各个节点的历史负载,若平均负载大于设置的负载阈值θ1,表明该节点经常被使用,则将节点设置为低频模式运行;若节点的平均负载小于负载阈值θ2,则表示节点使用频率较低,则将节点关机,处于θ1和θ2之间的节点则会进入睡眠状态。
192.步骤9:在获取到需要进入到节能模式的节点列表后,需要根据设置的保持空闲的节点数量n进行进一步筛选,在筛选过程中会尽可能的保留连续的节点列表以符合调度系统的调度策略。
193.步骤10:获取集群的总体负载情况,根据负载策略,进一步在要进入节能的节点列表中筛选节点,若存在排队作业,则再次保留部分节点以方便作业的快速启动,当需要保留的节点数量不够时,则通过开机脚本再唤醒节点;若无排队作业,集群空闲节点数量大于设置的阈值且集群总体负载较低,则进行关机操作。并重复以上步骤1至步骤10。
194.本实施例所提供的节点状态的调整方法可以将集群节能与调度系统结合,简化配置,在控制集群功耗技术领域内具有广泛的实用价值和前景。提供了多种节能模式给调度系统,可在基于时间窗口的节能模式和基于空闲时间的节能模式之间自由切换。基于时间窗口的节能模式对于长时间处于低负载模式的集群十分有用,此外,也适用于集群节点下架维修情况。当采用基于空闲时间的节能模式时,对于符合条件的节点,明确了节点应处于何种节能模式下,避免了计算节点频繁切换电源状态,减少了不必要的损失,同时,保留队列部分空闲节点以及基于集群负载策略保证了作业能够快速启动。
195.本实施例所提供的节点状态的调整方法提供了多种节能方式,由于服务器开关机需要时间,若大集群中所有节点仅采用开关机方式,会极大影响作业的调度。应充分利用现有工具,将节能状态划分不同等级,从低到高主要包括:降频、睡眠、关机模式。可以避免频繁切换节点电源状态消耗的额外的资源,避免频繁的状态转换的同时,可以保证节点在没有作业时尽可能的处于节能模式。还可以在作业到来之前能够唤醒节点。以及在节点在到达设定的空闲时间阈值后,可以选择进入不同的节能状态,例如,降频、睡眠和关机,保证恢复的效率以及避免资源的额外消耗。
196.应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
197.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的节点状态的调整方法的节点状态的调整装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个节点状态的调整装置实施例中的具体
限定可以参见上文中对于节点状态的调整方法的限定,在此不再赘述。
198.在一个实施例中,如图11所示,提供了一种节点状态的调整装置1100,包括:第一获取模块1102、第二获取模块1104和第一调整模块1106,其中:
199.第一获取模块1102,用于获取目标系统的当前节能调整模式;
200.第二获取模块1104,用于获取目标系统中各个节点的与当前节能调整模式对应的节点信息;
201.第一调整模块1106,用于基于当前节能调整模式以及各个节点的与当前节能调整模式对应的节点信息,调整目标系统中的各个节点的节点状态。
202.在其中一个实施例中,当前节能调整模式为基于时间窗口的调整模式,节点信息为当前时间;第一调整模块,具体用于:
203.如果当前时间与预设的时间窗口匹配,则在目标系统包含的多个节点确定符合目标关机条件的第一目标节点;将第一目标节点的节点状态调整为关机状态。
204.在其中一个实施例中,装置还包括:
205.第一确定模块,用于如果当前时间与预设的时间窗口不匹配,则在目标系统包含的多个节点确定符合目标唤醒条件的第二目标节点;
206.第二调整模块,用于将第二目标节点的节点状态调整为工作状态。
207.在其中一个实施例中,当前节能调整模式为基于空闲时间的调整模式,节点信息至少包括节点的历史负载信息;第一调整模块,具体用于:
208.针对当前节能调整模式是基于空闲时间的调整模式的节点,基于节点的历史负载信息,计算节点的平均负载信息,节点的历史负载信息是在到达预设检测时间的情况下采集的;
209.将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态;
210.将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态;
211.将平均负载信息小于或者等于第一负载阈值,且大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。
212.在其中一个实施例中,装置还包括:
213.第二确定模块,用于在接收到提交的作业的情况下,基于各节点的优先级确定作业对应的作业节点列表,节点的优先级是基于节点的节点状态确定的,低频运行状态的节点的优先级高于睡眠状态节点的优先级,睡眠状态节点的优先级高于关机状态节点的优先级;
214.运行模块,用于基于作业节点列表包含的节点,运行作业。
215.在其中一个实施例中,装置还包括:
216.第三获取模块,用于获取节能调整模式对应的节点列表以及预设的空闲节点数目;
217.第三调整模块,用于将节能调整模式对应的节点列表中,连续的空闲节点数目个节点,调整为非节能调整模式。
218.在其中一个实施例中,装置还包括:
219.第三确定模块,用于基于目标系统中各节点的实时负载信息,确定集群的总负载信息,并基于总负载信息,确定节能调整模式对应的节点数量;
access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
231.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
232.以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。

技术特征:
1.一种节点状态的调整方法,其特征在于,所述方法包括:获取目标系统的当前节能调整模式;获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。2.根据权利要求1所述的方法,其特征在于,所述当前节能调整模式为基于时间窗口的调整模式,所述节点信息为当前时间;所述基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,包括:如果当前时间与预设的时间窗口匹配,则在目标系统包含的多个节点确定符合目标关机条件的第一目标节点;将所述第一目标节点的节点状态调整为关机状态。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:如果所述当前时间与所述预设的时间窗口不匹配,则在目标系统包含的多个节点确定符合目标唤醒条件的第二目标节点;将所述第二目标节点的节点状态调整为工作状态。4.根据权利要求1所述的方法,其特征在于,所述当前节能调整模式为基于空闲时间的调整模式,所述节点信息至少包括节点的历史负载信息;所述基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,包括:针对当前节能调整模式是基于空闲时间的调整模式的节点,基于所述节点的历史负载信息,计算所述节点的平均负载信息,所述节点的历史负载信息是在到达预设检测时间的情况下采集的;将平均负载信息大于第一负载阈值的节点的节点状态,调整为低频运行状态;将平均负载信息小于第二负载阈值的节点的节点状态,调整为关机状态;将平均负载信息小于或者等于第一负载阈值,且大于或者等于第二负载阈值的节点的节点状态,调整为睡眠状态。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在接收到提交的作业的情况下,基于各节点的优先级确定所述作业对应的作业节点列表,所述节点的优先级是基于所述节点的节点状态确定的,低频运行状态的节点的优先级高于睡眠状态节点的优先级,睡眠状态节点的优先级高于关机状态节点的优先级;基于所述作业节点列表包含的节点,运行所述作业。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取节能调整模式对应的节点列表以及预设的空闲节点数目;将所述节能调整模式对应的节点列表中,连续的空闲节点数目个节点,调整为非节能调整模式。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:基于所述目标系统中各节点的实时负载信息,确定集群的总负载信息,并基于所述总负载信息,确定节能调整模式对应的节点数量;如果各排队作业的占用节点数量大于或者等于所述节能调整模式对应的节点数量,则调整所述节能调整模式对应的节点为非节能调整模式。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:如果所述目标系统不存在排队作业,且所述目标系统中的空闲节点的数量大于预设空闲节点阈值,且所述总负载信息满足预设低负载条件,则调整所述目标系统中的空闲节点的节点状态为关机状态。9.一种节点状态的调整装置,其特征在于,所述装置包括:第一获取模块,用于获取目标系统的当前节能调整模式;第二获取模块,用于获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;第一调整模块,用于基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述的方法的步骤。

技术总结
本申请涉及一种节点状态的调整方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取目标系统的当前节能调整模式;获取所述目标系统中各个节点的与所述当前节能调整模式对应的节点信息;基于所述当前节能调整模式以及所述各个节点的与所述当前节能调整模式对应的节点信息,调整所述目标系统中的各个节点的节点状态。通过采用本发明,可以支持多种节能模式,还可以在保证系统性能不受影响下的情况下,降低系统的整体功耗,还可以在基于时间窗口的节能模式和基于空闲时间的节能模式之间灵活切换。的节能模式之间灵活切换。的节能模式之间灵活切换。


技术研发人员:袁千金 张涛 郝文静 吕灼恒 徐仕鑫
受保护的技术使用者:曙光信息产业股份有限公司
技术研发日:2023.07.25
技术公布日:2023/10/8
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐