一种数据采集系统和方法与流程

文档序号:16149428发布日期:2018-12-05 17:14阅读:154来源:国知局
一种数据采集系统和方法与流程

本发明涉及数据管理领域,尤其涉及一种数据采集系统和方法。

背景技术

在当前的虚拟化系统中,一般只存在用于错误分析和诊断的日志系统以及与虚拟化系统紧密耦合的环境信息系统。日志系统会将虚拟化的各模块的所有日志搜集起来,便于开发人员定位和分析问题。但是,请参考图1,图1示出了在现有技术中,数据采集系统结构的组成示意图,环境信息系统由于与虚拟化系统紧耦合,会有很多问题,比如:不利于对各种类型的对象数据进行采集和汇总,采集的数据分散;由于环境信息系统与各模块紧耦合,数据采集和模块本身运行之间会有相互的干扰,影响模块的正常运行,也影响数据采集的精度;以及,对数据采集系统进行功能扩展比较困难,会牵涉到对原有模块的改动,不利于功能的扩展。



技术实现要素:

本发明实施例提供了一种数据采集系统和方法,旨在解决现有技术中紧耦合所带来的运行和数据采集之间的干扰,数据分散的问题。

为了解决上述技术问题,本发明实施例提供了一种数据采集系统,应用于虚拟化系统,包括二级节点、数据采集代理以及待检测对象;其中,所述数据采集代理设置于各所述待检测对象中,采集所述待检测对象中的待采集数据;所述二级节点获取所述待采集数据,并基于所述待采集数据进行汇总分析。

此外,本发明实施例还提供一种数据采集方法,包括:

采集待检测对象中的待采集数据;

获取所述待采集数据,并基于所述待采集数据进行汇总分析。

本发明的有益效果是:

本发明提供了一种数据采集系统和方法,包括二级节点、数据采集代理以及待检测对象;其中,数据采集代理设置于各待检测对象中,采集待检测对象中的待采集数据;二级节点获取待采集数据,并基于待采集数据进行汇总分析。通过本发明的实施,将待检测对象和数据采集以松耦合的方式进行组合,数据采集和待检测对象正常运行之间互不干扰,且能保证待采集数据采集的灵活性,便于汇总处理。

附图说明

图1为现有技术中虚拟化系统组成示意图;

图2为本发明第一实施例提供的数据采集系统结构示意图;

图3为本发明第二实施例提供的一种数据采集方法流程图;

图4为本发明第二实施例提供的一种数据采集方法流程图;

图5为本发明第二实施例提供的一种数据采集方法流程图。

具体实施方式

本发明的构思点在于,以代理的方式来设置各待检测对象,并基于代理服务来进行数据的采集和收发过程,如此以松耦合的方式实现虚拟化系统和数据采集系统之间的交互,可以提高系统的灵活度,降低干扰。

下面结合附图对本发明的具体实施方式作进一步说明。

第一实施例

请参考图2,图2是本发明第一实施例提供的一种数据采集系统组成示意图,包括:二级节点201、数据采集代理202以及待检测对象203;其中,数据采集代理202设置于各待检测对象203中,采集待检测对象203中的待采集数据;二级节点201获取待采集数据,并基于待采集数据进行汇总分析。

系统虚拟化指的是使用虚拟化软件在一台物理机上,虚拟出一台或多台虚拟机,虚拟机是使用系统虚拟化技术,运行在一个隔离环境中、具有完整硬件功能的逻辑计算机系统,包括客户操作系统和其中的应用程序。虚拟化系统的主要功能是对各种松散的资源进行集中的监控、管理和维护。

本实施例中的数据采集系统应用于虚拟化系统,主要实现对虚拟化系统中各模块,也就是各待检测对象203的数据采集与分析过程。在本实施例中,待检测对象203就是虚拟化系统中的各个组成部分,大致可分为以下几类:管理节点、计算节点、虚拟机和终端。其中,在本实施例中,管理节点所指的是,管理一个虚拟化环境中所有计算节点的计算机;而计算节点则指的是,提供虚拟化能力的计算机;虚拟机则指的是,通过软件模拟的具有完整硬件功能的,运行在一个完全隔离环境中的完整计算机系统。其中,虚拟机运行在计算节点上。

