一种计算机集群错峰开机的自动控制方法及系统与流程

    专利2022-07-08  73


    本发明实施例涉及计算机技术领域,特别涉及一种计算机集群错峰开机的自动控制方法及系统。



    背景技术:

    企业信息技术(informationtechnology,it)部门日常计算机维护工作,主要是操作系统和应用程序部署以及相关调试等操作,传统人工方式需要投入大量的人力和时间,因此企业通过it人员自己编写或采购专业软件创建自动化执行脚本(以下简称自动化脚本),替代人工执行自动化操作,可以极大地提高工作效率,必将成为企业it未来发展趋势。

    自动化脚本通常被设置为开机启动项,当计算机开机时,首先启动自动化脚本,在无需it人员参与的情况下,从网络侧调用资源和工具,自动完成所设定的维护操作。然而在大中型企业里,计算机集群可能达到数千台以上的规模,如果不加以控制,完全依靠员工自行开机(例如员工上班到岗时间),则可能因为员工在短时间内集中开机启动自动化脚本,而出现以下问题:

    1、数千个自动化脚本同时访问网络侧资源,造成网络超载,导致脚本命令执行速度大幅下降,执行时间超长甚至脚本中断执行等失败结果。

    2、数千个自动化脚本同时执行过程中,如遇突发大范围停电或断网事故,将造成正在执行中的命令及操作随之突然中断,导致大范围的计算机故障,严重影响企业日常工作,同时会给it人员短时间内排除故障带来巨大压力。



    技术实现要素:

    本发明实施例提供一种计算机集群错峰开机的自动控制方法及系统,企业it部门在计划采用自动化操作方式时,应当规避计算机集群集中开机时间段,而对计算机集群进行自动化的错峰开机控制,从而分时有序执行自动化脚本,消除上述风险。

    本发明实施例提供的一种计算机集群错峰开机的自动控制方法包括:

    计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入基本输入输出系统(basicinputoutputsystem,bios)的第二命令;

    每台计算机按照所述第一命令,生成定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    每台计算机按照所述第二命令,将已生成的所述定时开机时间参数写入bios;

    在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    优选地,所述每台计算机按照所述第一命令,生成定时开机时间参数,包括:

    计算机集群中的每台计算机按照所述第一命令,获取自身系统中具有随机性的信息和具有唯一性的信息中的至少之一,并根据自身系统中具有随机性的信息和具有唯一性的信息中的至少之一,生成定时开机时间参数。

    优选地,计算机集群中的每台计算机在执行关机脚本期间,从网络侧服务器获取所述第一命令和所述第二命令并执行。

    优选地,所述方法还包括:

    计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;

    每台计算机按照所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    优选地,计算机集群中的每台计算机在执行关机脚本期间,从网络侧服务器获取所述第四命令并执行。

    优选地,计算机集群中的每台计算机从网络侧服务器获取的所述自动化脚本中具有用于关闭定时开机功能的第三命令。

    优选地,所述方法还包括:

    计算机集群中的每台计算机从网络侧服务器获取用于关闭定时开机功能的第三命令;

    每台计算机将从网络侧服务器获取的所述第三命令添加至所述自动化脚本中。

    优选地,在实现对计算机的维护操作后,所述方法还包括:

    计算机集群中的每台计算机按照所述自动化脚本中的所述第三命令,关闭定时开机功能,以避免每台计算机根据已写入bios的所述定时开机时间参数再次自动执行开机过程;

    每台计算机在关闭定时开机功能后,删除所述自动化脚本,并执行关机过程。

    本发明实施例提供的一种计算机集群错峰开机的自动控制系统包括:

    命令获取模块,用于使计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入bios的第二命令;

    参数生成模块,用于按照每台计算机获取的所述第一命令,生成每台计算机的定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    写入模块,用于按照每台计算机获取的所述第二命令,将已生成的所述定时开机时间参数写入bios;

    自动开机模块,用于在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    优选地,所述命令获取模块还用于使计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;

    优选地,所述写入模块还用于按照每台计算机获取的所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    本发明实施例提供的技术方案具有如下有益效果:

    1、本发明实施例通过使计算机集群的所有计算机错峰开机,实现自动化脚本错峰访问网络侧资源,能够保证网络负载均衡且不超载,保证计算机维护操作快速、有效、有序地完成。

    2、本发明实施例通过使计算机集群的所有计算机错峰开机,实现自动化脚本错峰执行,在执行过程中,如遇突发大范围停电或断网事故,能够避免大范围计算机故障,降低对企业日常工作的影响,减小给it人员短时间内排除故障的压力。

    附图说明

    图1是本发明实施例提供的一种计算机集群错峰开机的自动控制方法的流程示意图;

    图2是本发明实施例提供的获取和执行第四命令的流程示意图;

    图3是本发明实施例提供的执行自动化脚本的流程示意图;

    图4是本发明实施例提供的1432个样本抓取系统时间“秒”值(0~59)的数量分布图;

    图5是本发明实施例提供的设置和执行自动化脚本流程示意图;

    图6是本发明实施例提供的计算机集群错峰开机自动控制与企业it自动化维护流程相结合的实施流程示意图;

    图7a和图7b分别是传统升级方式和采用本发明实施例后的升级方式;

    图8是本发明实施例提供的一种计算机集群错峰开机的自动控制系统的示意性结构框图。

    具体实施方式

    以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

    图1是本发明实施例提供的一种计算机集群错峰开机的自动控制方法的流程示意图,如图1所示,所述方法可以包括:

    步骤s101:计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入bios的第二命令;

    步骤s102:每台计算机按照所述第一命令,生成定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    步骤s103:每台计算机按照所述第二命令,将已生成的所述定时开机时间参数写入bios;

    步骤s104:在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    在实际应用中,计算机集群中的计算机可以在获取网络侧服务器发出的需要进行计算机维护的通知消息后,执行上述步骤s101至步骤s103。计算机集群中的计算机也可以定时或周期性向网络侧服务器发送请求,以查询网络侧服务器是否发出计算机集群维护需求,如果确定网络侧服务器发出计算机集群维护需求,则执行上述步骤s101至步骤s103。

    其中,为实现计算机错峰开机,本实施例利用每台计算机自身系统中具有随机性的信息和具有唯一性的信息中的至少一个,例如系统时间中的整数秒和小数秒,计算机的ip地址和mac地址等,生成定时开机时间参数。此时,步骤s102可以具体为:计算机集群中的每台计算机按照所述第一命令,获取自身的系统时间和标识地址中的至少之一,并根据自身的系统时间和标识地址中的至少之一,生成定时开机时间参数。

    本实施例拟在用户不使用计算机的时间段内完成错峰开机,并运行设置在开机启动项中的自动化脚本,自动实现对计算机的维护操作。为实现该目的,在执行上述步骤s101至s103期间,所述方法还可以包括如图2所示的以下步骤:

    步骤s201:计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;

    步骤s202:每台计算机按照所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    在实际应用中,由于在步骤s103中已将定时开机时间参数写入bios,因此每当到达所述定时开机时间,计算机将自动开机启动。由于在完成计算机维护操作后,计算机集群没有必要再进行自动开机,因此,在完成计算机维护操作后,应当关闭计算机的定时开机功能。为实现该目的,本实施例将用于关闭定时开机功能的第三命令添加至自动化脚本中。具体实现时,计算机集群中的每台计算机可以通过自动化脚本获取其携带的所述第三命令,即从网络侧服务器获取的所述自动化脚本中具有用于关闭定时开机功能的第三命令,或者,在执行上述步骤s101至s103期间,计算机集群中的每台计算机从网络侧服务器获取用于关闭定时开机功能的第三命令,并将从网络侧服务器获取的所述第三命令添加至所述自动化脚本中,这样就可以在执行自动化脚本期间执行该第三命令。具体地说,所述方法还可以包括如图3所示的以下步骤:

    步骤s105:计算机集群中的每台计算机在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作;

    步骤s106:在利用自动化脚本实现对计算机的维护操作后,计算机集群中的每台计算机按照所述自动化脚本中的所述第三命令,关闭定时开机功能,以避免每台计算机根据已写入bios的所述定时开机时间参数再次自动执行开机过程;

    步骤s107:每台计算机在关闭定时开机功能后,删除所述自动化脚本,并执行关机过程。

    计算机集群的所有计算机均完成上述操作后,一次计算机集群的自动化维护过程结束。

    需要说明的是,计算机集群的计算机可以在被用户使用期间获取并执行上述第一至第四命令中的至少一个,也可以在用户点击关机,计算机执行关机脚本期间获取并执行上述第一至第四命令中的至少一个。

    本发明实施例还提供的一种计算机可读介质,其上存储有计算机集群错峰开机的自动控制程序,所述计算机集群错峰开机的自动控制程序被处理器执行时实现上述的计算机集群错峰开机的自动控制方法的步骤。即本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

    企业计算机的实用开机控制技术主要有以下2种方案,对于满足一定技术要求的计算机,可以控制其在关机并保持电源通电的状态下自动开机(电源通电状态为必要条件,以下不再重复说明)。(1)网络唤醒技术是通过网络向目标计算机发送特定数据包(或称魔术包)。该技术首先要求对计算机bios、网卡驱动程序、操作系统以及各层级网络交换机等一系列环节进行相应参数设置,才能保证魔术包通过网络送达目标计算机,以及目标计算机接收到魔术包之后做出响应,以正确方式自动开机。某些型号的计算机甚至必须将bios刷新到特定版本,才能有效支持网络唤醒。其次,需要准确掌握每一台目标计算机的网卡mac地址,作为发送魔术包的目标地址。最后,it人员必须专门编写一个定时发送程序,将魔术包向网络中所有目标mac地址分批、定时地进行发送,才能实现控制目标计算机错峰开机的目标。可见,网络唤醒技术十分复杂,实现难度很大。(2)定时开机技术是在目标计算机bios中启用定时开机功能并设定开机时间。该技术在pc机上普遍受到支持,实现起来相对简单。在目标计算机bios中设置一个开机时间,待关机后,到达所设定的开机时间就会自动开机。要关闭定时开机功能,在bios中设置禁用即可。由于企业it部门通常是手工设置bios,若对数千台规模的计算机集群进行定时开机控制,依靠手工显然是不可行的。

    因此,本发明以定时开机技术为基础,通过编写随机生成开机时间参数以及自动设置bios的控制命令,与用于it维护的自动化脚本互相配合,非常简便地实现了企业计算机集群错峰开机的自动控制,保障it自动化维护得以安全高效地完成。为实现上述目的,本发明实施例应当至少包括以下环节:

    1、选择错峰开机时间段。

    错峰开机的目的是规避计算机集群集中开机的时间段,避免同时执行自动化脚本。

    (1)错峰开机时间段的最优选择是夜间非工作时间段。

    自动化脚本应设计为在错峰开机时间段内执行完毕后删除自身并自动关机,待员工上班到岗开机后,不再启动任何自动化脚本。即全部自动化维护操作均在所选择的夜间错峰开机时间段内完成。

    (2)充分利用非工作时间,适当拉长错峰开机时间段(例如0:00至5:00),控制所有计算机的开机时间均匀分布在该时间段内,降低任意时刻同时开机的数量,保证网络负载均衡且不超载,当遇有意外断电或断网事故时损失最小。

    2、生成开机时间参数。

    bios开机时间参数要求提供“时”和“分”的数值。例如,开机时间设置为2:30,当计算机关机后,时间到达2:30时就会自动开机。最为简便的方法,是利用目标计算机系统中一些具有唯一性(如ip地址)或随机性(如系统时间)的变量,来自动生成开机时间参数。以抓取系统时间“秒”值为例,如图4所示,1432台计算机的系统时间“秒”值基本呈均匀分布。也就是说,每一台计算机的系统时间在“秒”级别上不会完全同步,因而在任意计算机上任意时刻抓取系统时间,取其“秒”的数值,可以视为一个随机变量。因“秒”与“分”的取值范围相同(0~59),故可以将所取“秒”的数值直接定义为开机时间中“分”的数值。以此类推,在每一台目标计算机上随机生成的开机时间,将会均匀分布在整个错峰开机时间段以内。

    本实施例中,将编写的一组用于生成定时开机时间参数的程序命令,称为命令1(或称第一命令)。命令1生成均匀分布的开机时间点,是错峰开机的基础。

    3、调用bios工具软件。

    企业计算机集群一般以商用品牌计算机为主,普遍支持定时开机技术。计算机厂商可以免费提供专用的bios工具软件,用于读取、设置或修改bios参数。按照软件使用说明所给出的命令参数格式,调用bios工具软件,既可以将定时开机的时间参数写入目标计算机bios(命令2,或称第二命令),也可以设置bios关闭定时开机功能(命令3,或称第三命令)。这样,就以执行程序命令的方式解决了设置bios的问题。

    需要说明的是,命令2自动写入bios开机时间参数,是错峰开机自动控制的实现手段,命令2隐含了开启定时开机功能,例如以每天的某个时间点定时开机。

    需要说明的是,命令3是在bios中设置关闭定时开机功能的命令,定时开机功能选择everyday的某个时间点,在定时开机成功(意味着自动开机->执行自动化脚本->完成维护任务)后,就不再需要每天定时开机了。因此,应当在自动化脚本中关闭定时开机功能。

    4、配置自动化脚本。

    自动化脚本包含计算机的全部维护操作命令。在自动化脚本中添加命令3,令自动化维护完成后,设置bios关闭定时开机功能。在自动化脚本末尾,应当设置关机命令和删除自动化脚本自身的命令,保证全部维护操作完毕后自动关闭计算机,并且再次开机后不再启动该自动化脚本。

    本实施例中,需要编写一条将自动化脚本拷贝至目标计算机开机启动项的命令,称为命令4(或称第四命令)。所述自动化脚本存储在网络侧服务器,供所有目标计算机访问。

    在本实施例中,将命令4写入关机脚本,意图每次关机时设置自动化脚本在下次开机时自动启动。

    需要说明的是,本实施例涉及的关机脚本、关机脚本策略、命令4用于说明整个自动化运作过程。

    如图5所示,目标计算机开机自启动后,利用自动化脚本,完成自动化维护,然后执行命令3,设置bios关闭定时开机功能,最后执行关机命令和删除自动化脚本自身的命令。

    5、流程准备工作。

    需要在目标计算机上执行命令1、命令2和命令4,做好设置bios定时开机时间,以及开机后启动自动化脚本的准备工作。同样应当借助技术手段,在目标计算机上自动执行这些命令。

    例如,可以包括但不限于启用目标计算机的关机脚本管理策略。在关机脚本中依次写入命令1、命令2和命令4。当员工对目标计算机点击“关机”时,操作系统首先在后台触发关机脚本,依次执行各条命令,自动完成上述准备工作。关机脚本执行完毕之后,操作系统才会向主板发送物理关机信号。

    计算机集群错峰开机自动控制可以与企业it自动化维护流程结合起来进行实施,如图6所示,具体实施过程如下:

    步骤s301:自动化脚本添加命令3。

    自动化脚本包含全部维护操作命令。在自动化脚本中添加命令3,设置bios关闭定时关机功能。在自动化脚本末尾,应当设置关机命令和删除脚本自身的命令,保证全部维护操作完毕后自动关闭计算机,并且再次开机后不再启动该自动化脚本。

    步骤s302:在目标计算机上执行命令1、命令2和命令4。

    在目标计算机上随机生成定时开机时间参数并写入bios,完成定时开机及启动自动化脚本的准备工作。

    步骤s303:员工下班关机。

    步骤s304:达到开机时间,自动开机。

    步骤s305:启动自动化脚本,自动执行全部维护操作。

    步骤s306:自动关机。

    从计算机集群整体来看,在每一台目标计算机上执行命令1而生成的开机时间参数的集合,因随机性而均匀分布在计划的错峰开机时间段内。

    员工下班关机后,随着时间进入错峰开机时间段,所有目标计算机在各自bios设置的开机时间点依次自动开机,启动自动化脚本,执行自动维护操作。当执行到命令3时,自动关闭定时开机功能。当计算机集群中最后一台关机时,即完成整个错峰开机自动控制和自动化维护操作流程。

    需要说明的是,关机脚本存储在目标计算机,如开启(windows)“关机脚本策略”后,当用户点击“关机”时,操作系统首先执行本地的关机脚本,然后才真正关机(即物理关机)。

    应用实例

    对一个客户端/服务器(client/server,c/s)架构的应用系统进行升级,是企业it维护中很常见的场景。当服务器端从旧版本升级到新版本之后,旧版本客户端因不兼容而无法工作,必须等到客户端也升级到新版本后才能恢复正常。按传统升级方式,无论手工操作还是执行脚本,数千台的计算机集群需要很长的时间周期才能完成升级工作,而大部分计算机在接近整个周期内都无法使用该应用系统,无疑会对企业日常工作带来很大的负面影响,如图7a所示。如果采用本发明所提出的错峰开机自动控制方案,结合执行自动化脚本,可以保证所有客户端与服务器同一天完成同步升级,真正实现业务应用无间断切换,如图7b所示。

    图8是本发明实施例提供的一种计算机集群错峰开机的自动控制系统的示意性结构框图,如图8所示,该系统可应用于计算机集群的每台计算机中,所述系统可以包括:

    命令获取模块10,用于使计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入bios的第二命令;

    参数生成模块20,用于按照每台计算机获取的所述第一命令,生成每台计算机的定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    写入模块30,用于按照每台计算机获取的所述第二命令,将已生成的所述定时开机时间参数写入bios;

    自动开机模块40,用于在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    在实际应用中,计算机集群中的计算机可以在获取网络侧服务器发出的需要进行计算机维护的通知消息后,进行命令获取和执行。计算机集群中的计算机也可以定时或周期性向网络侧服务器发送请求,以查询网络侧服务器是否发出计算机集群维护需求,如果确定网络侧服务器发出计算机集群维护需求,则进行命令获取和执行。

    其中,为实现计算机错峰开机,本实施例利用每台计算机自身系统中具有随机性的信息和具有唯一性的信息中的至少一个,例如系统时间中的整数秒和小数秒,计算机的ip地址和mac地址等,生成定时开机时间参数。此时,参数生成模块20可以具体用于按照所述第一命令,获取自身的系统时间和标识地址中的至少之一,并根据自身的系统时间和标识地址中的至少之一,生成定时开机时间参数。

    本实施例拟在用户不使用计算机的时间段内完成错峰开机,并运行设置在开机启动项中的自动化脚本,自动实现对计算机的维护操作。为实现该目的,所述命令获取模块10还可以用于使计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;所述写入模块30还可以用于按照每台计算机获取的所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    在实际应用中,由于所述写入模块30已将定时开机时间参数写入bios,因此每当到达所述定时开机时间,计算机将自动开机启动。由于在完成计算机维护操作后,计算机集群没有必要再进行自动开机,因此,在完成计算机维护操作后,应当关闭计算机的定时开机功能。为实现该目的,本实施例将用于关闭定时开机功能的第三命令添加至自动化脚本中。具体实现时,所述命令获取模块10可以通过自动化脚本获取其携带的所述第三命令,即所述命令获取模块10从网络侧服务器获取的所述自动化脚本中具有用于关闭定时开机功能的第三命令,或者,在获取并执行第一和第二命令期间,所述命令获取模块10从网络侧服务器获取用于关闭定时开机功能的第三命令,并将从网络侧服务器获取的所述第三命令添加至所述自动化脚本中,这样就可以在执行自动化脚本期间执行该第三命令。具体地说,所述系统的自动开机模块40还可以用于在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作,并在利用自动化脚本实现对计算机的维护操作后,按照所述自动化脚本中的所述第三命令,关闭定时开机功能,以避免每台计算机根据已写入bios的所述定时开机时间参数再次自动执行开机过程,然后在关闭定时开机功能后,删除所述自动化脚本,并执行关机过程。

    在已经具备了可代替人工操作的自动化脚本的基础上,采用本实施例所描述的错峰开机方案,可以使自动化作业更安全高效地完成。

    综上所述,本发明的实施例具有以下技术效果:

    本发明实施例提出的错峰开机自动控制的思路,能够解决计算机集群执行自动化维护时集中开机启动自动化脚本可能带来的网络超载等问题,能够非常简便地实现数千台计算机在一个非工作时间段内,安全高效地完成自动化维护的目标,不仅为大中型企业真正实现it维护自动化找到了切实可行的实践方法,而且可以将任何维护任务的完成周期缩短到当日(夜)完成,为企业it维护工作带来质的飞跃,具有里程碑的意义。

    尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。


    技术特征:

    1.一种计算机集群错峰开机的自动控制方法,其特征在于,所述方法包括:

    计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入bios的第二命令;

    每台计算机按照所述第一命令,生成定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    每台计算机按照所述第二命令,将已生成的所述定时开机时间参数写入bios;

    在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    2.根据权利要求1所述的方法,其特征在于,所述每台计算机按照所述第一命令,生成定时开机时间参数,包括:

    计算机集群中的每台计算机按照所述第一命令,获取自身系统中具有随机性的信息和具有唯一性的信息中的至少之一,并根据自身系统中具有随机性的信息和具有唯一性的信息中的至少之一,生成定时开机时间参数。

    3.根据权利要求1或2所述的方法,其特征在于,计算机集群中的每台计算机在执行关机脚本期间,从网络侧服务器获取所述第一命令和所述第二命令并执行。

    4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

    计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;

    每台计算机按照所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    5.根据权利要求4所述的方法,其特征在于,计算机集群中的每台计算机在执行关机脚本期间,从网络侧服务器获取所述第四命令并执行。

    6.根据权利要求4所述的方法,其特征在于,计算机集群中的每台计算机从网络侧服务器获取的所述自动化脚本中具有用于关闭定时开机功能的第三命令。

    7.根据权利要求4所述的方法,其特征在于,所述方法还包括:

    计算机集群中的每台计算机从网络侧服务器获取用于关闭定时开机功能的第三命令;

    每台计算机将从网络侧服务器获取的所述第三命令添加至所述自动化脚本中。

    8.根据权利要求6或7所述的方法,其特征在于,在实现对计算机的维护操作后,所述方法还包括:

    计算机集群中的每台计算机按照所述自动化脚本中的所述第三命令,关闭定时开机功能,以避免每台计算机根据已写入bios的所述定时开机时间参数再次自动执行开机过程;

    每台计算机在关闭定时开机功能后,删除所述自动化脚本,并执行关机过程。

    9.一种计算机集群错峰开机的自动控制系统,其特征在于,所述系统包括:

    命令获取模块,用于使计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入bios的第二命令;

    参数生成模块,用于按照每台计算机获取的所述第一命令,生成每台计算机的定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;

    写入模块,用于按照每台计算机获取的所述第二命令,将已生成的所述定时开机时间参数写入bios;

    自动开机模块,用于在每台计算机关机后,当根据已写入bios的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。

    10.根据权利要求9所述的系统,其特征在于,

    所述命令获取模块还用于使计算机集群中的每台计算机从网络侧服务器获取用于对计算机进行维护操作的自动化脚本以及用于将所述自动化脚本写入开机启动项的第四命令;

    所述写入模块还用于按照每台计算机获取的所述第四命令,将所述自动化脚本写入开机启动项中,以便在自动执行开机过程中,执行已写入开机启动项的自动化脚本,实现对计算机的维护操作。

    技术总结
    本发明公开了一种计算机集群错峰开机的自动控制方法及系统,所述方法包括:计算机集群中的每台计算机从网络侧服务器获取用于生成定时开机时间参数的第一命令和用于将定时开机时间参数写入BIOS的第二命令;每台计算机按照所述第一命令,生成定时开机时间参数,使计算机集群的所有计算机下一次定时开机时间在预设时段内均匀分布;每台计算机按照所述第二命令,将已生成的所述定时开机时间参数写入BIOS;在每台计算机关机后,当根据已写入BIOS的所述定时开机时间参数确定已达到下一次定时开机时间时,自动执行开机过程,以便计算机集群的所有计算机错峰开机。本发明通过使所有计算机错峰开机,保证计算机维护操作快速、有效、有序地完成。

    技术研发人员:赵伟
    受保护的技术使用者:赵伟
    技术研发日:2019.09.12
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-22985.html

    最新回复(0)