一种云平台监控方法及系统与流程

文档序号:11864552阅读:311来源:国知局
一种云平台监控方法及系统与流程

本发明涉及云计算技术领域,尤其涉及一种云平台监控方法及系统。



背景技术:

云监控服务是云计算推出的一款针对云计算用户的监控服务。通过和云计算平台的整合,针对网络、系统、应用等内容提供可用性、用户体验和安全性方面的监控服务。现有技术中的云监控服务将对主机进行监控的监控项编写在代码中,使得监控项不能随意修改,不可实现定制化,云监控服务的扩展性差。而且,现有技术中的云监控服务采用人工对监控的数据进行检查,而随着服务器数量的增加及时间的推移,监控系统获得的数据将越发复杂及庞大,当管理员面对越来越多的服务器及其应用的时候,用人工方式对数据进行分析处理变得越来越不现实,且监控效率低下。



技术实现要素:

本发明实施例提出一种云平台监控方法及系统,能够实现云平台中主机监控项的可定制化,且提高云平台监控效率。

本发明实施例提供一种云平台监控方法,包括:

接收管理员发出的监控请求;其中,所述监控请求包括云平台中的主机的识别码和监控项;

根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;其中,所述数据采集指令包括所述监控项;

接收所述主机反馈的所述监控项的数据。

进一步地,所述根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据,具体包括:

根据所述主机的识别码对相应的主机进行心跳检测,判断所述主机是否处于可达状态;

若是,则根据所述监控请求向所述主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;

若否,则向所述主机所对应的联系人发送告警信息。

进一步地,在所述接收所述主机反馈的所述监控项的数据之后,还包括:

检测所述监控项的数据是否位于预设的阈值范围内;

若否,则向所述主机所对应的联系人发送告警信息。

进一步地,在所述接收所述主机反馈的所述监控项的数据之后,还包括:

将所述监控项及所述监控项的数据缓存于内存数据库中;

在检测到所述内存数据库中缓存的数据量达到预设的阈值时,将所述内存数据库中缓存的数据分别存入横向数据库和各个主机的纵向数据库中;所述横向数据库存储有各个监控项,所述各个主机的纵向数据库存储有所述主机的各个监控项的数据。

优选地,所述监控项包括但不限于以下的一种或多种:CPU的使用率、内存的使用率、硬盘的I/O读写性能、网络流量、网络带宽和网络使用率。

相应地,本发明实施例还提供一种云平台监控系统,包括:

请求接收模块,用于接收管理员发出的监控请求;其中,所述监控请求包括云平台中的主机的识别码和监控项;

指令发送模块,用于根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;其中,所述数据采集指令包括所述监控项;以及,

数据接收模块,用于接收所述主机反馈的所述监控项的数据。

进一步地,所述指令发送模块具体包括:

心跳检测单元,用于根据所述主机的识别码对相应的主机进行心跳检测,判断所述主机是否处于可达状态;

指令发送单元,用于在判定所述主机处于可达状态时,根据所述监控请求向所述主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;以及,

告警单元,用于在判定所述主机处于不可达状态时,向所述主机所对应的联系人发送告警信息。

进一步地,所述云平台监控系统还包括:

数据检测模块,用于检测所述监控项的数据是否位于预设的阈值范围内;以及,

告警模块,用于在检测到所述监控项的数据不位于预设的阈值范围内时,向所述主机所对应的联系人发送告警信息。

进一步地,所述云平台监控系统还包括:

缓存模块,用于将所述监控项及所述监控项的数据缓存于内存数据库中;以及,

存储模块,用于在检测到所述内存数据库中缓存的数据量达到预设的阈值时,将所述内存数据库中缓存的数据分别存入横向数据库和各个主机的纵向数据库中;所述横向数据库存储有各个监控项,所述各个主机的纵向数据库存储有所述主机的各个监控项的数据。

优选地,所述监控项包括但不限于以下的一种或多种:CPU的使用率、内存的使用率、硬盘的I/O读写性能、网络流量、网络带宽和网络使用率。实施本发明实施例,具有如下有益效果:

