一种数据中心智慧数据平台及其实现方法与流程

文档序号:15929802发布日期:2018-11-14 01:30阅读:370来源:国知局

本申请涉及数据中心技术领域,特别是涉及一种数据中心智慧数据平台及其实现方法。

背景技术

mdc(moduledatacenter,模块化数据中心)是基于云计算的新一代数据中心部署形式。模块化数据中心处理数据具有如下特点:存量业务大,业务场景多,业务场景不同,数据形式和格式多种多样;用户量,数据量大,通常数据中心用户的数量能达到亿级,数量达tb级别;原始数据信息查询要求高;查找数据的成本随着数据的增加,越来越大。因此,对mdc内部异构数据的访问,是一种较大数据量和高并发访问性质的实时性应用。随着数据中心的发展,mdc内部异构数据的读取是个重要问题。

目前,mdc内部通常采用分布式处理方法进行异构数据的存取。具体地,数据中心的数据由各个异构系统提供,为读取数据中心内部的数据,需要针对不用的异构系统采用不同的方法进行数据采集和读取。例如:最基本的动环数据,多采用串口接口modbus协议、和电总协议等循环同步的方式读取;it系统监控数据多采用网络接口snmp、wmi、telnet/ssh、jdbc/odbc、jmx和tcp/ip等多种管理协议获取数据;第三方系统集成数据,一般采用网络集成接口opc、snmp、jdbc/odbc和自定义tcp/ip等集成协议获取数据。

然而,目前的分布式处理方法中,为了读取一个数据,需要进行大量的不同属性的数据之间的检索,对海量的异构数据流进行处理,使得数据存取的实时性不够高,从而导致数据存取效率低。



技术实现要素:

本申请提供了一种数据中心智慧数据平台及其实现方法,以解决现有技术中数据中心分布式处理方法使得数据存取的实时性不够高、数据存取效率低的问题。

为了解决上述技术问题,本申请实施例公开了如下技术方案:

一种数据中心智慧数据平台,所述平台包括:数据源、前端数据分发处理接口模块、数据清洗模块、数据仓库模块、数据分析模块和数据展示模块;

所述数据源,用于提供数据中心的监控数据,所述监控数据包括zabbix数据、动力与环境监控系统所采集的数据以及日志信息;

所述前端数据分发处理接口模块,用于采用主动轮询和被动轮询相结合的方式融合不同的数据源;

所述数据清洗模块,用于对所述监控数据进行检测;

所述数据仓库模块,用于对所述监控数据进行存储;

所述数据分析模块,用于对所述监控数据进行分析;

所述数据展示模块,用于利用api接口对实时监控数据、监控参数及检测、存储和分析处理后的监控数据进行三维可视化显示。

可选地,所述数据清洗模块包括异常检测单元和数据抽取及转换单元;

所述异常检测单元,用于利用公式y=(x-mean)/std对监控数据进行异常检测,其中,x为当前要检测的监控数据,mean为当前监控数据相邻的前五个监控数据的平均值,std为均方差,当y大于设定阈值大时,判定当前监控数据为异常值,进行异常报警,同时更新平均值和均方差;

所述数据抽取及转换单元,用于对检测合格的监控数据进行单条数据抽取及单条数据转换。

可选地,所述数据仓库模块包括map/reduce处理单元和存储单元;

所述map/reduce处理单元,用于对监控数据进行map/reduce处理;

所述存储单元用于采用hbase数据库存储来自zabbix数据源和动力与环境监控系统数据源的实时监控数据、监控参数及map/reduce处理后的监控数据,以及,按照时间和设备类型存储日志信息。

可选地,所述数据分析模块包括业务分析单元和统一告警单元;

所述业务分析单元,用于提供业务分析服务,所述业务分析服务包括:对当前业务进行分析获取对当前业务的总览,以及当前业务对其他业务的影响和拓扑关系;

所述统一告警单元,用于提供统一告警服务,所述统一告警服务包括设置告警指标基线、告警升级规则以及自动压缩资源。

可选地,前端数据分发处理接口模块所支持的协议包括:agent协议、modbus协议、ipmi协议以及syslog协议。

可选地,所述数据源包括zabbix数据源、动力与环境监控系统数据源以及日志信息源;

