本说明书实施例涉及系统运维,尤其是一种自动化调度进程重启与验证方法、装置、设备及存储介质。
背景技术:
1、entegor是一种自动化调度进程系统,包括entegor服务端、entegor客户端、entegor控制台。通过在entegor控制台提前编排特定的执行场景,发起场景后,entegor服务端就可以将编排好的场景发送至entegor客户端执行,entegor客户端会将该场景的执行状态、执行结果(成功还是失败)根据实际情况回传entegor服务端并展示在entegor控制台,供操作人员参考。entegor通过执行相关脚本或命令能够让系统代替人或辅助人去完成生产和管理活动中的特定任务,以达到减少人的体力和脑力劳动,提高工作效率、效益和效果的目的。企业通过运维工作的自动化和智能化,不仅可以实现大规模服务器的全面管理、配置处置和管理优化,还可以节省人力成本,降低人为操作的风险。然而,部分情况下自动化调度进程由于长时间运行可能出现异常,因此,需要对自动化调度进程进行重启以保证entegor进程的正常运行。
2、目前针对entegor进程的重启方法包括:通过在服务器上配置每小时一次的定时任务以重启entegor进程,在特定时间点前直接结束entegor进程,等待定时任务将其启动。该种重启方法仅限于特定的时间点执行,存在时效性差问题。此外,使用此方法直接结束entegor进程时,当次entegor任务进程执行结果不能正常返回,会导致其监测的任务进程状态一直显示为“运行中”,此时需要运维人员在控制台对任务进程做额外操作,导致人力、时间成本增加,当任务量过大时会影响业务执行效率。
3、此外,现有技术缺乏对entegor进程的重启结果进行自动验证的方法,仅通过人工进行验证的方式存在效率低的问题。
4、因此,亟需一种自动化调度进程重启与验证方法能及时对entegor进程进行自动重启和验证,减少人工干预。
技术实现思路
1、针对现有技术的上述问题,本说明书实施例的目的在于,提供一种自动化调度进程重启与验证方法、装置、设备及存储介质,以解决现有技术中难以及时对entegor进程进行自动重启和验证,人工干预导致效率低的问题。
2、为了解决上述技术问题,本说明书实施例的具体技术方案如下:
3、一方面,本说明书实施例提供一种自动化调度进程重启与验证方法,所述方法包括:
4、判断entegor进程是否满足重启条件;
5、若是,则接收entegor服务端发送的脚本文件和所述脚本文件中命令的执行顺序,其中所述脚本文件包含常规命令、异步执行命令和验证命令,所述异步执行命令包括entegor进程自动结束命令和entegor进程自动重启命令;
6、获取所述脚本文件的执行次数;
7、若所述执行次数为奇数,则将当前entegor进程的标识符记录为第一进程标识符,根据所述执行顺序执行所述脚本文件中的常规命令和异步执行命令,当执行到所述异步执行命令时,将所述异步执行命令发送到entegor客户端并行执行,所述entegor客户端执行结束后返回第二进程标识符至entegor服务端;
8、若所述执行次数为偶数,则执行所述脚本文件中的验证命令,根据所述第一进程标识符和第二进程标识符对entegor进程重启结果进行验证。
9、进一步地,所述entegor进程自动结束命令用于在第一预设延迟时间到达后结束所述entegor进程,所述entegor进程自动重启命令用于在第二预设延迟时间到达后重启所述entegor进程,所述第二预设延迟时间大于所述第一预设延迟时间。
10、进一步地,所述第一预设延迟时间和第二预设延迟时间根据所述脚本文件中异步执行命令后其他命令的总体运行时长确定。
11、进一步地,所述判断entegor进程是否满足重启条件,包括:
12、判断entegor进程运行时长是否达到预设值,若是,则满足重启条件;或
13、判断entegor进程运行是否存在异常,若是,则满足重启条件;或
14、判断entegor进程的配置参数是否更新,若是,则满足重启条件。
15、进一步地,所述根据所述第一进程标识符和第二进程标识符对entegor进程重启结果进行验证,包括:
16、若所述第一进程标识符和第二进程标识符不一致,则entegor进程重启成功;
17、若所述第一进程标识符和第二进程标识符一致,则entegor进程重启失败。
18、进一步地,所述方法还包括:
19、若所述第一进程标识符和第二进程标识符一致,则发送脚本文件运行异常报警信息至entegor控制台。
20、另一方面,本说明书实施例提供了一种自动化调度进程重启与验证装置,所述装置包括:
21、判断模块,用于判断entegor进程是否满足重启条件;
22、脚本接收模块,用于若是,则接收entegor服务端发送的脚本文件和所述脚本文件中命令的执行顺序,其中所述脚本文件包含常规命令、异步执行命令和验证命令,所述异步执行命令包括entegor进程自动结束命令和entegor进程自动重启命令;
23、获取模块,用于获取所述脚本文件的执行次数;
24、entegor进程重启模块,用于若所述执行次数为奇数,则将当前entegor进程的标识符记录为第一进程标识符,根据所述执行顺序执行所述脚本文件中的常规命令和异步执行命令,当执行到所述异步执行命令时,将所述异步执行命令发送到entegor客户端并行执行,所述entegor客户端执行结束后返回第二进程标识符至entegor服务端;
25、entegor进程重启验证模块,用于若所述执行次数为偶数,则执行所述脚本文件中的验证命令,根据所述第一进程标识符和第二进程标识符对entegor进程重启结果进行验证。
26、又一方面,本说明书实施例还提供了一种计算机设备,包括存储器、处理器、以及存储在所述存储器上的计算机程序,所述计算机程序被所述处理器运行时,执行上述任意一项所述方法的指令。
27、又一方面,本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被计算机设备的处理器运行时,执行上述任意一项所述方法的指令。
28、又一方面,本说明书实施例还提供了一种计算机程序产品,所述计算机程序产品被计算机设备的处理器运行时,执行上述任意一项所述方法的指令。
29、采用上述技术方案,本说明书实施例提供的自动化调度进程重启与验证方法,在判断entegor进程需要进行重启时,接收entegor服务端发送的脚本文件和脚本文件中命令的执行顺序,并获取脚本文件的执行次数,当执行次数为奇数时,将当前entegor进程的标识符记录为第一进程标识符,根据执行顺序执行脚本文件中的常规命令和异步执行命令,当执行到异步执行命令时,将异步执行命令发送到entegor客户端并行执行,entegor客户端执行结束后返回第二进程标识符至entegor服务端,当执行次数为偶数时,执行脚本文件中的验证命令,根据第一进程标识符和第二进程标识符对entegor进程重启结果进行验证。由此,通过异步执行命令能够实现在entegor进程需要重启时及时对entegor进程进行自动重启,从而使entegor进程监测的任务进程在entegor进程重启后能够正常返回执行结果,无需运维人员在控制台做额外操作,减少人工干预,此外,通过验证命令对重启后的entegor进程进行自动验证,相比于通过人工进行验证的方法,验证效率高。
30、上述说明仅是本说明书的一些实施例技术方案的概述,为了能够更清楚了解本说明书的一些实施例的技术手段,而可依照说明书的内容予以实施,并且为让本说明书实施例的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。