本发明实施例提供的云平台监控方法及系统,能够使管理员对各个主机的监控项进行配置,从而根据配置对相应的主机发送数据采集指令,使相应的主机采集所配置的监控项的数据,实现主机监控项的可定制化,提高云监控服务的扩展性;对监控项的数据进行检测,在其达到告警条件时,自动向相应的联系人发送告警信息,无需人工检测,提高监控效率;采用内存数据库对海量数据进行缓存处理,并对缓存的数据批量存储到不同数据库中,提高数据处理速度,提高系统性能。

附图说明

图1是本发明提供的云平台监控方法的一个实施例的流程示意图;

图2是本发明提供的云平台监控系统的一个实施例的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图1,本发明提供的云平台监控方法的一个实施例的流程示意图,所述云平台监控方法是从服务器这一侧进行描述的,所述云平台监控方法包括:

S1、接收管理员发出的监控请求;其中,所述监控请求包括云平台中的主机的识别码和监控项;

S2、根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;其中,所述数据采集指令包括所述监控项;

S3、接收所述主机反馈的所述监控项的数据。

需要说明的是,管理员可在服务器端对云平台中各个主机的监控项进行配置,同时,还可对各个主机的监控时间、告警联系人等进行配置,进而根据配置内容向服务器发出监控请求,服务器在接收到监控请求后,向管理员配置的主机发送数据采集指令,该主机接收数据采集指令后,对数据采集指令中的监控项进行识别,从而采集识别出的监控项的数据,并将采集到的监控项的数据通过统一的数据接口反馈给服务器,以实现主机监控项的可定制化,提高云监控服务的扩展性,且提高数据采集的效率。另外,服务器可同时对各个主机的数据进行监控,实现系统资源的并行检测。

进一步地,所述根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据,具体包括:

根据所述主机的识别码对相应的主机进行心跳检测,判断所述主机是否处于可达状态;

若是,则根据所述监控请求向所述主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;

若否,则向所述主机所对应的联系人发送告警信息。

需要说明的是,服务器在接收到管理员发出的监控请求后,根据监控请求中的主机的识别码识别出待监控的主机,进而通过心跳检测来判断该主机的状态,若该主机处于宕机和不可达状态,则向该主机预先设定的联系人发送告警信息,其中,发送方式一般为Email、短信、用户自定义等方式;若该主机处于可达状态,则根据监控请求向该主机发送数据采集指令,使该主机能够根据数据采集指令采集相应的数据。

进一步地,在所述接收所述主机反馈的所述监控项的数据之后,还包括:

检测所述监控项的数据是否位于预设的阈值范围内;

若否,则向所述主机所对应的联系人发送告警信息。

需要说明的是,在对主机进行监控前,可先设置各个监控项的阈值范围,即各个监控项的告警条件。在接收到主机反馈的监控项的数据后,对监控项的数据进行检测,判断其是否位于预设的阈值范围内,若位于预设的阈值范围内,则不做处理,若不在预设的阈值范围内,则向该主机预先设定的联系人发送告警信息,其中,发送方式一般为Email、短信、用户自定义等方式。

进一步地,在所述接收所述主机反馈的所述监控项的数据之后,还包括:

将所述监控项及所述监控项的数据缓存于内存数据库中;

在检测到所述内存数据库中缓存的数据量达到预设的阈值时,将所述内存数据库中缓存的数据分别存入横向数据库和各个主机的纵向数据库中;所述横向数据库存储有各个监控项,所述各个主机的纵向数据库存储有所述主机的各个监控项的数据。

需要说明的是,在对监控项的数据进行检测的同时,对监控项的数据进行缓存。将短时间内频繁使用的数据缓存至内存数据库中。其中,内存数据库与磁盘相比读写速度要高很多,其数据处理速度是传统数据库处理速度的十倍以上,能够极大提高系统的性能。在内存数据库中缓存的数据达到一定量后,将缓存的数据批量存入数据库中。批量存入时,先将缓存的数据分为横向数据和纵向数据,其中,横向数据为各个监控项,作为共享数据,纵向数据为采集到的各个监控项的数据,作为分布式数据。进而,将横向数据同一存储在一个数据库中,将纵向数据按照主机的不同存储在不同的数据库中,即一个主机的纵向数据存储于一个数据库中。采用海量数据处理和高速分布式存储,使系统在面对海量主机时,依然能准确定位监控到每个主机的运行状态。另外,在存入各个数据库之前,采用预处理模块对缓存中的数据进行预处理,使其符合数据库对象定义的规范,从而减少中间数据以及减少数据库处理数据的时间。