所述zabbix数据源用于提供zabbix数据,所述zabbix数据包括cpu使用率、cpu负载率、内存使用率、网络流量、磁盘空间使用率、磁盘i/o、进程数、数据库可用性、应用服务器可用性;

所述动力与环境监控系统数据源包括:ups、配电柜、精密空调、门禁、温湿度传感器、烟雾探测器、温感探测器、漏水传感器、翻转天窗及网络摄像机;

所述日志信息源包括:服务器运行日志文件、存储设备运行日志文件、网络设备运行日志文件、以及设备运行文件。

可选地,所述数据展示模块包括api接口单元和三维可视化显示单元。

一种数据中心智慧数据平台的实现方法,所述实现方法包括:

通过数据源获取数据中心的监控数据,所述监控数据包括zabbix数据、动力与环境监控系统所采集的数据以及日志信息;

采用主动轮询和被动轮询相结合的方式融合不同的数据源;

对监控数据进行检测、存储和分析;

利用api接口对实时监控数据、监控参数及检测、存储和分析处理后的监控数据进行三维可视化显示。

可选地,采用主动轮询和被动轮询相结合的方式融合不同的数据源,包括:

对数据源中的基础设施进行资产管理、状态监控和性能监控;

对数据源中的软件资源进行资产管理、状态监控、日志监控和性能监控;

对数据源中基础设施和软件资源的负载进行统计分析;

对动力与环境监控系统数据源进行管理。

可选地,所述对监控数据进行检测、存储和分析,包括如下过程:

利用公式y=(x-mean)/std对监控数据进行异常检测,并对检测合格的监控数据进行单条数据抽取及单条数据转换,其中,x为当前要检测的值,mean为前五个值的平均值,std为均方差,当y大于设定阈值大时,判定当前监控数据为异常值,进行异常报警,同时更新平均值和均方差;

对监控数据进行map/reduce处理;

采用hbase数据库存储来自zabbix数据源和动力与环境监控系统数据源的实时监控数据、监控参数及map/reduce处理后的监控数据,以及按照时间和设备类型存储日志信息;

对当前业务进行分析获取对当前业务的总览,以及当前业务对其他业务的影响和拓扑关系;

设置告警指标基线、告警升级规则以及自动压缩资源。

本申请的实施例提供的技术方案可以包括以下有益效果:

本申请提供一种数据中心智慧数据平台及其实现方法,该数据中心智慧数据平台包括数据源、前端数据分发处理接口模块、数据清洗模块、数据仓库模块、数据分析模块和数据展示模块。首先通过数据源能够获取数据中心的各种监控数据,通过前端数据分发处理接口模块,采用主动轮询和被动轮询相结合的方式融合不同的数据源,然后依次通过数据清洗模块、数据仓库模块和数据分析模块,对所采集的监控数据进行检测、存储和分析,最后通过数据展示模块,利用api接口对实时监控数据、监控参数及检测、存储和分析处理后的监控数据进行三维可视化显示。

本申请中前端数据分发处理接口模块的设置,能够有效接收来自不同数据源的各种监控数据,尤其是涉及物理资源与虚拟资源同时需要监控的场景,通过采用主动轮询和被动轮询的方式对这种场景下的数据进行融合,能够确保有效接收到各种数据,而且在对这些数据进行读取时,能够避免分布式处理方法中对大量不同属性的数据进行检索的过程,从而大大提高数据存取的效率。本申请中数据清洗模块的的设置,使的只有经过检测的数据才能进入数据仓库模块进行存储,能够大大节约网络资源和数据冲击的压力,有利于提高数据的稳定性。本申请中数据分析模块的设置,通过其提供的业务分析服务和统一告警服务,能够有效解决数据中心内群聚效应所引发的数据冲突问题,从而能够保证数据中心运行的稳定性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例所提供的一种数据中心智慧数据平台的结构示意图;

图2为本申请实施例中数据中心智慧数据展示平台的工作原理图;

图3为本申请实施例所提供的一种数据中心智慧数据平台的实现方法的流程示意图。

具体实施方式

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

为了更好地理解本申请,下面结合附图来详细解释本申请的实施方式。

实施例一

参见图1,图1为本申请实施例所提供的一种数据中心智慧数据平台的结构示意图。由图1可知,本实施例中的数据中心智慧数据平台,主要包括:数据源、前端数据分发处理接口模块、数据清洗模块、数据仓库模块、数据分析模块和数据展示模块共六个部分。

