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

一种资源监控方法、装置和系统与流程

2022-07-30 16:48:24 来源:中国专利 TAG:


1.本发明涉及云计算技术领域,尤其涉及一种资源监控方法、装置和系统。


背景技术:

2.当前混合云环境下,一般会基于容器化管理系统(kubernetes,简称k8s)创建和管理包括公有云集群和私有环境集群的多个集群,并为集群创建应用实例,这些应用实例会依赖云上外接网络资源比如alb,域名,公网ip,安全组等或计算存储资源。不同的应用会依赖不同的外接资源,这些外接资源也会影响应用运行的稳定性以及故障转移和恢复时间。在集群环境复杂的情况下,外接资源出现问题需要人工逐一判断,这通过人工判断不仅依赖运维人员对业务的熟悉和经验,而且会耗费大量决策和解决问题的时间,增加了人力成本。


技术实现要素:

3.有鉴于此,本发明实施例提供一种资源监控方法、装置和系统,能够实现自动化检测外接网络资源,从而有效地降低人力成本。
4.为实现上述目的,根据本发明实施例的一个方面,提供了一种资源监控方法,包括:
5.从预设的资源列表中获取满足检测条件的资源信息,其中,所述资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,其中,所述资源信息指示资源特征标识以及检测方法标识;
6.从预设的多种检测方法中,调用所述检测方法标识对应的检测方法,检测所述资源特征标识所对应的外接网络资源;
7.提供监测的结果给资源管理端。
8.可选地,上述资源监控方法,进一步包括:
9.通过所述资源交互接口读取所述外接网络资源配置的特征标签,其中,所述特征标签指示所述外接网络资源的的巡检周期、资源特征标识以及检测方法标识;
10.将读取到的所述特征标签指示的所述外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的所述资源列表。
11.可选地,设置有多个资源列表,每一个所述资源列表配置有一个巡检周期;
12.所述将读取到的所述特征标签指示的所述外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的所述资源列表包括:
13.基于每一个所述资源列表配置的巡检周期,查找与所述特征标签指示的巡检周期相匹配的目标资源列表;
14.将读取到的所述特征标签指示的所述外接网络资源的资源特征标识以及检测方法标识,写入到所述目标资源列表。
15.可选地,上述资源监控方法,应用于kubernetes创建的多集群系统中的子集群。
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.可选地,上述资源监控装置,应用于kubernetes创建的多集群系统中的子集群。
56.第三方面,本发明实施例提供一种资源监控系统,包括:资源管理端以及上述资源监控装置。
57.上述发明中的一个实施例具有如下优点或有益效果:因为资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,可以实现统计外接网络资源的资源信息,另外,为每一种外接网络资源配置有对应的检测方法,那么在获取到满足检测条件的资源信息后,通过调用资源信息指示的检测方法标识对应的检测方法,可以对资源特征标识所对应的外接网络资源进行检测,从而实现自动化检测资源,有效地降低资源检测的人力成本。
58.上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
59.附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
60.图1是根据本发明实施例的资源监控方法的主要流程的示意图;
61.图2是根据本发明实施例的资源管理的主要流程的示意图;
62.图3是根据本发明实施例的获取满足检测条件的资源信息的主要流程的示意图;
63.图4是根据本发明实施例的设置一个或多个任务队列的主要流程的示意图;
64.图5是根据本发明另一实施例的资源监控方法的主要流程的示意图;
65.图6是根据本发明实施例的资源监控方法所依赖架构的示意图;
66.图7是根据本发明实施例的任务队列架构的示意图;
67.图8是根据本发明实施例的资源监控装置的主要模块的示意图;
68.图9是根据本发明实施例的资源监控系统的结构示意图;
69.图10是本发明实施例可以应用于其中的示例性系统架构图;
70.图11是适于用来实现本发明实施例的终端设备或集群中节点的计算机系统的结构示意图。
具体实施方式
71.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
72.图1是根据本发明实施例的一种资源监控方法的主要流程示意图。如图1所示,该资源监控方法可包括如下步骤:
73.步骤s101:从预设的资源列表中获取满足检测条件的资源信息,其中,资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,其中,资源信息指示资源特征标识以及检测方法标识;
74.步骤s102:从预设的多种检测方法中,调用检测方法标识对应的检测方法,检测资源特征标识所对应的外接网络资源;
75.步骤s103:提供监测的结果给资源管理端。
76.其中,检测条件可以为外接网络资源达到检测周期,比如,外接网络资源lb cr1的检测周期为30秒(30s),当前时间距离上一次检测外接网络资源lb cr1的时间达到30s,则确定该外接网络资源lb cr1满足检测条件,可获取该外接网络资源lb cr1的资源信息。
77.资源特征标识是指能够唯一表示外接网络资源的标识。
78.上述资源监控方法可应用于kubernetes创建的多集群系统中的多个子集群。以自动化检测子集群的业务所使用的外接网络资源正常或者异常,以保证kubernetes创建的多集群系统的外接网络资源能够稳定运行,同时能够及时发现存在问题的外接网络资源,以及时修复存在问题的外接网络资源。
79.在图1所示的实施例中,资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,可以实现统计外接网络资源的资源信息,另外,为每一种外接网络资源配置有对应的检测方法,那么在获取到满足检测条件的资源信息后,通过调用资源信息指示的检测方法标识对应的检测方法,可以对资源特征标识所对应的外接网络资源进行检测,从而实现自动化检测资源,有效地降低资源检测的人力成本。
80.在本发明实施例中,为了能够对资源进行管理,如图2所示,上述资源监控方法还可进一步包括如下步骤:
81.步骤s201:通过资源交互接口读取外接网络资源配置的特征标签,其中,特征标签指示外接网络资源的的巡检周期、资源特征标识以及检测方法标识;
82.步骤s202:将读取到的特征标签指示的外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的资源列表。
83.另外,上述外接网络资源配置的特征标签还可以预先存储在存储空间,以通过该存储空间维护外接网络资源配置的特征标签,并从该存储空间读取外接网络资源配置的特征标签,其中,该存储空间存储的外接网络资源配置的特征标签与外接网络资源配置的特征标签一致。
84.通过将读取到的特征标签指示的外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的资源列表,实现通过资源列表统一管理外接网络资源配置的特征标签,以方便管理外接网络资源的资源信息。
85.在本发明实施例中,上述资源监控方法设置有多个资源列表,每一个资源列表配置有一个巡检周期。相应地,上述将读取到的特征标签指示的外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的资源列表的具体实施方式可包括:基于每一个资源列表配置的巡检周期,查找与特征标签指示的巡检周期相匹配的目标资源列表;将读取到的特征标签指示的外接网络资源的资源特征标识以及检测方法标识,写入到目标资源列表。比如,各个外接网络资源的巡检周期可分为30s、60s、90s,则可设置30s对应的资源列表、60s对应的资源列表以及90s对应的资源列表,以将属于同一巡检周期的外接网络资源的资源信息存储到同一资源列表中,比如,将属于巡检周期为30s的外接网络资源的资源信息存储到30s对应的资源列表等。通过将同一巡检周期的外接网络资源的资源信息存储到同一资源列表中,可以使资源信息能够比较规范管理,同时能够针对同一资源列表使用同一巡检周期时针监控资源列表中的各个资源信息的巡检周期。
86.针对上述资源监控方法应用于kubernetes创建的多集群系统中的子集群,子集群中每一个子业务节点设置有第一巡检模块;子集群中任意一个子业务节点设置有第二巡检模块;相应地,如图3所示,从预设的资源列表中获取满足检测条件的资源信息的具体实施方式可包括如下步骤:
87.步骤s301:通过第一巡检模块获取达到巡检周期的、与第一巡检模块所在子业务节点存在关联的外接网络资源的第一资源信息;
88.步骤s302:通过第二巡检模块获取达到巡检周期的全局外接网络资源的第二资源信息,其中,全局外接网络资源是与任一子业务节点均不存在关联的外接网络资源的资源信息。
89.其中,检测方法标识对应的检测方法的具体实施方式可包括:针对第一巡检模块获取到的第一资源信息,通过第一巡检模块调用第一资源信息指示的检测方法标识对应的检测方法;针对第二巡检模块获取到的第二资源信息,通过第二巡检模块调用第二资源信息指示的检测方法标识对应的检测方法。
90.通过上述过程,可以通过每一个子业务节点设置的第一巡检模块管理与该第一巡检模块所在子业务节点存在关联的外接网络资源的第一资源信息;并通过任一子业务节点设置的第二巡检模块管理除了每一个子业务节点中的第一巡检模块获取的第一资源信息之外的全局外接网络资源,可以实现分类以及规范管理外接网络资源。
91.值得说明的是,第一资源信息的数量比较少,无需任务队列排序,可直接通过第一巡检模块对第一资源信息进行检测。除了每一个子业务节点中的第一巡检模块获取的第一
资源信息之外的全局外接网络资源的数量比较多,可通过为该全局外接网络资源设置任务队列,以规范管理需要检测的全局外接网络资源。
92.具体地,针对第二巡检模块以及第二巡检模块的全局外接网络资源,资源监控方法还可进一步包括:设置一个或多个任务队列,将每一个任务队列加载到第二巡检模块中;将第二资源信息存储到一个任务队列中;相应地,上述调用检测方法标识对应的检测方法的具体实施方式可包括:通过第二巡检模块调用任务队列中存储的第二资源信息指示的检测方法标识对应的检测方法。以实现规范管理和检测全局外接网络资源,保证全局外接网络资源检测的完整性和全面性。
93.在本发明实施例中,上述通过第二巡检模块调用任务队列中存储的第二资源信息指示的检测方法标识对应的检测方法的具体实施方式可包括:针对任务队列存储有多个第二资源信息的情况,根据任务队列中多个第二资源信息的排列顺序,第二巡检模块通过任务队列的线程顺序调用任务队列中多个第二资源信息指示的检测方法标识对应的检测方法。通过根据任务队列中多个第二资源信息的排列顺序,检测第二资源信息,可以有效地避免漏检,同时避免外接网络资源检测过程拥挤。
94.在本发明实施例中,上述设置一个或多个任务队列的具体实施方式可包括:针对设置有多个资源列表,每一个资源列表配置有一个巡检周期的情况,为每一个资源列表,设置一个或多个任务队列。比如,针对30s、60s、90s三个巡检周期,设置有30s对应的资源列表、60对应的资源列表以及90s对应的资源列表,则分别为30s对应的资源列表
95.设置一个或多个任务队列,为60s对应的资源列表设置一个或多个任务
96.队列,为90s对应的资源列表设置一个或多个任务队列,以分类管理和检测外接网络资源。
97.在本发明实施例中,如图4所示,上述设置一个或多个任务队列的具体实施方式可包括如下步骤:
98.步骤s401:根据资源列表包括的资源信息的总条数以及预设的任务队列的任务阈值,计算资源桶的数量;
99.该步骤通过计算公式(1)计算资源桶的数量。
[0100][0101]
其中,s表征资源桶的数量;t表征资源列表包括的资源信息的总条数;r
t
表征任务队列的任务阈值;表征向上取整。
[0102]
步骤s402:设置计算数量的资源桶;
[0103]
步骤s403:为每一个资源桶配置一个任务队列。
[0104]
通过上述过程保证任务队列能够满足资源信息的需求,同时不会浪费任务队列所占用的存储空间。
[0105]
在本发明实施例中,上述在设置一个或多个任务队列之后还可进一步包括:为每一个任务队列设置对应的协程,并为协程设置多个任务管道,每一个任务管道对应一个任务存储位置;相应地,上述将第二资源信息存储到一个任务队列中的具体实施方式可包括:通过协程以及协程的空闲任务管道,将第二资源信息存储到一个任务队列的空闲位置。通过协程以及协程的空闲任务管道以方便管理资源信息,避免资源信息挤占任务队列,造成
资源拥堵。
[0106]
在本发明实施例中,上述资源监控方法还可进一步包括:将每一个资源列表的巡检周期配置到任务发送模块;相应地,任务发送模块基于每一个资源列表的巡检周期,执行从预设的资源列表中获取满足检测条件的资源信息的步骤。通过任务发送模块统一管理资源列表的巡检周期,可以实现对各个资源列表的统一管理以及调配。
[0107]
在本发明实施例中,上述资源监控方法还可进一步包括:基于设定的重置周期,重新计算资源桶的数量;在重新计算出的资源桶的数量大于资源桶的实际数量的情况下,增加新的资源桶;在重新计算出的资源桶的数量小于资源桶的实际数量的情况下,关闭空闲资源桶的协程以及任务管道。通过重新计算资源桶的数量,根据重新计算的结果实现资源桶扩容或缩容,以更好地满足资源信息对资源桶的需求。
[0108]
在本发明实施例中,上述提供监测的结果给资源管理端的具体实施方式可包括:将监测的结果发送给多集群系统的主集群的节点;通过主集群的节点根据预设的分析策略,分析监测的结果,并将分析的结果发送给终端设备。
[0109]
下面以图5至图7为例,详细说明监控k8s创建的多集群系统所连接的外接网络资源,具体地,kubernetes创建的多集群系统中的子集群包括的每一个子业务节点对外接网络资源进行监控,如图5所示,监控k8s创建的多集群系统所连接的外接网络资源的可包括如下步骤:
[0110]
步骤s501:子集群中每一个子业务节点设置有第一巡检模块,子集群中任意一个子业务节点设置有第二巡检模块;
[0111]
以图6所示的k8s创建的多集群系统k8s子集群1为例,示出了设置于子业务节点1中第二巡检模块,以及设置于子业务节点2中的第一巡检模块,值得说明的是,子业务节点1中一般也需要设置第一巡检模块,以使子业务节点1通过第一巡检模块检测与子业务节点1相关的外接网络资源比如网卡、网卡连接的路由等。子业务节点2中的第一巡检模块检测与子业务节点2相关的外接网络资源。子业务节点1中第二巡检模块检测除了与子业务节点相关的外接网络资源之外的全局外接网络资源。
[0112]
其中,第一巡检模块通过kubernetes的容器控制器daemonset实现。与子业务节点相关的外接网络资源可包括网卡的路由、资源插件、云盘挂载等与单个云主机相关的资源,通过daemonset实现第一巡检模块可以确保全部子业务节点上运行该第一巡检模块。当有子业务节点加入子集群时,也会为他们新增一个第一巡检模块。当有子业务节点从集群移除时,这些第一巡检模块也会被回收。
[0113]
其中,第二巡检模块通过kubernetes中用于部署应用的对象deployment其可通过提供声明式的定义方法实现控制处理全局外接资源(不需要获取子业务节点相关信息的资源,比如网卡的路由等)巡检和预案。
[0114]
步骤s502:任一子业务节点设置有多个资源列表,每一个资源列表配置有一个巡检周期;
[0115]
如图7所述可设置有30s对应的资源列表、60s对应的资源列表以及90s对应的资源列表,比如,30s对应的资源列表存储的巡检周期为30s的全局外接网络资源为lb cr1、domain cr1、domain cr2、lb cr2、eip cr1等。
[0116]
步骤s503:将每一个资源列表的巡检周期配置到任务发送模块;
[0117]
以通过该任务发送模块监控各个资源列表,从资源列表中读取达到巡检周期的全局外接网络资源。
[0118]
步骤s504:根据资源列表包括的资源信息的总条数以及预设的任务队列的任务阈值,计算资源桶的数量;
[0119]
该计算过程可通过上述计算公式(1)实现,以巡检周期30s的资源列表为例,任务阈值为20个,巡检周期30s对应的资源列表中资源信息的总条数为300,则资源桶的数量为15个。可为该巡检周期30s对应的资源列表设置15个资源桶如图7所示的0、1、2、3、