优选地,所述监控项包括但不限于以下的一种或多种:CPU的使用率、内存的使用率、硬盘的I/O读写性能、网络流量、网络带宽和网络使用率。

本发明实施例提供的云平台监控方法,能够使管理员对各个主机的监控项进行配置,从而根据配置对相应的主机发送数据采集指令,使相应的主机采集所配置的监控项的数据,实现主机监控项的可定制化,提高云监控服务的扩展性;对监控项的数据进行检测,在其达到告警条件时,自动向相应的联系人发送告警信息,无需人工检测,提高监控效率;采用内存数据库对海量数据进行缓存处理,并对缓存的数据批量存储到不同数据库中,提高数据处理速度,提高系统性能。

相应的,本发明还提供一种云平台监控系统,能够实现上述实施例中的云平台监控方法的所有流程。

参见图2,是本发明提供的云平台监控系统的一个实施例的结构示意图,包括:

请求接收模块1,用于接收管理员发出的监控请求;其中,所述监控请求包括云平台中的主机的识别码和监控项;

指令发送模块2,用于根据所述监控请求向所述主机的识别码所对应的主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;其中,所述数据采集指令包括所述监控项;以及,

数据接收模块3,用于接收所述主机反馈的所述监控项的数据。

进一步地,所述指令发送模块具体包括:

心跳检测单元,用于根据所述主机的识别码对相应的主机进行心跳检测,判断所述主机是否处于可达状态;

指令发送单元,用于在判定所述主机处于可达状态时,根据所述监控请求向所述主机发送数据采集指令,使所述主机根据所述数据采集指令采集所述监控项的数据;以及,

告警单元,用于在判定所述主机处于不可达状态时,向所述主机所对应的联系人发送告警信息。

进一步地,所述云平台监控系统还包括:

数据检测模块,用于检测所述监控项的数据是否位于预设的阈值范围内;以及,

告警模块,用于在检测到所述监控项的数据不位于预设的阈值范围内时,向所述主机所对应的联系人发送告警信息。

进一步地,所述云平台监控系统还包括:

缓存模块,用于将所述监控项及所述监控项的数据缓存于内存数据库中;以及,

存储模块,用于在检测到所述内存数据库中缓存的数据量达到预设的阈值时,将所述内存数据库中缓存的数据分别存入横向数据库和各个主机的纵向数据库中;所述横向数据库存储有各个监控项,所述各个主机的纵向数据库存储有所述主机的各个监控项的数据。

优选地,所述监控项包括但不限于以下的一种或多种:CPU的使用率、内存的使用率、硬盘的I/O读写性能、网络流量、网络带宽和网络使用率。

另外,本发明实施例提供的云平台监控系统相对于传统的监控系统来说,具有丰富的图形化选项,能够对监控展示用的图形进行快速渲染,点击和拖拽缩放,多个Y轴、条形、折线、点、智能Y轴格式化,系列切换和颜色选择,网格阈值,轴标签等,从而避免传统监控项的展示不足且不够直观,提高用户体验。而且,本监控系统支持多种界面皮肤展现,采用现在比较流行的web网页元素进行设计,从而避免传统监控系统表现形式的单一,减少用户视觉疲劳,提高用户体验。另外,本监控系统具有功能齐全的查询功能,能够快速添加和编辑函数、参数,实现模板化查询,采用二叉树原理进行设计日志索引,达到快速查询定位的目的。

本发明实施例提供的云平台监控系统,能够使管理员对各个主机的监控项进行配置,从而根据配置对相应的主机发送数据采集指令,使相应的主机采集所配置的监控项的数据,实现主机监控项的可定制化,提高云监控服务的扩展性;对监控项的数据进行检测,在其达到告警条件时,自动向相应的联系人发送告警信息,无需人工检测,提高监控效率;采用内存数据库对海量数据进行缓存处理,并对缓存的数据批量存储到不同数据库中,提高数据处理速度,提高系统性能。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1