基于大数据日志管理系统的研究与实现

中国新通信 / 2017年12月02日 17:24

数码

巨杉案例 基于日志的大数据运维管理平台

胡聪+张靖+郭洋

【摘要】 云计算技术使软件和硬件资源的共享成为现实,用户的设备投资和管理投入大大减少,越来越多的应用系统在云平台上部署。云计算可以根据用户需求提供资源,资源实行动态分配,不仅会丢失应用程序日志,分布式日志是访问也不方便。而日志信息对于系统的运行和维护具有重要的参考价值,因此,对云平台的日志进行统一管理是十分必要的。本文则基于大数据云计算的背景,对日志管理系统进行了研究。

【关键词】 自动化系统 网络 端对端延时

一、概述

在大数据云计算背景下,在生产应中产生了大量的分布式、易丢失的日志信息,如电力系统信息平台的操作日志、登录日志以及信息修改日志等,这些数据数量庞大且结构特异,如何对其妥善存储是需要解决的问题。传统的数据库对大量数据进行处理时往往存在灵活性不高、水平扩展力不足、处理性能不好的问题。云计算中产生的大量分布式日志并不是独立单一的存在,其分析和处理需要综合进行。[1]本文通过对云计算环境下日志的特定和应用需求,针对常规日志处理分析手段的不足,对新型的日志处理方案进行了研究,对云应用的大量数据进行了采集、储存和分析。

二、大数据日志管理系统的功能和结构

根据日志管理系统的应用需求,日志功能系统可以划分为日志收集模块、日志存储模块、日志分析模块以及应用交互模块四个功能模块。日志管理系统的功能结构图如下图所示。

日志管理系统采集了系统中不同服务器、不同位置的各种日志信息并进行了存储和集中管理。日志数据的统一管理是日志管理的先决条件,工作人员可以在该数据库的基础上对日志执行查看和简单的分析处理,发挥日志的深层价值。日志收集模块的功能在于日志信息的采集、输送、集合,将其存入储存模块。日志存储模块具有存储容量水平扩展的能力,相对而言水平扩展的性价比和扩容能力更高,系统的分布式存数库依靠PC机为储存节点,采用冗余存储的方式提高了系统的可靠性。副本集读取和写入相分离的方式在读多写少的日志管理系统中应用,可以使读写压力大大缓解。日志分析模块在日志挖掘中采用分布式计算的方式,对单机分析日志的局限性问题进行了很好的解决。应用交互模块把代码逻辑分为视图部分、控制器部分、数据模型三部分,三部分职责分明,系统的维护性和可扩展性得到加强。视图部分提供了用户交互界面,对用户的录入操作进行接收,并输出操作结果。[2]数据模型部分对应用程序数据逻辑进行处理。控制器部分接收用户请求,实现视图和模型的有机配合,满足客户需求。

2.1日志收集模块的功能和结构

(1)日志收集模块的功能。

1)分布式日志收集模块具有较强的水平扩展能力,可以收集大数据背景下产生的应用日志,并根据对象的规模调整日志收集节点。

2)实时收集产生的日志,避免日志的丢失。

3)日志的收集和系统功能互不影响。

4)适应性强,能够适应各种形式的日志收集。

(2)日志收集模块的结构。

日志收集模块的可靠性高、能效性强,在数据收集的同时可以对其进行简单处理,日志收集模块的结构如下图所示。

日志收集模块主要由日志的收集、转发和存储三个层次组成。在云计算背景下,当某个网络设备被更换以后,其之前产生的所有日志信息都被日志采集进程采集并进行存储。当有新设备部署到网络中后,日志采集进程会自动部署采集进程,采集新设备的运行日志。

2.2日志存储模块的功能和结构

(1)日志存储模块的功能特点。

1)在大数据背景下的运行系统中,每天会产生海量的日志信息,这就要求存储模块具有高效的存储和读取能力。

2)运行系统产生的日志结构复杂各异,因此,存储模块的数据库具有无固定模式且水平扩展能力强。

(2)日志存储模块的结构。

日志存储模块在水平扩展过程中,采用增加分片服务器的方式,提高系统的数据存储能力。数量庞大的日志信息被在多个服务器上分布式存储,数据的存储情况对用户是公开的,当数据访问请求发送到路由服务器时,首先通过配置服务器查询数据存储地址,根据产寻结果在分片服务器调取数据信息,并将结果整合后传递给用户。[3]日志存储模块的结够如下图所示。

为提高系统的可靠性,日志存储模块的各级服务器都进行了冗余备份,当有服务器出现故障停止运行时,备份服务器就会接替故障服务器的工作,为确保服务器数据的一致性,服务器之间设有定时同步机制。为提高服务器的读写速率,分片服务器采用了读写分离的方式,并且数据的读取选择距离最近的节点,从而有效的降低了网络延时。

2.3日志分析模块的功能和结构

(1)日志分析模块的功能.

日志分析模块将无法在单机模式下日这分析任务提交给数据库集群,数据库分布式集群节点计算能够将日志分析的速度大大提高。日志分析模块的工作流程如下图所示。

(2)日志分析模块的结构。

日志分析模块把大数据的日志文件拆分成数个小日志文件,在利用数据库集群进行统计计算,将计算结果进行处理后存储在数据库集群中,最终通过交互模块读取并显示。

2.4应用交互模块的功能和结构

(1)应用交互模块的功能。

应用交互模块提供的操作界面是用户与日志数据接触通道接口,其可执行日志的查询导出等操作。应用交互界面擦用数据显示和业务逻辑编码分离组织的框架,业务逻辑在一个部件聚集,在改进和个性化设置用户界面和交互性能的时不需要对业务逻辑进行重新编写。应用程序之间的部件相互独立,在进行修改时互不影响,這种松耦合的构造十分便于维护和管理。

(2)应用交互模块的结构。

系统中应用交互模块的结构采用MVC型,其框架类型为Codelgniter。该框架提供的标准库内容丰富且接口和逻辑结构简单。

其优点有结构小巧但性能出色,软件的兼容性强,可以和各种版本PHP兼容,不用使用命令行,缺少限制性编码规则,简单易操作。

三、大数据日志管理系统的应用

将系统部署在电力企业信息处理服务器上,用于收集系统在生产运行过程中的日志信息。其部署图如下所示。

日志收集节点将收集到的日志信息聚合储存到数据库集中,利用数据分析功能对其进行处理后将处理结构再次存储到数据库中,此时运行管理人员可以通过日志查询管理界面度日志信息进行进行查询,另外可以通过建立索引的方式加快大数据日志信息的查询。

五、结论

本文通过对云计算环境应用日志的特点分析,针对传统日志处理方式的不足,结合用户需求,本文对大数据日志管理系统的功能特点和结构特点进行了分析和研究。设计并实现的基于大数据的分布日志管理系统可以对大数据平台产生的庞大日志信息进行处理和分析。对大数据平台的日志管理工作具有一定的参考意义。

参 考 文 献

[1] 吴吉义,傅建庆,张明西等.云数据管理研究综述[M].电信科学,2010,26:39.

[2] 吴朱华.云计算核屯.技术剖析[M].人民邮电出版社.2011,12-14.

[3] 张华强.关系数据库与NoSQL数据库[J].电脑知识与技术,2011,31-34.

1.环球科技网遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.环球科技网的原创文章,请转载时务必注明文章作者和"来源:环球科技网",不尊重原创的行为环球科技网或将追究责任;3.作者投稿可能会经环球科技网编辑修改或补充。