一种基于Zabbix的服务器性能监控方法及系统与流程

文档序号:33635455发布日期:2023-03-29 00:24阅读:65来源:国知局
一种基于Zabbix的服务器性能监控方法及系统与流程
一种基于zabbix的服务器性能监控方法及系统
技术领域
1.本发明涉及数据监控技术领域,具体涉及一种基于zabbix的服务器性能监控方法及系统。


背景技术:

2.随着信息技术的飞速发展,各个行业都存在较大的计算需求。在此影响下,不同规模、架构的数据中心陆续上线运行。目前,各类数据中心机房的物理服务器动辄成百上千台,较为庞大的规模远远超出运维人员人工维护的能力范围。为了实时了解数据中心内各服务器的运行状态,对各服务器进行自动化的状态监控就变得十分必要。
3.服务器性能监控系统的使用,可以帮助运维人员实时了解各服务器关键性能指标的运行状态。如果某指标存在异常,可及时通知运维人员排查问题,定位原因,提高运维的效率,保障数据中心的正常运行。现有服务器性能监控系统普遍对异常情况的分类不够具体,当出现异常情况时,对异常状态的判定不够准确。


技术实现要素:

4.为解决现有技术存在的技术问题,本发明公开一种基于zabbix的服务器性能监控方法,该方法对数据中心的物理服务器进行性能监控,监控指标包括cpu使用率、内存使用率、磁盘使用率和网络流量信息,该方法包括以下步骤:
5.1.服务器数据采集:在各受控服务器上安装zabbix agent,zabbix agent采集受控服务器的性能监控指标,按照设定频率推送到主控服务器上的zabbix server中,存储在zabbix server指定的mysql数据库中;
6.2.异常告警:使用基于时间窗口的方法进行异常告警,每个时间窗口内对应的各指标对应的时间序列为其中w为时间窗口的个数,为第k个时间窗口内第i个指标在第j次采集的指标值,1≤k≤w;i表示第i个指标,i=1,2,3,4,分别对应cpu使用率、内存使用率、磁盘使用率和网络流量信息;s表示该时间窗口内指标的采集次数,且1≤j≤s;不断滑动时间窗口,检测各指标是否正常;指标异常包括:
7.1)未上线异常:在某个时间窗口内,一直未获取到受控服务器的监控状态数据,则该受控服务器被定义为出现未上线异常;
8.2)波动异常:采用标准差度量波动大小,其中表示第k个时间窗口内第i个指标的波动大小,表示第k个时间窗口内第i个指标的均值,表示第k个时间窗口内第i个指标的均值,时,给出波动异常告警,δi表示第i个指标的波动阈值;
9.3)指标值漂移异常:指标值漂移指标用于度量第k个时间窗相对于
第k-1个时间窗第i个指标的漂移情况;时,给出波动异常告警,ξi表示第i个指标的指标值漂移阈值;
10.4)指标值过高异常:在一个时间窗口内,受控服务器的状态数据持续高于既定的阈值,该受控服务器被定义为出现指标值过高异常。
11.3.数据存储管理:将采集的受控服务器性能指标保存在服务器上的mysql数据库中。
12.为实现上述方法,本发明又提出一种基于zabbix的服务器性能监控系统,该系统包括服务器数据采集单元、异常告警单元、数据存储管理单元,具体地:
13.1.服务器数据采集单元:在各受控服务器上安装zabbix agent,构成服务器数据采集单元;zabbix agent采集受控服务器的性能监控指标,按照设定频率推送到主控服务器上的zabbix server中,存储在zabbix server指定的mysql数据库中;
14.2.异常告警单元:使用基于时间窗口的方法进行异常告警,每个时间窗口内对应的各指标对应的时间序列为其中w为时间窗口的个数,为第k个时间窗口内第i个指标在第j次采集的指标值,1≤k≤w;i表示第i个指标,i=1,2,3,4,分别对应cpu使用率、内存使用率、磁盘使用率和网络流量信息;s表示该时间窗口内指标的采集次数,且1≤j≤s;不断滑动时间窗口,检测各指标是否正常;指标异常包括:
15.1)未上线异常:在某个时间窗口内,一直未获取到受控服务器的监控状态数据,则该受控服务器被定义为出现未上线异常。
16.2)波动异常:采用标准差度量波动大小,其中表示第k个时间窗口内第i个指标的波动大小,表示第k个时间窗口内第i个指标的均值,表示第k个时间窗口内第i个指标的均值,时,给出波动异常告警,δi表示第i个指标的波动阈值;
17.3)指标值漂移异常:指标值漂移指标用于度量第k个时间窗相对于第k-1个时间窗第i个指标的漂移情况;时,给出波动异常告警,ξi表示第i个指标的指标值漂移阈值。
18.4)指标值过高异常:在一个时间窗口内,受控服务器的状态数据持续高于既定的阈值,该受控服务器被定义为出现指标值过高异常。
19.3.数据存储管理单元:将采集的受控服务器性能指标保存在服务器上的mysql数据库中。
20.采用本发明后,采用该发明后,可以实时了解各服务器的性能状态,及时发现其中的异常情况,有效提高运维人员的工作效率。
附图说明
21.图1为本发明的方法流程图。
22.图2为本发明的系统示意图。
23.图3为实施例的系统示意图。
具体实施方式
24.本发明公开一种基于zabbix的服务器性能监控方法及系统,该方法包括以下步骤:
25.1.服务器数据采集:在主控服务器上安装zabbix服务器,在各受控服务器上安装zabbix agent;zabbix agent采集受控服务器的性能监控指标,如受控服务器的cpu使用率、内存使用率、磁盘使用率和网络流量信息等,并按照设定频率推送到主控服务器上的zabbix server中,存储在zabbix server指定的mysql数据库中。
26.2.异常告警:在zabbix server不断获得各受控服务器的性能监控指标的同时,对各性能监控指标进行异常检测。异常检测过程中,使用了基于时间窗口方法。时间窗口的个数为w,每个时间窗口内对应的各指标对应的时间序列为其中表示第k个时间窗口内第i个指标在第j次采集的指标值,1≤k≤w;i表示第i个指标,i=1,2,3,4,分别对应cpu使用率、内存使用率、磁盘使用率和网络流量信息;s表示在该时间窗口内指标的采集次数,且1≤j≤s。
27.不断滑动时间窗口,检测各指标是否正常。在本发明中,将指标异常划分为四类:未上线异常、波动异常、指标值漂移异常和指标值过高异常。
28.1)未上线异常:在某个时间窗口内,一直未获取到受控服务器的监控状态数据,则该受控服务器被定义为出现未上线异常。
29.2)波动异常:在一个时间窗口内,正常情况下一台受控服务器的状态数据应波动较小;如果出现了较大的波动,则该受控服务器被定义为出现波动异常。本部分采用标准差度量波动的大小,即:其中表示第k个时间窗口内第i个指标的波动大小,表示第k个时间窗口内第i个指标的均值,计算方法为:若超过定义的阈值δi,则给出波动异常告警。δi表示第i个指标的波动阈值。
30.3)指标值漂移异常:一台受控服务器的状态数据可能在一个时间窗口内处于一个数值范围内,但在另一个时间窗口内处于不同的数值范围;这样虽然在每个时间窗口的波动可能都不大,但是从跨时间窗口看,指标数据可能发生了漂移异常。定义指标值漂移指标动可能都不大,但是从跨时间窗口看,指标数据可能发生了漂移异常。定义指标值漂移指标动可能都不大,但是从跨时间窗口看,指标数据可能发生了漂移异常。定义指标值漂移指标可用于度量第k个时间窗相对于第k-1个时间窗第i个指标的漂移情况。当的值大于定义的阈值ξi,则给出波动异常告警。ξi表示第i个指标的指标值漂移阈值。
31.4)指标值过高异常:在一个时间窗口内,受控服务器的状态数据持续高于既定的阈值,则该受控服务器被定义为出现指标值过高异常。
32.3.数据存储管理:
33.采集的受控服务器性能指标保存在服务器上的mysql数据库中。因采集数据量较大,所以指定数据管理策略,对于采集到的数据,仅保存最近一个月的数据;对于一个月之前的数据,先导出到本地文件进行保存,然后执行删除操作。
34.基于上述方法,本发明又提出一种基于zabbix的服务器性能监控系统,该系统包
括服务器数据采集单元、异常告警单元、数据存储管理单元,具体地:
35.1.服务器数据采集单元:在各受控服务器上安装zabbix agent,构成服务器数据采集单元;zabbix agent采集受控服务器的性能监控指标,按照设定频率推送到主控服务器上的zabbix server中,存储在zabbix server指定的mysql数据库中;
36.2.异常告警单元:使用基于时间窗口的方法进行异常告警,每个时间窗口内对应的各指标对应的时间序列为其中w为时间窗口的个数,为第k个时间窗口内第i个指标在第j次采集的指标值,1≤k≤w;i表示第i个指标,i=1,2,3,4,分别对应cpu使用率、内存使用率、磁盘使用率和网络流量信息;s表示该时间窗口内指标的采集次数,且1≤j≤s;不断滑动时间窗口,检测各指标是否正常;指标异常包括:
37.1)未上线异常:在某个时间窗口内,一直未获取到受控服务器的监控状态数据,则该受控服务器被定义为出现未上线异常。
38.2)波动异常:采用标准差度量波动大小,其中表示第k个时间窗口内第i个指标的波动大小,表示第k个时间窗口内第i个指标的均值,表示第k个时间窗口内第i个指标的均值,时,给出波动异常告警,δi表示第i个指标的波动阈值;
39.3)指标值漂移异常:指标值漂移指标用于度量第k个时间窗相对于第k-1个时间窗第i个指标的漂移情况;时,给出波动异常告警,ξi表示第i个指标的指标值漂移阈值。
40.4)指标值过高异常:在一个时间窗口内,受控服务器的状态数据持续高于既定的阈值,该受控服务器被定义为出现指标值过高异常。
41.3.数据存储管理单元:将采集的受控服务器性能指标保存在服务器上的mysql数据库中。
42.基于zabbix的服务器性能监控系统在某客户现场进行安装部署,纳入监控的服务器数目为120台。系统定期采集各服务器的性能指标值,包括cpu使用率、内存使用率、磁盘使用率和网络流量信息,如果某时刻指标值检测到异常,则发出相应告警。
43.假定有两个相邻的时间窗口,某一台服务器在这两个时间窗口里,cpu使用率指标对应的时间序列数据分别为30,32,33,32,35和50,52,53,52,55。
44.对于这两个时间窗口,逐个判断可能出现的异常告警:
45.1)未上线异常:因为这两个时间窗口里的cpu使用率指标都有实际数据,所以并不存在未上线异常。
46.2)波动异常:根据这两个时间窗口里的cpu使用率时间序列,可以计算出来两个序列的标准差均为1.82。若cpu使用率对应的波动异常阈值δ1为10,则由1.82《10,可知,两个时间窗口里,cpu使用率指标均为出现波动异常。
47.3)指标值漂移异常:根据这两个时间窗口里的cpu使用率时间序列,可以计算出来指标值漂移指标值为1.62。若cpu使用率对应的指标值漂移异常阈值ξ1为1.5,则表明前后两个时间窗口里的cpu使用率出现漂移,应给出漂移告警。
48.4)指标值过高异常:按照通常的标注,cpu使用率过高的阈值可设定为90。而这两个时间窗口里的cpu使用率指标均为超过该阈值,因此该服务器并未出现指标值过高异常。
49.以上实施例表明:采用该发明后,可以实时了解各服务器的性能状态,及时发现其中的异常情况,有效提高运维人员的工作效率。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1