设备监控项的管理方法、待升级设备及监控服务器与流程

文档序号:31715794发布日期:2022-10-04 21:47阅读:48来源:国知局
设备监控项的管理方法、待升级设备及监控服务器与流程

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.图1为一个实施例中设备监控项的管理方法的应用场景示意图;
64.图2为一个实施例中设备监控项的管理方法应用于待升级设备的流程示意图;
65.图3为另一个实施例中设备监控项的管理方法应用于监控服务器的流程示意图;
66.图4为一个实施例中待升级设备的结构示意图;
67.图5为一个实施例中监控服务器的结构示意图;
68.图6为本公开实施例所述的电子设备的结构示意图。
具体实施方式
69.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
70.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
71.本公开的说明书和权利要求书中的术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
72.在本公开实施例中,“示例性的”或者“例如”等词是用于表示作例子、例证或说明。本公开实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本公开实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
73.本公开提供一种设备监控项的管理方法,可以应用于如图1所示的应用环境中。图1为一个实施例中设备监控项的管理方法的应用场景图;该应用环境包括至少一个待升级设备(图1中以3个待升级设备为例示出,3个待升级设备分别为待升级设备11、待升级设备12、待升级设备13)和监控服务器14。其中,待升级设备与监控服务器通过网络进行通信。以待升级设备11为例对设备监控项的管理方法进行说明,具体的,待升级设备11向监控服务器14发送第一消息;第一消息携带有待升级设备的标识信息,用于请求获取插件升级包集合中所述待升级设备的最新版本号;插件升级包集合由至少一种待升级设备类型的插件升级包组成;接收监控服务器14发送的第二消息;第二消息携带有待升级设备的最新版本号;若第一插件升级包的版本号低于待升级设备的最新版本号,则向监控服务器发送第一请求消息;第一请求消息用于请求对所述第一插件升级包进行升级;第一插件升级包为待升级设备的本地插件升级包;接收所述监控服务器发送的第二插件升级包;第二插件升级包为待升级设备的最新插件升级包;第二插件升级包包含的监控项采集插件的数量大于第一插件升级包包含的监控项采集插件的数量;根据第二插件升级包对待升级设备进行升级。其中,待升级的被监控设备可以但不限于是防火墙设备、入侵检测系统、入侵防御系统、漏洞扫描器等各种网络安全设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
74.在一些实施例中,如图2所示,提供一种设备监控项的管理方法,在本实施例中,主要以该方法应用于待升级的被监控设备来举例说明,包括如下步骤:
75.s21、向监控服务器发送第一消息。
76.其中,第一消息携带有待升级设备的标识信息,用于请求获取插件升级包集合中待升级设备的最新版本号;插件升级包集合由至少一种待升级设备类型的插件升级包组
成。
77.可选的,插件升级包集合中的每个插件升级包均为进行加壳处理后的插件升级包。
78.加壳,可以理解为将一个可执行文件作为输入,输出一个新的可执行文件,被加壳的可执行文件经过压缩、加密或者其他转换,目的使被加壳的可执行文件难以被识别,难以被逆向工程分析。
79.具体的,对每个插件升级包进行加壳处理的目的是:阻碍对已加壳插件升级包的探测和分析,防止恶意插件的执行。
80.示例性的,监控服务器存储有插件升级包集合,插件升级包集合由各种架构类型的被监控设备对应的插件升级包组成。例如,被监控设备的架构类型可以是x86架构(the x86 architecture)、arm架构(advanced risc machines)等等,不同架构类型对应的插件升级包不同。
81.s22、接收监控服务器发送的第二消息。
82.其中,第二消息携带有所述待升级设备的最新版本号。
83.示例性的,当待升级设备向监控服务器发送请求消息后,监控服务器从插件升级包集合中挑选与被监控设备的设备架构、设备类型匹配的最新插件升级包,并将最新插件升级包的版本号发送给被监控设备,被监控设备接收到待升级设备的最新版本号。
84.s23、若第一插件升级包的版本号低于所述待升级设备的最新版本号,则向所述监控服务器发送第一请求消息。
85.其中,第一请求消息用于请求对第一插件升级包进行升级;第一插件升级包为待升级设备的本地插件升级包。
86.示例性的,若待升级设备的本地插件升级包的版本号为v1.0,最新版本号为v2.0,则待升级设备向监控服务器发送升级请求。
87.s24、接收所述监控服务器发送的第二插件升级包。
88.其中,第二插件升级包为待升级设备的最新插件升级包;第二插件升级包包含的监控项采集插件的数量大于第一插件升级包包含的监控项采集插件的数量。
89.示例性的,监控服务器接收到待升级设备发送的升级请求之后,将最新插件升级包发送到待升级设备,例如,升级之前的v1.0包括:采集cpu使用率的插件、采集内存的插件、版本定时检测的插件。升级之后的v2.0包括:采集cpu使用率的插件、采集内存的插件、版本定时检测的插件、采集磁盘使用率的插件、采集cpu温度的插件。可以理解的是,升级之后的升级包包含的监控项采集插件的数量大于升级之前的升级包包含的监控项采集插件的数量。
90.s25、根据所述第二插件升级包对所述待升级设备进行升级。
91.可选的,在执行步骤s25(根据所述第二插件升级包对所述待升级设备进行升级)之前,对所述第二插件升级包进行脱壳处理。
92.由于对每个插件升级包进行加壳处理,相应的,在待升级设备端进行升级时,对待升级设备的最新插件升级包进行脱壳处理,使得最新插件升级包所包含的监控项采集插件安全可靠。
93.通过这种方式,能够方便用户在不升级设备版本的情况下,仅对插件升级包进行
升级,即可动态扩展监控项采集插件,进而通过扩展的监控项采集插件采集相应的监控数据。
94.可选的,待升级设备接收到第二插件升级包之后,对所述第二插件升级包进行完整性验证和匹配度验证。
95.示例性的,对第二插件升级包的md5(message digest algorithm,消息摘要算法)值进行验证,以及对第二插件升级包的设备架构类型进行验证,当本地插件升级包的设备类型与最新插件升级包的设备类型一致,例如,均为x86架构或者均为arm架构时,才可以使用最新插件升级包对待升级设备进行升级。
96.作为本公开实施例一种可选的实施方式,在执行上述步骤s21(向监控服务器发送第一消息)之前,还可以执行以下步骤:
97.a、获取第一插件升级包的配置文件存放路径、以及第一插件升级包的动态库存放路径。
98.b、根据第一插件升级包的配置文件存放路径遍历第一插件升级包的配置文件,加载第一插件升级包的配置信息。
99.其中,配置信息包括:插件名称、插件动态库路径、插件类型、以及插件循环间隔周期。
100.c、将第一插件升级包的配置信息存储到内存中。
101.d、从内存中获取第一插件升级包的配置信息。
102.e、根据第一插件升级包的配置信息,以及第一插件升级包的动态库存放路径,调用第一插件升级包的初始化函数,对所述待升级设备进行系统初始化。
103.具体的,首先从指定的系统配置文件中读取第一插件升级包的配置文件存放路径、以及第一插件升级包的动态库存放路径,然后从指定路径下遍历第一插件升级包的配置文件,将第一插件升级包的配置文件的内容映射到插件信息结构中,同时将插件名称、插件信息结构存入内存中,随后,遍历内存中的插件名称、插件信息结构,调用第一插件升级包的初始化函数,以完成对待升级设备的系统初始化。
104.示例性的,插件信息结构可以如下所示:
[0105][0106]
插件的配置文件结构如下:
[0107][0108]
进一步,作为本公开实施例一种可选的实施方式,在执行上述步骤e(根据第一插件升级包的配置信息,以及第一插件升级包的动态库存放路径,调用第一插件升级包的初始化函数,对所述待升级设备进行系统初始化)之后,还可以执行下列步骤以判断目标监控项采集插件的类型:
[0109]
e1、判断所述第一插件升级包中的目标监控项采集插件是否被调度。
[0110]
e2、若所述目标监控项采集插件被调度,则对所述目标监控项采集插件的类型进行判断。
[0111]
e3、若所述待升级设备通过所述目标监控项采集插件向监控服务器定时上报监控数据,则确定所述目标监控项采集插件为第一插件类型。
[0112]
e4、若所述待升级设备接收到所述监控服务器发送的第二命令消息后上报监控数据,则确定所述目标监控项采集插件为第二插件类型。
[0113]
其中,所述第二命令消息用于通知所述待升级设备向所述监控服务器发送监控数据。
[0114]
示例性的,第一插件类型可以是循环插件,比如,需要被监控设备主动上报监控数据的插件,又比如版本定时检测插件,间隔预设时间向监控服务器发送消息,请求当前被监控设备的可升级的最新插件升级包版本号。第二插件类型可以是立即执行一次的插件,比如,需要由监控服务器主动下发命令后才运行的插件。
[0115]
可选的,当所述目标监控项采集插件为第一插件类型时,获取目标监控项采集插件采集的监控数据,将所述目标监控项采集插件采集的监控数据发送给监控服务器,并按照预设周期循环调度所述目标监控项采集插件。
[0116]
可选的,当所述目标监控项采集插件为第二插件类型时,获取目标监控项采集插件采集的监控数据,将所述目标监控项采集插件采集的监控数据发送给监控服务器,结束运行所述目标监控项采集插件。
[0117]
通过上述方式,不仅支持从监控器下发数据采集的命令,而且支持被监控设备按照设定的插件执行周期定时获取监控数据,主动将监控数据上报给监控服务器。
[0118]
示例性的,本公开的方法可以应用于网络安全设备的微信小程序管理功能的设计。在本实施例中,首先基于对网络安全设备的监控数据采集,通过微信小程序对获取的监控数据进行展示,进一步示例出对网络安全设备的插件升级包进行升级,具体实现步骤如下:
[0119]
首先,启动网络安全设备的当前版本v11.0,启动时根据网络安全设备的当前版本v11.0进行系统初始化以加载插件,并启动插件调度模块。然后,通过时间轮的方式判断当
前插件是否被调度。若当前插件被调度,则调用该插件的回调运行函数;如果被调度的是循环插件,则执行循环插件回调的运行函数,执行完后将监控项的监控数据发送给中转服务器,并将该插件加入下次的循环调度中。如果被调度的是立即执行一次插件,比如,执行命令插件,则调用插件的运行函数,并返回结果给中转服务器,结束本次插件运行。接着,微信小程序将中转服务器收到的网络安全设备返回的监控数据以小程序的方式展现给微信小程序用户。中转服务器定时查询本地记录的可监控的设备对应的插件版本是否为最新版本;如果发现被监控设备的插件版本不是最新版本v12.0,则向被监控设备发送升级命令和最新插件升级包;当被监控设备接收到升级命令和最新插件升级包v12.0,被监控设备判断自身是否需要升级,若是,则对最新插件升级包v12.0进行完整性验证和匹配度验证;然后进行对应的去壳处理,备份之前的插件文件v11.0,将新插件文件放置在指定的路径下,并重新加载插件配置,进行插件初始化,如果升级失败,则进行回滚,并将升级结果反馈给中转服务器的插件升级处理进程。
[0120]
本公开实施例提供的设备监控项的管理方法,应用于待升级设备,首先向监控服务器发送携带有待升级设备的标识信息的第一消息,然后接收监控服务器发送的携带有待升级设备的最新版本号的第二消息,若待升级设备的本地插件升级包的版本号低于第一待升级设备的最新版本号,则向监控服务器发送用于请求对本地插件升级包进行升级的第一请求消息,接收监控服务器发送的待升级设备的最新插件升级包,根据待升级设备的最新插件升级包对待升级设备进行升级。由于待升级设备的最新插件升级包包含的监控项采集插件的数量大于本地插件升级包包含的监控项采集插件的数量,所以通过获取最新插件升级包对待升级设备进行升级能够扩展监控项采集插件的数量,进而解决了无法动态扩展设备监控项的问题。
[0121]
在一些实施例中,如图3所示,提供一种设备监控项的管理方法,在本实施例中,主要以该方法应用于监控服务器来举例说明,包括如下步骤:
[0122]
s31、确定待升级设备。
[0123]
示例性的,监控服务器从本地记录中查询可监控的设备中哪些设备的插件升级包的版本不是最新的,例如,被监控设备1的本地插件升级包版本为v1.0,监控服务器中被监控设备1的最新插件升级包版本为v2.0,则确定被监控设备1为待升级设备。
[0124]
s32、向所述待升级设备发送第一命令消息,以使所述待升级设备判断第一插件升级包是否需要升级,若所述第一插件升级包需要升级,则根据第二插件升级包对所述待升级设备进行升级。
[0125]
其中,第一插件升级包为待升级设备的本地插件升级包;第二插件升级包为待升级设备的最新插件升级包;第一命令消息携带有待升级设备的第二插件升级包;第二插件升级包包含的监控项采集插件的数量大于第一插件升级包包含的监控项采集插件的数量。
[0126]
可选的,在根据第二插件升级包对所述待升级设备进行升级之前,对所述第二插件升级包进行脱壳处理。
[0127]
由于对每个插件升级包进行加壳处理,相应的,在待升级设备端进行升级时,对待升级设备的最新插件升级包进行脱壳处理,使得最新插件升级包所包含的监控项采集插件安全可靠。
[0128]
可选的,待升级设备接收到第二插件升级包之后,对所述第二插件升级包进行完
整性验证和匹配度验证。
[0129]
示例性的,本方法可以应用于对防火墙设备进行实时监控的防火墙运维系统的设计。在本实施例中,基于防火墙设备的特殊性,即,一般用户不允许随便升级防火墙设备版本,进一步阐述通过本方法实现对防火墙设备的监控和对防火墙设备的插件升级包进行升级的过程:
[0130]
首先,启动防火墙设备的当前版本v1.0,启动时根据防火墙设备的当前版本v1.0进行系统初始化,加载插件并启动插件调度模块。然后,使用时间轮方法判断当前插件是否被调度。若当前插件被调度,则调用该插件的运行函数;当被调度的是采集监控项的监控数据的插件,则执行插件回调的运行函数,执行完后将监控项对应的监控数据发送给监控服务器;当被调度的是版本定时检测插件,则向监控服务器发送请求,获取当前监控服务器中最新监控项采集插件升级包版本。例如,若服务器中的某个最新插件升级包版本号为v2.0,假如监控插件组中增加了一个接口流量插件的配置及回调动态库,则向防火墙设备发送v2.0的版本号;相应的,防火墙设备接收到v2.0的版本号后,与防火墙设备本地存储的监控项采集组件版本号v1.0进行比较,发现版本号不一致,则向服务器发送请求升级的信息;服务器接收到请求升级的信息后,从插件升级包集合中挑选出与防火墙设备类型匹配的升级包v2.0发送给防火墙设备;相应的,防火墙设备接收到升级包v2.0,对升级包v2.0进行完整性验证以及匹配度验证,然后进行对应的去壳处理,备份之前的v1.0版本的插件文件,将v2.0版本的插件文件存储在指定路径下,根据v2.0版本的插件文件对系统重新进行初始化,并重新启动插件调度模块,如果升级包升级失败,则进行回滚,最后将升级结果反馈给监控服务器。
[0131]
本公开实施例提供的设备监控项的管理方法,应用于监控服务器,首先确定待升级设备,然后向待升级设备发送携带有待升级设备的最新插件升级包的第一命令消息,以使待升级设备判断待升级设备的本地插件升级包是否需要升级,若待升级设备的本地插件升级包需要升级,则根据最新插件升级包对待升级设备进行升级。由于待升级设备的最新插件升级包包含的监控项采集插件的数量大于本地插件升级包包含的监控项采集插件的数量,所以通过获取最新插件升级包对待升级设备进行升级能够扩展监控项采集插件的数量,进而解决了无法动态扩展设备监控项的问题。
[0132]
通过上述方式,在不升级网络安全设备大版本的情况下,仅通过插件升级包的动态升级即可实现监控项的动态扩展,包括采集监控项的监控数据的插件和其他功能插件,实现了既可以从监控服务器端触发升级,也可以从被监控设备端触发升级。
[0133]
在一些实施例中,如图4所示,提供了一种待升级设备400,包括:
[0134]
第一发送模块410,用于向监控服务器发送第一消息;所述第一消息携带有待升级设备的标识信息,用于请求获取插件升级包集合中所述待升级设备的最新版本号;所述插件升级包集合由至少一种待升级设备类型的插件升级包组成;
[0135]
第一接收模块420,用于接收监控服务器发送的第二消息;所述第二消息携带有所述待升级设备的最新版本号;
[0136]
第二发送模块430,用于若第一插件升级包的版本号低于所述待升级设备的最新版本号,则向所述监控服务器发送第一请求消息;所述第一请求消息用于请求对所述第一插件升级包进行升级;所述第一插件升级包为所述待升级设备的本地插件升级包;
[0137]
第二接收模块440,用于接收所述监控服务器发送的第二插件升级包;所述第二插件升级包为所述待升级设备的最新插件升级包;所述第二插件升级包包含的监控项采集插件的数量大于所述第一插件升级包包含的监控项采集插件的数量;
[0138]
升级模块450,用于根据所述第二插件升级包对所述待升级设备进行升级。
[0139]
作为本公开实施例一种可选的实施方式,所述待升级设备,还包括初始化模块,具体用于:
[0140]
获取第一插件升级包的配置文件存放路径、以及第一插件升级包的动态库存放路径;
[0141]
根据第一插件升级包的配置文件存放路径遍历第一插件升级包的配置文件,加载第一插件升级包的配置信息;所述配置信息包括:插件名称、插件动态库路径、插件类型、以及插件循环间隔周期;
[0142]
将第一插件升级包的配置信息存储到内存中;
[0143]
从内存中获取第一插件升级包的配置信息;
[0144]
根据第一插件升级包的配置信息,以及第一插件升级包的动态库存放路径,调用第一插件升级包的初始化函数,对所述待升级设备进行系统初始化。
[0145]
作为本公开实施例一种可选的实施方式,所述待升级设备还包括类型确定模块,具体用于:
[0146]
判断所述第一插件升级包中的目标监控项采集插件是否被调度;
[0147]
若所述目标监控项采集插件被调度,则对所述目标监控项采集插件的类型进行判断;
[0148]
若所述待升级设备通过所述目标监控项采集插件向监控服务器定时上报监控数据,则确定所述目标监控项采集插件为第一插件类型;
[0149]
若所述待升级设备接收到所述监控服务器发送的第二命令消息后上报监控数据,则确定所述目标监控项采集插件为第二插件类型;所述第二命令消息用于通知所述待升级设备向所述监控服务器发送监控数据。
[0150]
作为本公开实施例一种可选的实施方式,所述待升级设备,还包括:
[0151]
第一采集模块,用于当所述目标监控项采集插件为第一插件类型时,获取目标监控项采集插件采集的监控数据,将所述目标监控项采集插件采集的监控数据发送给监控服务器,并按照预设周期循环调度所述目标监控项采集插件;
[0152]
第二采集模块,用于当所述目标监控项采集插件为第二插件类型时,获取目标监控项采集插件采集的监控数据,将所述目标监控项采集插件采集的监控数据发送给监控服务器,结束运行所述目标监控项采集插件。
[0153]
本公开实施例提供的待升级设备,首先向监控服务器发送携带有待升级设备的标识信息的第一消息,然后接收监控服务器发送的携带有待升级设备的最新版本号的第二消息,若待升级设备的本地插件升级包的版本号低于第一待升级设备的最新版本号,则向监控服务器发送用于请求对本地插件升级包进行升级的第一请求消息,接收监控服务器发送的待升级设备的最新插件升级包,根据待升级设备的最新插件升级包对待升级设备进行升级。由于待升级设备的最新插件升级包包含的监控项采集插件的数量大于本地插件升级包包含的监控项采集插件的数量,所以通过获取最新插件升级包对待升级设备进行升级能够
扩展监控项采集插件的数量,进而解决了无法动态扩展设备监控项的问题。
[0154]
在一些实施例中,如图5所示,提供了一种监控服务器500,包括:
[0155]
确定模块510,用于确定待升级设备;
[0156]
判断模块520,用于向所述待升级设备发送第一命令消息,以使所述待升级设备判断第一插件升级包是否需要升级,若所述第一插件升级包需要升级,则根据第二插件升级包对所述待升级设备进行升级;
[0157]
其中,所述第一插件升级包为所述待升级设备的本地插件升级包;所述第二插件升级包为所述待升级设备的最新插件升级包;所述第一命令消息携带有所述待升级设备的第二插件升级包;所述第二插件升级包包含的监控项采集插件的数量大于所述第一插件升级包包含的监控项采集插件的数量。
[0158]
作为本公开实施例一种可选的实施方式,所述插件升级包集合中的每个插件升级包均为进行加壳处理后的插件升级包。
[0159]
作为本公开实施例一种可选的实施方式,对所述第二插件升级包进行脱壳处理。
[0160]
本公开实施例提供的监控服务器,首先确定待升级设备,然后向待升级设备发送携带有待升级设备的最新插件升级包的第一命令消息,以使待升级设备判断待升级设备的本地插件升级包是否需要升级,若待升级设备的本地插件升级包需要升级,则根据最新插件升级包对待升级设备进行升级。由于待升级设备的最新插件升级包包含的监控项采集插件的数量大于本地插件升级包包含的监控项采集插件的数量,所以通过获取最新插件升级包对待升级设备进行升级能够扩展监控项采集插件的数量,进而解决了无法动态扩展设备监控项的问题。
[0161]
本公开实施例还提供了一种电子设备,图6为本公开实施例提供的电子设备的结构示意图。如图6所示,本实施例提供的电子设备包括:存储器61和处理器62,存储器61用于存储计算机程序;处理器62用于调用计算机程序时执行上述方法实施例提供的设备监控项的管理方法中的各步骤。
[0162]
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例提供的设备监控项的管理方法。
[0163]
本领域技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。
[0164]
处理器可以是中央判断单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0165]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。
[0166]
计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质
可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
[0167]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0168]
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1