在本实施例中,数据采集代理202设置于各待检测对象203中,采集待检测对象203的待采集数据。各待检测对象203也就是虚拟化系统中运行的模块,数据采集代理202设置于待检测对象203中,不会影响待检测对象203的运行,待检测对象203也不会影响数据采集代理202对待检测对象203运行中所产生的待采集数据的采集,也就是说,本实施例采用了一种松耦合的方式,将虚拟化系统和数据采集系统进行组合。数据采集代理202所采集的待检测对象203包括上述的四类:管理节点、计算节点、虚拟机和终端。由于在这些待检测对象203中,虚拟机运行在计算节点上,计算节点是提供虚拟化能力的计算机,那么数据采集代理202所采集的待采集数据可以通过计算节点所形成的通道,发送给二级节点201。

其中,在本实施例中,采集待检测对象203中的待采集数据可以包括:确定待检测对象203和对应的待采集数据,以及采集周期,并生成对应的配置参数;将配置参数下发到待检测对象203中;数据采集代理202解析配置参数,并基于配置参数执行待采集数据的采集。其中,确定待检测对象203和待采集数据可以包括,所有虚拟化系统中的模块中,所需要检测的模块,也就是待检测对象203,而这些待检测对象203中,所需要的数据参数,也就是待采集数据。确定采集周期,就是数据采集代理202以什么样的频率采集待检测对象203中的待采集数据。此外,除了采集周期外,还可以包括发送周期,其中发送周期是指将待采集数据发送给二级节点201的周期。

二级节点201是一个管理运维的中心,其用于实现对一个虚拟化系统中待采集数据的汇总入库、分析和展示。其中,汇总,所指的是在一个虚拟化系统中,其包括的多个待检测对象203,比如多个虚拟机、多个计算节点等等,这些待检测对象203在运行过程中所产生的对应的待采集数据,在通过数据采集代理202获取之后,汇总到二级节点201中。入库,则是指,将这些待采集数据进行存储,存储的目标位置可以是位于二级节点201中的数据库,或者是位于其他物理机中的数据库。

其中,基于待采集数据进行汇总分析可以包括:根据待采集数据制定对应的量化指标,对待采集数据进行分析。对应的量化指标,根据待采集数据的类型的不同,其对应的量化指标也不同。各待检测对象203在运行过程中,总有一些参数在正常和异常中会有所区别,这种区别,就可以通过设置对应的量化指标来确定。具体的,按照数据类型的不同,待采集数据可以包括:资源数据、运行数据、性能数据以及日志数据中的至少一种。对应的,根据待采集数据制定对应的量化指标,对待采集数据进行分析可以包括:绘制与待采集数据对应的图表,对待采集数据进行分析。在本实施例中,图表的具体类型可以包括:资源使用的时间热点图、性能的时间热点图、虚拟机运行轨迹图以及模块错误统计图等等。其中,资源使用的时间热点图,指的是,在不同的时间点,对于资源的分配情况;而性能的时间热点图,则是指在不同的时间点,待检测对象203的性能。模块错误统计图,则可以包括,对应的待检测对象203出现错误的时间、时长以及错误原因等等,其中错误的判定方式可以是通过日志数据中的日志内容,或者是其他数据与对应的量化指标之间的关系来确定。

在基于待采集数据进行分析之后,在本实施例中,二级节点201还可以用于:根据对待采集数据的分析结果判定待检测对象203的状态;若判定待检测对象203有异常,则根据异常原因通知数据采集代理202处理。在分析之后,紧接着就可以根据分析的结果,来进行系统的故障排查与修复。具体的,根据对待采集数据的分析结果判定待检测对象203的状态可以包括:当待采集数据包括性能数据时,根据性能数据分析系统能耗;当待采集数据包括运行数据时,根据运行数据,监控各待检测对象203的异常状态;当待采集数据包括资源数据时,根据资源数据评估环境资源消耗情况,并基于评估结果调整环境资源的分配;当待采集数据包括日志数据时,根据日志数据定位任务执行情况,确定虚拟机的运行轨迹。可以看出,根据各待采集数据的类型的不同,可以实现对虚拟化系统中,对应的待检测对象203的相应的状态的判定。其中,根据性能数据分析系统能耗,可以通过绘制性能的时间热点图来进行;根据资源数据评估环境资源消耗情况,可以通过资源使用热点图来进行分析。其中,在本实施例中,各种类型的待采集数据,可以通过各种方式发送给二级节点201。日志数据可以通过原有的日志系统来输出,实现对所有关键流程的关键日志的采集;关键日志采集的规则可以包括:将日志信息打上相应的身份信息,包括该日志数据所属的模块、子模块、流程、执行的步骤以及结果等等;然后,基于日志数据的身份信息,可对日志数据进行过滤。运行数据由数据采集代理202对系统关键模块,也就是待检测对象203进程和资源消耗较多的进行进行采集;资源数据则由数据采集代理202采集虚拟化环境中,资源的使用量;性能数据由数据采集代理202采集网卡、块设备等关键对象的性能数据。本实施例中只是列举了其中一些数据及对应的采集方式,并没有具体限定特定的待采集数据及其采集方式,在满足本发明构思的前提下可以通过其他方式采集虚拟化系统中的其他数据,也就是说,本实施例的数据采集系统可以扩展到各种类型的对象,其前提是,按照指定的数据格式对采集的待采集数据进行封装。因此,系统能够方便的扩展到各种类型的管理节点、计算节点、虚拟机以及终端中。方便扩展待采集数据的类型,其核心是定义待采集数据的格式。

