一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

系统的运维方法、装置及服务器与流程

2022-03-23 07:09:26 来源:中国专利 TAG:


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.本技术实施例提供的系统的运维方法、装置及服务器,运维服务器可以向不同的代理服务器发送脚本配置指令,代理服务器在接收到脚本配置指令后,可以根据脚本配置指令生成携带有运维脚本的运维指令,并发送给待运维服务器,无需考虑不同系统类型的待运维服务器配置定时运维任务的差异性,待运维服务器能够根据运维指令自动完成运维处理,实现了对待运维服务器的批量处理,提高了运维处理的效率,消除了平台依赖性。进一步的,代理服务器可以根据运维服务器发送的脚本配置指令,生成携带有复杂的运维脚本运维指令,而现有技术中,待运维服务器自带的定时任务只支持简单的操作命令,无法满足有前后依赖关系的复杂场景,本方案进一步的提高了运维处理的多样性。
附图说明
78.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
79.图1为本技术实施例提供的系统的运维方法的一种应用场景示意图;
80.图2为本技术实施例提供的自动化运维平台的一种系统结构示意图;
81.图3为本技术实施例提供的系统的运维方法实施例一的流程示意图;
82.图4为本技术实施例提供的系统的运维方法实施例二的流程示意图;
83.图5为本技术实施例提供的系统的运维方法实施例三的流程示意图;
84.图6为本技术实施例提供的系统的运维方法实施例四的流程示意图;
85.图7为本技术实施例提供的系统的运维装置实施例一的结构示意图;
86.图8为本技术实施例提供的系统的运维装置实施例二的结构示意图;
87.图9为本技术实施例提供的服务器的结构示意图。
88.通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
89.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
90.在介绍本技术的实施例之前,首先对本技术实施例的应用背景进行解释:
91.对于现代企业的业务系统来说,经常需要在某个时间点进行系统运维场景,比如进行机器启停和系统验证等。目前,对业务系统进行运维处理主要有以下两种方式:
92.1),运维人员需要在指定时间到机房中对业务系统进行运维处理,然而若该指定时间为节假日或者夜晚,会影响运维人员的休息时间,人工和时间成本高,处理效率低。
93.2),运维人员登录到待维护的业务系统中,调用该待维护的业务系统中自带的定
时任务工具(如unix系统平台的crontab,windows系统平台的任务计划程序),配置运维处理需要执行的定时运维任务,以使在设定的时间对待维护的业务系统进行运维处理。
94.然而,在上述方法中,在对多个待维护的业务系统进行运维时,需要登录到每个待维护的业务系统中,根据每个业务系统的类型逐一配置定时运维任务,操作难度大,可能存在运维处理的效率较低的问题。
95.针对上述问题,本技术的发明构思如下:由于人工对待维护的业务系统配置定时运维任务需要较长的时间,操作难度较大,无法保证运维处理的效率。基于此,发明人发现,若能在待运维系统安装对应的代理应用程序,运维服务器根据待运维系统需要进行运维处理的时间,定时生成脚本配置指令,并发送给该待运维系统安装的代理对应的代理服务器,该代理服务器根据脚本配置指令生成对应的脚本发送给待运维系统,以使该待运维系统自动执行该脚本,从而完成对该待运维系统的运维处理,就能解决现有技术中运维处理的效率较低的问题。
96.示例性的,本技术实施例提供的系统的运维方法可以应用于图1所示的一种应用场景示意图中。图1为本技术实施例提供的系统的运维方法的一种应用场景示意图,用以解决上述技术问题。如图1所示,该应用场景可以包括:运维服务器11,代理服务器12和待运维服务器13,还可以包括与代理服务器12连接的数据存储设备14。
97.可选的,运维服务器11可以通过运行浏览器或者客户端为用户提供图形用户界面,以使用户可以对图形用户界面进行点击操作。运维服务器11响应于用户对于图形用户界面的点击操作,获取用户输入的运维信息,并根据该运维信息向代理服务器12发送脚本配置指令。
98.可选的,代理服务器12可以预先从网络中获取多个运维脚本并进行存储,可以预先从数据存储设备14中获取多个运维脚本并进行存储,还可以接收用户预先输入的多个运维脚本并进行存储。代理服务器12在获取脚本配置指令后,对存储的多个运维脚本进行处理,获取目标运维脚本,并将该目标运维脚本发送至待运维服务器13,以使待运维服务器13能够执行该目标运维脚本,对其进行运维处理。
99.代理服务器12与待运维服务器13可以是独立的不同的物理设备,也可以是将代理服务器12的功能与待运维服务器13的功能集成在同一个物理设备上,还可以是一个物理设备上集成了部分代理服务器12的功能和部分的待运维服务器13的功能。
100.需要说明的是,附图1仅是本技术实施例提供的一种应用场景的示意图,本技术实施例不对图1中包括的设备进行限定,也不对图1中设备之间的位置关系进行限定,例如,在图1中,数据存储设备14相对代理服务器12可以是外部存储器,在其它情况下,也可以将数据存储设备14置于代理服务器12中。
101.示例性的,本技术实施例提供的系统的运维方法可以应用于自动化运维平台。图2为本技术实施例提供的自动化运维平台的一种系统结构示意图。如图2所示,该系统结构可以包括:系统接入层、代理层、数据层、业务逻辑层以及展现层。
102.其中,自动化运维是指通过运维工具和平台,实现互联网技术(internet technology,it)基础服务设施及业务应用的日常任务处理和运维流程的自动化,从而提升效率和降低风险,促进待运维服务器的成熟和各种能力的升级。
103.系统接入层用于存储应用程序和应用数据库,是所有接入到自动化运维平台的待
运维服务器的基础信息。
104.代理层用于存储待运维服务器的标识与代理服务器的标识之间的映射关系。
105.数据层用于存储运维操作定义、运维操作实例化,场景编排,是各待运维服务器可执行操作的操作信息,其中,场景编排是指将多个运维操作按照一定顺序和触发条件组织成复杂任务。
106.业务逻辑层用于存储基础运维操作和场景的执行内部逻辑。
107.其中,基础运维操作包括运维操作定义、运维操作实现和接口三个部分。运维操作定义是对运维操作类型、运维操作名称、运维操作参数、运维操作权限的定义,示例性的,目前支持的运维操作有系统停止、系统启动、执行脚本、文件查看、模拟交易、健康检查、验证网络等。运维操作实现支持运维操作的执行以及返回查看,接口提供其他系统调用基础服务的接口服务。
108.其中,场景包含场景编排、场景执行和场景接口三个部分。场景编排是将多个基础运维操作按照一定的逻辑顺序编排在一起,通过go(也可以称为:golang)语言,将场景以图表的形式保存,并记录下图表中每个节点的前后依赖关系。场景执行是按照节点的依赖关系,进行广度优先遍历,实现对各个节点的执行,场景接口提供其他系统调用场景的接口服务。
109.展现层用于对执行结果和执行日志进行展示。
110.可选的,该自动化运维平台对应于运维服务器。
111.下面,通过具体实施例对本技术的技术方案进行详细说明。
112.需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
113.图3为本技术实施例提供的系统的运维方法实施例一的流程示意图。如图3所示,该系统的运维方法可以包括如下步骤:
114.s31、根据用户输入的运维信息,生成定时任务,并将定时任务的初始状态设置为待实施。
115.其中,运维信息包括目标待运维服务器的标识,运维场景,运维参数及时间范围,运维场景包括至少一个运维操作。
116.在一种可能的实现方式中,运维服务器通过运行软件或者浏览器等方式在屏幕上显示图形用户界面,便于用户通过操作图形用户界面与运维服务器进行交互。运维服务器通过响应用户对图形用户界面的点击操作,获取用户输入的运维信息。
117.示例性的,用户可以点击图形用户界面上的运维操作对应的下拉框,点击选取至少一个运维操作,之后,对至少一个运维操作进行拖拽操作,调整各运维操作间的顺序,或,选中运维操作后点击上移控件或下移控件,调整各运维操作间的顺序。进一步的,用户还可以点击待运维服务器的标识对应的下拉框,选取目标待运维服务器的标识,点击起始时间对应的下拉框和终止时间对应的下拉框,分别选取起始时间和终止时间,最后点击完成控件。运维服务器通过响应用户对完成控件的点击操作,获取用户输入的运维信息。
118.在另一种可能的实现方式中,运维服务器通过接收用户发送的语音指令,获取用户输入的运维信息。
119.进一步的,运维服务器根据运维信息中携带的时间范围,生成定时任务,该定时任
务包括运维信息中携带的时间范围。
120.s32、根据定时任务,在当前时刻进入时间范围且定时任务的状态为待实施时,根据运维信息生成第一脚本配置指令,并将定时任务的状态更改为正在实施。
121.其中,第一脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数。
122.在一种具体的实施方式中,运维服务器基于quartz定时任务调度框架,每隔预设时间间隔获取状态为待实施的定时任务,将当前时刻与该定时任务时间的范围进行对比,如果当前时刻处于该时间范围内,则生成第一脚本配置指令,并将定时任务的状态更改为正在实施,若当前时刻不处于该时间范围内,则不进行任何操作。
123.其中,quartz是完全由java编写的开源作业调度框架,作业调度指的是在某一时刻或者时间间隔去执行某个代码。
124.示例性的,预设时间间隔可以是1分钟,还可以为2分钟,3分钟,可以根据运维服务器的实际性能进行设定,本技术实施例对此不进行具体限定。
125.s33、根据目标待运维服务器的标识以及预先获取的待运维服务器的标识与代理服务器的标识之间的映射关系,确定目标待运维服务器的标识对应的目标代理服务器的标识。
126.可选的,上述待运维服务器的标识与代理服务器的标识之间的映射关系可以是运维人员预先存储在自动化运维平台代理层中的。示例性的,运维人员可以通过用于接收上述映射关系的终端设备,将上述映射关系存储至运维服务器。
127.示例性的,上述待运维服务器的标识与代理服务器的标识之间的映射关系可以如下表1所示:
128.表1
129.待运维服务器的标识代理服务器的标识待运维服务器a代理服务器a待运维服务器b代理服务器b待运维服务器c代理服务器c
130.以表1所示的映射关系为例,若目标待运维服务器的标识为待运维服务器b,则根据该映射关系,该目标待运维服务器的标识对应的代理服务器的标识为代理服务器b。
131.s34、将第一脚本配置指令发送至目标代理服务器的标识对应的目标代理服务器。
132.在一种可能的实现方式中,运维服务器调用代理总控服务,通过套接字(英文:socket)方式将第一脚本配置指令发送至目标代理服务器的标识对应的目标代理服务器。
133.相应的,对于代理服务器来说,则接收运维服务器发送的第一脚本配置指令。
134.s35、根据第一脚本配置指令,从预先存储的多个运维脚本中,获取运维场景对应的至少一个第一运维脚本。
135.其中,运维脚本可以是预先从网络中获取的,可以是运维人员预先输入的,还可以是预先从数据存储设备中获取的,可以根据实际情况进行限定,本技术实施例对此不进行具体限制。
136.在一种具体的实现方式中,根据第一脚本配置指令中的运维场景的各运维操作,从多个运维脚本中获取至少一个第一运维脚本。
137.其中,运维操作与第一运维脚本可以为一一对应关系,还可以是一个运维操作对
应于多个第一运维脚本,本技术实施例对此不进行具体限制。
138.应理解,不同的代理服务器,预先存储的运维脚本类型不同。示例性的,假设运维场景为检查网络服务,linux代理服务器中存储的运维脚本类型为shell脚本,windows代理服务器中存储的运维脚本类型为bat脚本。
139.可选的,代理服务器可以多线程处理任务,也就是说代理服务器可以同时接收多个脚本配置指令,分别为该多个脚本配置指令分配不同的线程,以使代理服务器同时对多个脚本配置指令进行处理。
140.s36、根据运维场景和运维参数对至少一个第一运维脚本进行配置,生成第二运维脚本。
141.在一种具体的实现方式中,将运维参数写入至少一个第一运维脚本中,获取至少一个写入运维参数后的第一运维脚本,之后根据运维场景中各运维操作的执行顺序,将至少一个写入运维参数后的第一运维脚本进行拼接,生成第二运维脚本。
142.其中,第一运维脚本中的各运维参数既可以为空,代理服务器将运维参数写入第一运维脚本对应的空白位置;第一运维脚本中各运维参数还可以为预设的初始值,代理服务器将运维参数写入第一运维脚本的对应位置,覆盖掉第一运维脚本中的初始值。
143.s37、向目标待运维服务器发送第一运维指令。
144.其中,第一运维指令携带有第二运维脚本。
145.上述实施例提供的系统的运维方法,运维服务器可以向不同的代理服务器发送脚本配置指令,代理服务器在接收到脚本配置指令后,可以根据脚本配置指令生成携带有运维脚本的运维指令,并发送给待运维服务器,无需考虑不同系统类型的待运维服务器配置定时运维任务的差异性,待运维服务器能够根据运维指令自动完成运维处理,实现了对待运维服务器的批量处理,提高了运维处理的效率,消除了平台依赖性。进一步的,代理服务器可以根据运维服务器发送的脚本配置指令,生成携带有复杂的运维脚本运维指令,而现有技术中,待运维服务器自带的定时任务只支持简单的操作命令,无法满足有前后依赖关系的复杂场景,本方案进一步的提高了运维处理的多样性。
146.图4为本技术实施例提供的系统的运维方法实施例二的流程示意图。如图4所示,针对于代理服务器,基于上述任一实施例,在s37之后,该系统的运维方法可以包括如下步骤:
147.对于待运维服务器来说,待运维服务器接收代理服务器发送的第一运维指令,执行该第一运维指令,并在执行过程中生成执行结果和执行日志。在待运维服务器执行完第一运维指令后,通过预先安装的代理应用程序将该执行结果和执行日志发送给代理服务器。
148.其中,执行结果包括执行成功和执行失败。
149.s41、接收目标待运维服务器发送的执行结果和执行日志;
150.s42、将执行结果和执行日志发送给运维服务器。
151.在一种可能的实现方式中,代理服务器通过socket方式将执行结果和执行日志发送给运维服务器。
152.相应的,对于运维服务器来说,则接收代理服务器发送的执行结果和执行日志。
153.s43、将执行结果和执行日志发送至预先配置的用于接收运维结果的终端设备。
154.其中,用于接收运维结果的终端设备可以为用户的终端设备,如运维人员的手机或电脑,还可以为预先设置的其他终端设备,如运维部门中其他工作人员的终端设备或者是该企业其他部门成员的终端设备。
155.可选的,用户输入的运维信息可以携带有终端设备的标识,以使将执行结果和执行日志发送至该标识对应的终端设备。
156.示例性的,运维服务器通过向终端设备发送短信或邮件的方式,向终端设备发送执行结果和执行日志,还可以通过应用程序(如微信)向终端设备发送执行结果和执行日志。
157.可选的,在一些实施例中,运维服务器还可以通过自身的或者外接的显示设备对执行结果和执行日志进行显示,如可以通过图形用户界面对执行结果和执行日志进行显示。
158.上述实施例提供的系统的运维方法,通过将待运维服务器执行第一运维指令的执行结果和执行流水发送给预先配置的终端设备,以使运维人员或其他工作人员能够及时获知执行结果,在执行失败时可以及时进行后续的修复操作,避免执行失败导致待维护系统某些功能未工作而引起的生产风险。
159.可选的,定时任务还包括循环周期,循环状态,执行间隔以及指示信息,指示信息用于指示在执行失败后是否再次生成指令。
160.图5为本技术实施例提供的系统的运维方法实施例三的流程示意图。如图5所示,在定时任务包括循环周期,循环状态,执行间隔以及指示信息时,在运维服务器接收代理服务器发送的执行结果和执行日志之后,该系统的运维方法可以包括如下步骤:
161.s51、在执行结果为执行失败,循环状态为不循环,指示信息指示在执行失败后再次生成指令时,根据执行间隔和运维信息,生成第二脚本配置指令。
162.其中,第二脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数。
163.可选的,假设执行间隔为10分钟,则在执行结果为执行失败,循环状态为不循环,指示信息指示在执行失败后再次生成指令时,启动计时器开始计时,在计时得到的累计时长达到10分钟时,根据运维信息生成第二脚本配置指令。
164.s52、将第二脚本配置指令发送至目标代理服务器。
165.相应的,针对于代理服务器来说,则接收运维服务器发送的第二脚本配置指令。
166.s53、根据第二脚本配置指令,获取预先存储的第二运维脚本。
167.其中,根据第二脚本配置指令中的运维场景及运维参数,获取预先存储的与运维场景及运维参数对应的第二运维脚本。
168.s54、根据目标待运维服务器的标识,向目标待运维服务器发送第二运维指令,第二运维指令携带有第二运维脚本。
169.图6为本技术实施例提供的系统的运维方法实施例四的流程示意图。如图6所示,在定时任务包括循环周期,循环状态,执行间隔以及指示信息时,在运维服务器接收代理服务器发送的执行结果和执行日志之后,该系统的运维方法可以包括如下步骤:
170.s61、在执行结果为执行失败,循环状态为循环,指示信息指示在执行失败后再次生成指令时,根据循环周期和运维信息,生成第三脚本配置指令。
171.其中,第三脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数。
172.可选的,假设循环周期为10分钟,则在执行结果为执行失败,循环状态为循环,指示信息指示在执行失败后再次生成指令时,启动计时器开始计时,在计时得到的累计时长达到10分钟时,根据运维信息生成第三脚本配置指令。
173.s62、将第三脚本配置指令发送至目标代理服务器。
174.相应的,针对于代理服务器来说,则接收运维服务器发送的第三脚本配置指令,第三脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数。
175.s63、根据第三脚本配置指令,获取预先存储的第二运维脚本。
176.其中,根据第三脚本配置指令中的运维场景及运维参数,获取预先存储的与运维场景及运维参数对应的第二运维脚本。
177.s64、根据目标待运维服务器的标识,向目标待运维服务器发送第三运维指令,第三运维指令携带有第二运维脚本。
178.可选的,在接收目标代理服务器返回的执行结果和执行日志之后,在执行结果为执行成功,且循环状态为不循环时,运维服务器将定时任务的状态由正在实施更改为已实施。
179.可选的,在接收目标代理服务器返回的执行结果和执行日志之后,在执行结果为执行失败,循环状态为不循环,指示信息指示在执行失败后不再生成指令时,将定时任务的状态由正在实施更改为已实施。
180.在上述实施例中,在执行结果为失败时,运维服务器可以根据运维信息中的指示信息判断是否再次生成指令,降低了需要运维人员再次人工设置的人工成本和时间成本,进一步提高了运维处理的效率和自动化水平。
181.下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
182.图7为本技术实施例提供的系统的运维装置实施例一的结构示意图。如图7所示,该系统的运维装置,包括:
183.生成模块71,用于根据用户输入的运维信息,生成定时任务,并将定时任务的初始状态设置为待实施,运维信息包括目标待运维服务器的标识,运维场景,运维参数及时间范围,运维场景包括至少一个运维操作,定时任务包括时间范围;
184.生成模块71,还用于根据定时任务,在当前时刻进入时间范围且定时任务的状态为待实施时,根据运维信息生成第一脚本配置指令,并将定时任务的状态更改为正在实施,第一脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数;
185.确定模块72,用于根据目标待运维服务器的标识以及预先获取的待运维服务器的标识与代理服务器的标识之间的映射关系,确定目标待运维服务器的标识对应的目标代理服务器的标识;
186.发送模块73,用于将第一脚本配置指令发送至目标代理服务器的标识对应的目标代理服务器。
187.在本技术实施例的一种可能设计中,装置还包括:
188.接收模块,用于接收目标代理服务器返回的执行结果和执行日志;
189.发送模块73,还用于将执行结果和执行日志发送至预先配置的用于接收运维结果的终端设备。
190.可选的,定时任务还包括循环周期,循环状态,执行间隔以及指示信息,指示信息用于指示在执行失败后是否再次生成指令,生成模块71,用于在执行结果为执行失败,循环状态为不循环,指示信息指示在执行失败后再次生成指令时,根据执行间隔和运维信息,生成第二脚本配置指令,第二脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数;
191.发送模块73,用于将第二脚本配置指令发送至目标代理服务器;
192.或者;
193.生成模块71,用于在执行结果为执行失败,循环状态为循环,指示信息指示在执行失败后再次生成指令时,根据循环周期和运维信息,生成第三脚本配置指令,第三脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数;
194.发送模块73,用于将第三脚本配置指令发送至目标代理服务器。
195.可选的,在将第一脚本配置指令发送至目标待运维服务器对应的目标代理服务器之后,装置包括:
196.更改模块,用于在执行结果为执行成功,且循环状态为不循环时,将定时任务的状态由正在实施更改为已实施;
197.或者;
198.在执行结果为执行失败,循环状态为不循环,指示信息指示在执行失败后不再生成指令时,将定时任务的状态由正在实施更改为已实施。
199.本技术实施例提供的系统的运维装置,可用于执行上述任一实施例中的系统的运维装置,其实现原理和技术效果类似,在此不再赘述。
200.图8为本技术实施例提供的系统的运维装置实施例二的结构示意图。如图8所示,该系统的运维装置,包括:
201.接收模块81,用于接收运维服务器发送的第一脚本配置指令,第一脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数,运维场景包括至少一个运维操作;
202.获取模块82,用于根据第一脚本配置指令,从预先存储的多个运维脚本中,获取运维场景对应的至少一个第一运维脚本;
203.生成模块83,用于根据运维场景和运维参数对至少一个第一运维脚本进行配置,生成第二运维脚本;
204.发送模块84,用于向目标待运维服务器发送第一运维指令,第一运维指令携带有第二运维脚本。
205.在本技术实施例的一种可能设计中,生成模块83,具体用于:
206.将运维参数写入至至少一个第一运维脚本中,获取至少一个写入运维参数后的第一运维脚本;
207.根据运维场景中各运维操作的执行顺序,将至少一个写入运维参数后的第一运维脚本进行拼接,生成第二运维脚本。
208.在本技术实施例的另一种可能设计中,接收模块81,还用于接收目标待运维服务器发送的执行结果和执行日志;
209.发送模块84,还用于将执行结果和执行日志发送给运维服务器。
210.在本技术实施例的再一种可能设计中,在向目标待运维服务器发送第一运维指令
之后,接收模块81,还用于接收运维服务器发送的第二脚本配置指令,第二脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数;
211.获取模块82,还用于根据第二脚本配置指令,获取预先存储的第二运维脚本;
212.发送模块84,还用于根据目标待运维服务器的标识,向目标待运维服务器发送第二运维指令,第二运维指令携带有第二运维脚本;
213.或者;
214.接收模块81,还用于接收运维服务器发送的第三脚本配置指令,第三脚本配置指令包括目标待运维服务器的标识,运维场景及运维参数;
215.获取模块82,还用于根据第三脚本配置指令,获取预先存储的第二运维脚本;
216.发送模块84,还用于根据目标待运维服务器的标识,向目标待运维服务器发送第三运维指令,第三运维指令携带有第二运维脚本。
217.本技术实施例提供的系统的运维装置,可用于执行上述任一实施例中的系统的运维装置,其实现原理和技术效果类似,在此不再赘述。
218.需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。此外,这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
219.图9为本技术实施例提供的服务器的结构示意图。如图9所示,该服务器可以包括:处理器91、存储器92及存储在所述存储器92上并可在处理器91上运行的计算机程序指令,所述处理器91执行所述计算机程序指令时实现前述任一实施例提供的系统的运维方法。
220.可选的,该服务器的上述各个器件之间可以通过系统总线连接。
221.存储器92可以是单独的存储单元,也可以是集成在处理器中的存储单元。处理器的数量为一个或者多个。
222.可选的,服务器还可以包括与其他设备进行交互的接口。
223.可选的,服务器还可以包括收发器,收发器用于和其他计算机进行通信,该收发器构成通信接口。
224.可选的,在硬件实现上,上述图7所示实施例中的发送模块73和接收模块,或,上述图8所示实施例中的接收模块81和发送模块84对应于本实施例中的收发器。
225.应理解,处理器91可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
226.系统总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但
并不表示仅有一根总线或一种类型的总线。存储器可能包括随机存取存储器(random access memory,ram),也可能还包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。
227.实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(read-only memory,rom)、ram、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
228.本技术实施例提供的服务器,可用于执行上述任一方法实施例提供的系统的运维方法,其实现原理和技术效果类似,在此不再赘述。
229.本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行上述系统的运维方法。
230.上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器,电可擦除可编程只读存储器,可擦除可编程只读存储器,可编程只读存储器,只读存储器,磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
231.可选的,将可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(application specific integrated circuits,asic)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
232.本技术实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,至少一个处理器可以从该计算机可读存储介质中读取该计算机程序,所述至少一个处理器执行所述计算机程序时可实现上述系统的运维方法。
233.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献