其中,数据源用于提供数据中心的监控数据,所述监控数据包括zabbix数据、动力与环境监控系统所采集的数据以及日志信息;前端数据分发处理接口模块,用于采用主动轮询和被动轮询相结合的方式融合不同的数据源;数据清洗模块用于对所述监控数据进行检测;数据仓库模块用于对所述监控数据进行存储;数据分析模块用于对所述监控数据进行分析;数据展示模块,用于利用api接口对实时监控数据、监控参数及检测、存储和分析处理后的监控数据进行三维可视化显示。

本实施例中各功能模块的工作原理详见图2,图2为本申请实施例中数据中心智慧数据展示平台的工作原理图。

本实施例支持多种异构的数据源,这些数据源主要包括zabbix数据源、动力与环境监控系统数据源以及日志信息源。zabbix数据源用于提供zabbix数据,其中,zabbix数据包括cpu使用率、cpu负载率、内存使用率、网络流量、磁盘空间使用率、磁盘i/o、进程数、数据库可用性、应用服务器可用性动力与环境监控系统数据源包括:ups、配电柜、精密空调、门禁、温湿度传感器、烟雾探测器、温感探测器、漏水传感器、翻转天窗及网络摄像机;日志信息源包括:服务器运行日志文件、存储设备运行日志文件、网络设备运行日志文件、以及设备运行文件。

本实施例中前端数据分发处理接口模块支持多种设备的通信与数据采集,所支持的协议包括:agent协议、modbus协议、ipmi协议以及syslog协议。前端数据分发处理接口模块采用主动轮询和被动轮询相结合的方式融合不同的数据源。具体地,主动轮询的方式为:被监控对象高频地将状态报告给前端数据分发处理接口模块,同时,前端数据分发处理接口模块按照一个较长的间隔周期向被监控资源主动发送请求,检查被监控资源是否存活和可用。被动轮询的方式为:如果前端数据分发处理接口模块在规定的时间内没收到被监控对象的信息,前端数据分发处理接口模块向被监控对象发请求去轮询,确认被监控对象的状态,从而及时确定数据中心资源的运行状态,并对各类异常进行报警。

本实施例中前端数据分发处理接口模块所实现的功能,包括:

a.对不同厂商、不同架构、虚拟形态或物理形态的基础设施进行资产管理、状态监控和性能监控,如:对物理计算资源、虚拟计算资源、本地存储、共享存储、分布式存储、网络设备资源、ip资源的状态监控和性能监控;提供丰富的监控项类型,包括可以查看当前计算机cpu、内存、硬盘等的利用率,可以查看网络流量、磁盘i/o、进程数等;可以随着数据中心的规模扩展,也可以横向扩展监控设备数量。

b.对异构的基础软件资源进行资产管理、状态监控、日志监控和性能监控。如:支持对linux/unix以及windows操作系统的监控,查看当前的进程与服务信息;支持对tomcat、iis、apache等应用服务器,以及sqlserver、mysql、oracle等数据库服务器的监控。

c.在系统硬件或负载出现异常时触发报警,提醒用户及时维护问题设备;对基础软硬件资源的负载进行长期的统计分析,为资源调度提供决策依据。

d.对包括ups、配电柜、精密空调、门禁、温湿度传感器、烟雾探测器、温感探测器、漏水传感器、翻转天窗及网络摄像机等多种监控对象进行管理。

进一步地,数据清洗模块包括异常检测单元和数据抽取及转换单元。其中,异常检测单元用于利用公式y=(x-mean)/std对监控数据进行异常检测。该公式中,x为当前要检测的监控数据,mean为当前监控数据相邻的前五个监控数据的平均值,std为均方差,当y大于设定阈值大时,判定当前监控数据为异常值,进行异常报警,同时更新平均值和均方差。数据抽取及转换单元,用于对检测合格的监控数据进行单条数据抽取及单条数据转换。

通过异常检测单元的设置,能够减少数据中心智慧数据平台对异常数据的干扰,有利于提高数据中心智慧数据平台对数据的处理效率。