此外,本实施例中,还可以包括一级节点204,用于汇总各虚拟化系统中的二级节点201所汇总分析的待采集数据。二级节点201是对一个虚拟化环境的汇总分析,而一级节点204则可以将不同虚拟化环境的待采集数据进行汇总分析。一级节点204和二级节点201之间一般只是功能的不同,其在实际硬件上可能并没有区别。一级节点204实现对不同虚拟化系统的汇总管理,其包括同架构的虚拟化环境,比如多个基于kvm(keyboardvideomouse,键盘,显示器和鼠标)的虚拟化环境;或者基于异构的多个虚拟化环境,比如基于kvm的虚拟化环境和基于xen的虚拟化环境。

本发明提供了一种数据采集系统,包括二级节点、数据采集代理以及待检测对象;其中,数据采集代理设置于各待检测对象中,采集待检测对象中的待采集数据;二级节点获取待采集数据,并基于待采集数据进行汇总分析。通过本实施例的实施,将待检测对象和数据采集以松耦合的方式进行组合,数据采集和待检测对象正常运行之间互不干扰,且能保证待采集数据采集的灵活性,便于汇总处理。

第二实施例

请参考图3,图3是本发明第二实施例提供的一种数据采集方法流程图,包括:

s301、采集待检测对象中的待采集数据;

s302、获取待采集数据,并基于待采集数据进行汇总分析。

s301中,数据采集代理设置于各待检测对象中,采集待检测对象的待采集数据。各待检测对象也就是虚拟化系统中运行的模块,数据采集代理设置于待检测对象中,不会影响待检测对象的运行,待检测对象也不会影响数据采集代理对待检测对象运行中所产生的待采集数据的采集,也就是说,本实施例采用了一种松耦合的方式,将虚拟化系统和数据采集系统进行组合。数据采集代理所采集的待检测对象包括上述的四类:管理节点、计算节点、虚拟机和终端。由于在这些待检测对象中,虚拟机运行在计算节点上,计算节点是提供虚拟化能力的计算机,那么数据采集代理所采集的待采集数据可以通过计算节点所形成的通道,发送给二级节点。

其中,在本实施例中,请参考图4,采集待检测对象中的待采集数据可以包括:

s401、确定待检测对象和对应的待采集数据,以及采集周期,并生成对应的配置参数;

s402、将配置参数下发到待检测对象中;

s403、数据采集代理解析配置参数,并基于配置参数执行待采集数据的采集。

其中,确定待检测对象和待采集数据可以包括,所有虚拟化系统中的模块中,所需要检测的模块,也就是待检测对象,而这些待检测对象中,所需要的数据参数,也就是待采集数据。确定采集周期,就是数据采集代理以什么样的频率采集待检测对象中的待采集数据。此外,除了采集周期外,还可以包括发送周期,其中发送周期是指将待采集数据发送给二级节点的周期。

二级节点是一个管理运维的中心,其用于实现对一个虚拟化系统中待采集数据的汇总入库、分析和展示。其中,汇总,所指的是在一个虚拟化系统中,其包括的多个待检测对象,比如多个虚拟机、多个计算节点等等,这些待检测对象在运行过程中所产生的对应的待采集数据,在通过数据采集代理获取之后,汇总到二级节点中。入库,则是指,将这些待采集数据进行存储,存储的目标位置可以是位于二级节点中的数据库,或者是位于其他物理机中的数据库。