m-1等资源桶,并为每一个资源桶设置如图7所述的任务队列g,在该任务队列存放任务t(每一个任务t对应一个资源的资源信息)。
[0120]
步骤s505:设置计算数量的资源桶;
[0121]
步骤s506:为每一个资源桶配置一个任务队列,将每一个任务队列加载到第二巡检模块中;
[0122]
步骤s507:为每一个任务队列设置对应的协程,并为协程设置多个任务管道,每一个任务管道对应一个任务存储位置;
[0123]
步骤s508:通过资源交互接口读取外接网络资源配置的特征标签,其中,特征标签指示外接网络资源的的巡检周期、资源特征标识以及检测方法标识;
[0124]
该资源交互接口通过图6所示的云服务资源操作接口和调用资源检测接口联合实现。通过该资源交互接口可以读取外接网络资源配置的特征标签,以确定外接网络资源属于全局外接网络资源,还是与子业务节点相关的外接网络资源,并通过该特征标签还可获取资源的巡检周期等。
[0125]
另外,除了通过资源交互接口读取外接网络资源配置的特征标签之外,第一巡检模块和第二巡检模块还可获取图6所示的命名空间存储的各个外接网络资源的资源名称、资源标签等,以方便外接网络资源的维护。
[0126]
步骤s509:基于每一个资源列表配置的巡检周期,查找与特征标签指示的巡检周期相匹配的目标资源列表;
[0127]
步骤s510:将读取到的特征标签指示的外接网络资源的资源特征标识以及检测方法标识,写入到目标资源列表;
[0128]
比如,将全局外接网络资源的资源信息写入到如图7所示的30s对应的资源列表、60s对应的资源列表以及90s对应的资源列表。
[0129]
步骤s511:任务发送模块基于每一个资源列表的巡检周期,从预设的资源列表中分别获取达到巡检周期的、与第一巡检模块所在子业务节点存在关联的外接网络资源的第一资源信息,以及达到巡检周期的全局外接网络资源的第二资源信息,其中,全局外接网络资源是与任一所述子业务节点均不存在关联的外接网络资源;针对第一资源信息,执行步骤s512;针对第二资源信息执行步骤s513;
[0130]
在该步骤中,具体把哪个资源信息放置到哪个任务队列中,可以通过将资源信息的在资源列表中的编号除以任务队列的任务阈值得到第一计算结果,通过对第一计算结果进行向下取整,得到第二计算结果,查找与该第二计算结果一致的资源桶的下标号,将资源信息存储到与该第二计算结果一致的资源桶的下标号的资源桶中。比如,资源列表中的编号为30,任务阈值20,第一计算结果为1.5,通过向下取整得到第二计算结果1,则将读取的
资源信息存入下标号为1的资源桶的任务队列中。
[0131]
步骤s512:任务发送模块将第一资源信息发送给第一巡检模块,并执行步骤s515;
[0132]
由于第一资源信息的数量比较小,第一巡检模块可以及时处理该第一资源信息,无需为该第一资源信息设置任务队列。
[0133]
步骤s513:任务发送模块将第二资源信息发送给第二巡检模块;
[0134]
步骤s514:第二巡检模块通过协程以及协程的空闲任务管道,将第二资源信息存储到一个任务队列的空闲位置,并执行步骤s516;
[0135]
步骤s515:通过第一巡检模块从预设的多种检测方法中调用所述第一资源信息指示的检测方法标识对应的检测方法,检测资源特征标识所对应的外接网络资源,并执行步骤s520;
[0136]
步骤s516:通过第二巡检模块从预设的多种检测方法中调用任务队列中存储的第二资源信息指示的检测方法标识对应的检测方法,检测资源特征标识所对应的外接网络资源,分别执行步骤s517和步骤s520;
[0137]
其中,针对第二巡检模块来说,针对任务队列存储有多个第二资源信息的情况,根据任务队列中多个第二资源信息的排列顺序,第二巡检模块通过任务队列的线程顺序调用任务队列中多个第二资源信息指示的检测方法标识对应的检测方法。
[0138]
步骤s517:基于设定的重置周期,重新计算资源桶的数量;在重新计算出的资源桶的数量大于资源桶的实际数量的情况下,执行步骤s518;在重新计算出的资源桶的数量小于资源桶的实际数量的情况下,执行步骤s519;
[0139]
步骤s518:增加新的资源桶,并执行步骤s506;
[0140]
步骤s519:关闭空闲资源桶的协程以及任务管道,并结束当前流程;
[0141]
通过重新计算资源桶的数量,可以实现资源桶扩容或缩容,以根据需求设置资源桶,避免资源浪费。
[0142]
步骤s520:将监测的结果发送给多集群系统的主集群的节点;
[0143]
步骤s521:通过主集群的节点根据预设的分析策略,分析监测的结果,并将分析的结果发送给终端设备。
[0144]
通过对监测的结果按照不同维度比如巡检周期、资源类型等统计监测的结果,以为用户提供用户所需的外接网络资源的检测报告。
[0145]
即本发明实施例提供的方案通过管理外接网络资源,通过资源交互接口,生成业务相关的外接网络资源检查清单比如资源列表等,并可按用户所需维度比如应用维度等汇总外接网络资源的情况。根据应用管理员配置的业务外接资源清单和应用预案管理,按设定周期自动检查全链路外接资源,判断出服务是否有不健康的问题,并根据预案自动修复这些问题或报警,大幅度提高系统可用性,并省去人工介入监控和处理的运维成本。
[0146]
另外,随着集群规模扩大,外接资源数量也随之快速增加,并且不同资源有不同巡检周期的需求,使用不同时钟周期的任务发送模块和自调整任务队列,达到检查周期的灵活配置和快速发现和快速处理问题的目的。
[0147]
如图8所示,本发明实施例提供一种资源监控装置800,该资源监控装置800可包括:任务发送模块801、巡检模块802以及结果提供模块803,其中,
[0148]
任务发送模块801,用于从预设的资源列表中获取满足检测条件的资源信息,将获
取到的资源信息发送给巡检模块802,其中,资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,其中,资源信息指示资源特征标识以及检测方法标识;
[0149]
巡检模块802,用于调用检测方法标识对应的检测方法,检测资源特征标识所对应的外接网络资源;
[0150]
结果提供模块803,用于提供监测的结果给资源管理端。
[0151]
在本发明实施例中,资源监控装置800还可进一步包括:资源交互接口804以及资源管理模块805,其中,
[0152]
资源管理模块805,用于通过资源交互接口804读取外接网络资源配置的特征标签,其中,特征标签指示外接网络资源的的巡检周期、资源特征标识以及检测方法标识;将读取到的特征标签指示的外接网络资源的巡检周期、资源特征标识以及检测方法标识,写入到预设的资源列表。
[0153]
在本发明实施例中,资源管理模块805设置有多个资源列表,每一个所述资源列表配置有一个巡检周期;
[0154]
资源管理模块805,进一步用于基于每一个资源列表配置的巡检周期,查找与特征标签指示的巡检周期相匹配的目标资源列表;将读取到的特征标签指示的外接网络资源的资源特征标识以及检测方法标识,写入到目标资源列表。
[0155]
在本发明实施例中,资源监控装置800应用于kubernetes创建的多集群系统中的子集群。
[0156]
在本发明实施例中,巡检模块802包括设置于子集群中的每一个子业务节点的第一巡检模块8021以及设置于子集群中任意一个子业务节点设置有第二巡检模块8022,其中,
[0157]
第一巡检模块8021,用于获取达到巡检周期的、与第一巡检模块8021所在子业务节点存在关联的外接网络资源的第一资源信息;
[0158]
第二巡检模块8022,用于获取达到巡检周期的全局外接网络资源的第二资源信息,其中,全局外接网络资源是与任一子业务节点均不存在关联的外接网络资源的资源信息。
[0159]
在本发明实施例中,第一巡检模块8021,进一步用于针对第一巡检模块8021获取到的第一资源信息,调用第一资源信息指示的检测方法标识对应的检测方法;
[0160]
第二巡检模块8022,进一步用于针对第二巡检模块8022获取到的第二资源信息,调用第二资源信息指示的检测方法标识对应的检测方法。
[0161]
在本发明实施例中,第二巡检模块8022,进一步用于加载设置的任务队列,将第二资源信息存储到一个所述任务队列中;通过第二巡检模块调用任务队列中存储的第二资源信息指示的检测方法标识对应的检测方法。
[0162]
在本发明实施例中,第二巡检模块8022,进一步用于针对任务队列存储有多个第二资源信息的情况,根据任务队列中多个第二资源信息的排列顺序,通过任务队列的线程顺序调用任务队列中多个第二资源信息指示的检测方法标识对应的检测方法。
[0163]
在本发明实施例中,第二巡检模块8022,进一步用于根据资源列表包括的资源信息的总条数以及预设的任务队列的任务阈值,计算资源桶的数量;设置计算数量的资源桶;为每一个资源桶配置一个任务队列。
[0164]
在本发明实施例中,第二巡检模块8022,进一步用于为每一个任务队列设置对应的协程,并为协程设置多个任务管道,每一个任务管道对应一个任务存储位置;通过协程以及协程的空闲任务管道,将第二资源信息存储到一个任务队列的空闲位置。
[0165]
在本发明实施例中,第二巡检模块8022,进一步用于基于设定的重置周期,重新计算资源桶的数量;在重新计算出的资源桶的数量大于资源桶的实际数量的情况下,增加新的资源桶;在重新计算出的资源桶的数量小于资源桶的实际数量的情况下,关闭空闲资源桶的协程以及任务管道。
[0166]
在本发明实施例中,资源管理模块805,进一步用于将监测的结果发送给多集群系统的主集群的节点;通过主集群的节点根据预设的分析策略,分析监测的结果,并将分析的结果发送给终端设备。
[0167]
如图9所示,本发明实施例提供一种资源监控系统900,该资源监控系统900可包括:资源管理端901以及上述实施例提供的资源监控装置800。
[0168]
在本发明实施例中,资源监控系统900应用于kubernetes创建的多集群系统中。
[0169]
图10示出了可以应用本发明实施例的资源监控方法或资源监控装置的示例性系统架构1000。
[0170]
如图10所示,系统架构1000可以包括终端设备1001、1002、1003,网络1004和k8s多集群系统1005,其中,k8s多集群系统1005可包括k8s主集群1006以及多个k8s子集群1007,每一个k8s子集群1007包括有主业务节点1008以及多个子业务节点1009。网络1004用以在终端设备1001、1002、1003和k8s多集群系统1005中的主集群1006之间、k8s主集群1006与多个k8s子集群1007之间、多个k8s子集群1007之间、主业务节点1008与多个子业务节点1009之间、多个子业务节点1009之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0171]
用户可以使用终端设备1001、1002、1003通过网络1004与主集群1006交互,以接收或发送消息等,比如,终端设备1001、1002、1003发送外接网络资源的统计维度,主集群1006将统计维度的外接网络资源的情况发送给终端设备1001、1002、1003。终端设备1001、1002、1003上可以安装有各种通讯客户端应用,例如网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
[0172]
终端设备1001、1002、1003可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0173]
主集群1006可以包括有提供各种服务的服务器,例如对用户利用终端设备1001、1002、1003所发送的外接网络资源的运行情况统计维度提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的运行情况统计维度等数据进行分析等处理,并将处理结果(例如统计的结果
‑‑
仅为示例)反馈给终端设备。
[0174]
k8s子集群1007包括的多个子业务节点1009可以是提供各种服务的服务器,例如对子业务节点所支持的业务所需的外接网络资源的运行情况提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对外接网络资源进行监控,并将监控结果(例如资源正常/异常运行
‑‑
仅为示例)反馈给主业务节点1008。该主业务节点1008将监控结果发送给主集群1006。
[0175]
需要说明的是,本发明实施例所提供的资源监控方法一般由子集群1007中的多个
子业务节点执行,相应地,资源监控装置一般设置于子集群1007中的多个子业务节点中。
[0176]
应该理解,图10中的终端设备、网络和k8s多集群系统的数目,以及k8s多集群系统包括的k8s子集群,k8s子集群包括的子业务节点的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和k8s多集群系统,以及k8s多集群系统包括的k8s子集群,k8s子集群包括的子业务节点。
[0177]
下面参考图11,其示出了适于用来实现本发明实施例的终端设备的计算机系统1100的结构示意图。图11示出的终端设备或k8s多集群系统中的k8s子集群中的子业务节点仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0178]
如图11所示,计算机系统1100包括中央处理单元(cpu)1101,其可以根据存储在只读存储器(rom)1102中的程序或者从存储部分1108加载到随机访问存储器(ram)1103中的程序而执行各种适当的动作和处理。在ram 1103中,还存储有系统1100操作所需的各种程序和数据。cpu 1101、rom 1102以及ram 1103通过总线1104彼此相连。输入/输出(i/o)接口1105也连接至总线1104。
[0179]
以下部件连接至i/o接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至i/o接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
[0180]
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(cpu)1101执行时,执行本发明的系统中限定的上述功能。
[0181]
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述
的任意合适的组合。
[0182]
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0183]
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括任务发送模块、巡检模块以及结果提供模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,任务发送单元还可以被描述为“从预设的资源列表中获取满足检测条件的资源信息,将获取到的资源信息发送给巡检模块的模块”。
[0184]
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:从预设的资源列表中获取满足检测条件的资源信息,其中,资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,其中,资源信息指示资源特征标识以及检测方法标识;从预设的多种检测方法中,调用检测方法标识对应的检测方法,检测资源特征标识所对应的外接网络资源;提供监测的结果给资源管理端。
[0185]
根据本发明实施例的技术方案,因为资源列表包括的多条资源信息通过与外接网络资源通信的资源交互接口获取到,可以实现统计外接网络资源的资源信息,另外,为每一种外接网络资源配置有对应的检测方法,那么在获取到满足检测条件的资源信息后,通过调用资源信息指示的检测方法标识对应的检测方法,可以对资源特征标识所对应的外接网络资源进行检测,从而实现自动化检测资源,有效地降低资源检测的人力成本。
[0186]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

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

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

相关文献