本实施例中数据抽取及转换单元能够将不同类型的数据简化成containerid、ip、key的格式。对于来自数据源的原始监控数据,其上报量占到数据总上报量的90%以上,因此,采用文本数据难以做到稳定和快速存取,本实施例通过数据抽取及转换单元,直接在内存进行快速汇总。具体地,每个机器里面都申请两块共享内存,每块内存的格式是:uint32_t[max_id][max_key],设置两块内存,能够方便进行周期性的数据收集。设置三种上报方式:累加、设置新值、设置最大值,三种方式都是操作一个uint32_t,性能消耗非常小,而且可以实时在内存进行汇总,每次从内存提取的记录只有平均1000条左右,因此,能够大幅降低秒级统计的难度,有利于提高数据存取的效率。

进一步地,数据仓库模块包括map/reduce处理单元和存储单元。其中map/reduce处理单元用于对监控数据进行map/reduce处理;存储单元用于采用hbase数据库存储来自zabbix数据源和动力与环境监控系统数据源的实时监控数据、监控参数及map/reduce处理后的监控数据,以及,按照时间和设备类型存储日志信息。

本实施例中map/reduce处理单元进行数据处理时,假设输入的待处理数据为某台服务器的监控数据的集合,每条监控数据是json数据键值对,其格式如下:

timestamp,{“item1”:value1,“item2”:value2,…,“itemn”:valuen}。

map/reduce处理单元的操作对象为map<key,value>值对,在进行数据处理时,首先将传入的数据进行map分解为规定格式子数据,然后将子数据进行reduce汇总,第一次map操作时,传入的key为null,value为一条监控记录,在map输出时,将监控记录分解为key为监控项目item,值为{当前时间戳,当前数据值}的形式。map操作完成后进行reduce操作,按照监控数据项将map结果进行reduce操作,输出按照监控数据项的统计结果。

经过map/reduce操作后,即可完成对某台服务器或某个数据中心的监控数据进行分类统计,然后按照时间序列进行数据处理。

存储单元对数据的存储主要包括:对来自zabbix数据源和动力与环境监控系统数据源的数据进行存储,以及对来自日志信息源的数据进行存储。其中,来自zabbix数据源和动力与环境监控系统数据源的数据又称运维数据。

针对运维数据,数据中心智慧数据平台采用hbase数据库进行存储,运维数据主要包括:数据中心智慧数据平台的实时监控数据、监控参数以及处理后的统计数据等。智慧数据平台从数据库中存取数据,因此对行键的设计主要是对监控数据部分的行键设计,监控数据按照类型的不同分为三种:实时监控数据、监控参数以及经过map/reduce数据处理后的监控数据。对于实时监控数据,行键是将每个监控代理的唯一agentid和监控数据获取时间两者组成“agentid_时间”的形式进行组织的,监控数据保存在监控数据的列族中;对于监控参数,参数中包含阈值等信息,只需指定一个行键即可;对于数据处理后的监控数据,行键包括代理编号、统计类型以及统计时间段的开始时间,以“agentid_统计类型_时间”的格式进行区分。

针对来自日志信息源的日志文件,按照时间和设备类型进行分类存储。

进一步地,数据分析模块包括业务分析单元和统一告警单元。业务分析单元用于提供业务分析服务,所提供的的业务分析服务包括:对当前业务进行分析获取对当前业务的总览,以及当前业务对其他业务的影响和拓扑关系。统一告警单元用于提供统一告警服务,所提供的的统一告警服务包括设置告警指标基线、告警升级规则以及自动压缩资源。

通过业务分析单元,每个业务服务可以通过不同视角,包括总览、影响、分析、拓扑、机房和告警全方位展现业务服务。从而定位故障地点,确保在故障出现时,第一时间解决故障,从而保障核心业务正常运行。

具体地,对当前业务进行总览服务包括:查看当前业务服务的结构拓扑图,确认故障是由哪些设备引起的,关联故障设备详细信息,确认故障级别以及故障原因。对当前业务进行影响服务包括:查看当前业务服务影响的业务单位、责任人、ip地址范围以及问题状态的原因。对当前业务进行分析服务器包括:查看当前业务服务的kpi指标,如:可用性比率、mttr、mtbf、故障次数的图表,确认问题出现的时间、级别和相关事件详细内容。对当前业务进行拓扑服务:查看当前业务服务关联的资源的拓扑图。

业务分析单元可以通过不同颜色确认问题级别和处理问题顺序。

通过统一告警单元,能够提供的统一告警服务包括:设置告警指标基线、告警升级规则以及自动压缩资源。

具体地,统一告警单元可以提供天基线、周基线和自定义事件基线三种不同的设置方式供选择。