s302中,基于待采集数据进行汇总分析可以包括:根据待采集数据制定对应的量化指标,对待采集数据进行分析。对应的量化指标,根据待采集数据的类型的不同,其对应的量化指标也不同。各待检测对象在运行过程中,总有一些参数在正常和异常中会有所区别,这种区别,就可以通过设置对应的量化指标来确定。具体的,按照数据类型的不同,待采集数据可以包括:资源数据、运行数据、性能数据以及日志数据中的至少一种。对应的,根据待采集数据制定对应的量化指标,对待采集数据进行分析可以包括:绘制与待采集数据对应的图表,对待采集数据进行分析。在本实施例中,图表的具体类型可以包括:资源使用的时间热点图、性能的时间热点图、虚拟机运行轨迹图以及模块错误统计图等等。其中,资源使用的时间热点图,指的是,在不同的时间点,对于资源的分配情况;而性能的时间热点图,则是指在不同的时间点,待检测对象的性能。模块错误统计图,则可以包括,对应的待检测对象出现错误的时间、时长以及错误原因等等,其中错误的判定方式可以是通过日志数据中的日志内容,或者是其他数据与对应的量化指标之间的关系来确定。

在基于待采集数据进行分析之后,在本实施例中,在基于待采集数据进行汇总分析之后,还可以包括:根据对待采集数据的分析结果判定待检测对象的状态;若判定待检测对象有异常,则根据异常原因通知数据采集代理处理。具体的,请参考图5,分析处理的过程如下:

s501、对待采集数据进行分析;

s502、根据分析结果对异常进程进行判断;

s503、根据判断结果进行相应的处理。

在分析之后,紧接着就可以根据分析的结果,来进行系统的故障排查与修复。具体的,根据对待采集数据的分析结果判定待检测对象的状态可以包括:当待采集数据包括性能数据时,根据性能数据分析系统能耗;当待采集数据包括运行数据时,根据运行数据,监控各待检测对象的异常状态;当待采集数据包括资源数据时,根据资源数据评估环境资源消耗情况,并基于评估结果调整环境资源的分配;当待采集数据包括日志数据时,根据日志数据定位任务执行情况,确定虚拟机的运行轨迹。可以看出,根据各待采集数据的类型的不同,可以实现对虚拟化系统中,对应的待检测对象的相应的状态的判定。其中,根据性能数据分析系统能耗,可以通过绘制性能的时间热点图来进行;根据资源数据评估环境资源消耗情况,可以通过资源使用热点图来进行分析。其中,在本实施例中,各种类型的待采集数据,可以通过各种方式发送给二级节点。日志数据可以通过原有的日志系统来输出,实现对所有关键流程的关键日志的采集;关键日志采集的规则可以包括:将日志信息打上相应的身份信息,包括该日志数据所属的模块、子模块、流程、执行的步骤以及结果等等;然后,基于日志数据的身份信息,可对日志数据进行过滤。运行数据由数据采集代理对系统关键模块,也就是待检测对象进程和资源消耗较多的进行进行采集;资源数据则由数据采集代理采集虚拟化环境中,资源的使用量;性能数据由数据采集代理采集网卡、块设备等关键对象的性能数据。本实施例中只是列举了其中一些数据及对应的采集方式,并没有具体限定特定的待采集数据及其采集方式,在满足本发明构思的前提下可以通过其他方式采集虚拟化系统中的其他数据,也就是说,本实施例的数据采集系统可以扩展到各种类型的对象,其前提是,按照指定的数据格式对采集的待采集数据进行封装。因此,系统能够方便的扩展到各种类型的管理节点、计算节点、虚拟机以及终端中。方便扩展待采集数据的类型,其核心是定义待采集数据格式。此外,对于未找到解决方法的新异常,则可以通过相应的接口通知运维人员,进行人工处理。

此外,本实施例中,还可以包括一级节点,用于汇总各虚拟化系统中的二级节点所汇总分析的待采集数据。二级节点是对一个虚拟化环境的汇总分析,而一级节点则可以将不同虚拟化环境的待采集数据进行汇总分析。一级节点和二级节点之间一般只是功能的不同,其在实际硬件上可能并没有区别。一级节点实现对不同虚拟化系统的汇总管理,其包括同架构的虚拟化环境,比如多个基于kvm的虚拟化环境;或者基于异构的多个虚拟化环境,比如基于kvm的虚拟化环境和基于xen的虚拟化环境。

本发明提供了一种数据采集方法,采集待检测对象中的待采集数据;二级节点获取待采集数据,并基于待采集数据进行汇总分析。通过本实施例的实施,将待检测对象和数据采集以松耦合的方式进行组合,数据采集和待检测对象正常运行之间互不干扰,且能保证待采集数据采集的灵活性,便于汇总处理。

显然,本领域的技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储介质(rom/ram、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。

以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

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