统一告警单元还可以对告警升级规则进行定义,对于持续时间较长的告警,如未确认或未清除的告警,或者告警重复发生次数较多的告警,能够提供告警升级规则定义功能,其中,规则定义应包含满足何种条件触发告警升级处理流程,如持续时长或重复次数等内容。

统一告警单元还可以自动压缩资源,也就是自动屏蔽重复故障告警功能,从而减轻管理人员工作量。例如,设备宕了10个小时,it管理员只会收到一条告警,数据中心智慧数据平台的告警压缩功能把数十条重复性告警压缩至一条。

进一步地,本实施例中数据展示模块包括api接口单元和三维可视化显示单元。

其中,api接口单元用于提供基于restfulwebservice方式的web接口,即api接口,以供第三方调用和集成。接口允许数据使用者通过标准的接口访问机房系统数据,通过标准的接口增加数据到3d机房系统。本实施例中api接口单元包含提供告警、监控数据以及资产等api供调用和集成。其中,告警api的功能包括:增加、更新、删除、和查询告警信息。指标数据api的功能包括:3d机房系统用户可以在系统查看指标数据,并且显示其实时变化情况,指标数据是指传感器或设备上的监控数据,例如:温湿度、电流电压以及各种开关量等数据。资产api的功能包括:进行资产管理过程中,对资产管理系统进行初始化时,将资产数据整理并导入系统中。

本实施例中的三维可视化显示单元包括大屏和移动终端。本实施中的数据中心智慧数据平台支持拼接大屏显示和移动终端显示。

实施例二

在图1和图2所示实施例的基础之上参见图3,图3为本申请实施例所提供的一种数据中心智慧数据平台的实现方法的流程示意图。

由图3可知,本实施例中数据中心智慧数据平台的实现方法,主要包括如下步骤:

s1:通过数据源获取数据中心的监控数据。

其中,监控数据包括zabbix数据、动力与环境监控系统所采集的数据以及日志信息。

s2:采用主动轮询和被动轮询相结合的方式融合不同的数据源。

具体地,步骤s2包括:

s21:对数据源中的基础设施进行资产管理、状态监控和性能监控;

s22:对数据源中的软件资源进行资产管理、状态监控、日志监控和性能监控;

s23:对数据源中基础设施和软件资源的负载进行统计分析;

s24:对动力与环境监控系统数据源进行管理。

继续参见图3可知,对不同数据源进行融合之后,执行步骤s3:对监控数据进行检测、存储和分析。

具体地,对监控数据进行检测、存储和分析,包括如下过程:

s31:利用公式y=(x-mean)/std对监控数据进行异常检测,并对检测合格的监控数据进行单条数据抽取及单条数据转换。

其中,x为当前要检测的值,mean为前五个值的平均值,std为均方差,当y大于设定阈值大时,判定当前监控数据为异常值,进行异常报警,同时更新平均值和均方差。

s32:对监控数据进行map/reduce处理。

s33:采用hbase数据库存储来自zabbix数据源和动力与环境监控系统数据源的实时监控数据、监控参数及map/reduce处理后的监控数据,以及按照时间和设备类型存储日志信息。

s34:对当前业务进行分析获取对当前业务的总览,以及当前业务对其他业务的影响和拓扑关系。

s35:设置告警指标基线、告警升级规则以及自动压缩资源。

对监控数据进行检测、存储和分析之后,执行步骤s4:利用api接口对实时监控数据、监控参数及检测、存储和分析处理后的监控数据进行三维可视化显示。

进一步地,本实施例中数据中心智慧数据平台的实现方法采用javascript语言开发。

可以将本方法部署在node.js应用服务器上,为前端界面提供查询数据、添加数据、修改数据和删除数据的功能。软件件的前端基于浏览器运行,通过javascript脚本调用浏览器的webgl接口,实现三维用户界面的展示。通过javascript脚本接受鼠标键盘输入,实现三维界面和用户的互动,并通过ajax调用读取后台的业务数据,用户操作三维界面后,也能通过ajax调用回写数据到服务器。

本实施例中数据中心智慧数据平台的实现方法通过websocket实现实时数据通讯。如:通过webstorage实现数据缓存。

本实施例中未详细描述的部分,可以参见图1和图2所示的实施例一,两个实施例之间可以互相参照,在此不再赘述。

以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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