摘要
计算机技术经历了并行计算、集群/分布式计算、网格计算等发展,现在已步入云计算时代。20世纪80年代,升阳(Sun Microsystems)提出了“网络式电脑”NC概念,21世纪初,Amazon通过打包、自助服务等业务出租其IT设备,并取得了空前的成功。随着云计算案例的成功,其影响力也正在逐步展开。本文阐述了从兴技术云计算在电信级系统海量日志管理的设计方案,望抛砖引玉。
正文
随着通信技术的不断发展,用户对新业务的需求以及对服务质量的要求也不断提升。通讯运营商需要适应新形式的要求,必须做出相应的调整。如以前的离线计费升级为在线实时计费;又或者升级新的通讯设备,等等。由此带来了一项新的挑战,即新环境产生大量的以前不曾有过的日志,并带来相关的问题,如:日志文件分散存放,数量多,可直接查阅日志文件保存周期短,极不便于运维;日志格式不一致,可阅读性过低;查询费时或超时,效率低下;相关日志的关联性低,无法清晰定位;大量的日志无法统计,无法准确的分析业务;
由于相关法规、政策或商业上的要求,运营商无法回避以上问题,必须保留、查询、分析处理这些大数据。基于关系型的传统数据库无法满足新形式下的要求,从兴技术凭借自身在通讯行业的经验与优势,依托云计算技术,建设了一个高效的通用云计算平台,将日志管理系统作为云平台的一个业务系统建设。这样设计的最大优势是业务系统作为上层应用,具备良好的扩展性和可堆叠性,满足信息的交换和处理,避免信息系统烟囱式的发展。
从兴SKCP(Smart Keen Cloud Platform)基于HDFS、M/R和Cassandra为核心的SK-Hadoop功能和SK-Store功能;以Flume为基础的SK-Pipe系统具备了高效的实时采集功能;配合SK-DETL分布式的ETL的任务设计、调度等功能,可实现日志数据的高效ETL.强大的企业管理器(SK-Admin)能对平台、节点、任务进行监控和管理等。
基于SKCP的日志管理系统的主要功能架构如下:
采集子系统提供了批量采集和实时采集功能。批量采集将系统各模块日志文件按目录采集到相应的目录中,以便入库。实时采集将系统模块正在产生日志文件实时传输到日志云平台。日志采集支持对采集文件进行压缩,减轻网络传输压力。支持对海量的小批量采集文件进行合并处理,以提高入库效率
日志云平台提供了程序发布和运行管理、系统资源监控;并提供日志云平台定时任务,如数据清理或数据迁移等。日志云平台支持联机在线下的新节点加入或退出。
日志分析模块采用XML文件配置方式,支持文件名称的匹配和字段解析匹配,具备灵活的自定义功能。
日志入库模块提供基础调度功能,按照业务的要求将数据加载到云平台中,支持霍夫曼压缩算法,支持多节点的分布式入库。
页面查询展示根据请求查询云平台得到相应的数据,并返回去前台展现。支持均衡负载,减少单个节点上的负担。
系统部署逻辑图:
系统完成部署并成功试商用。系统负载量为:业务系统每天日志总量约为2.8 T,按1:6的压缩比来计算,压缩后每天的日志量约500G左右;单节点入库速度平均10M+每秒;平均压缩比为2.5:1,数据冗余系数2;数据平均存储周期1+1个月,目前设计存储容量为40T,不使用磁盘阵列集中存储。
从实际运行情况考虑,基于从兴技术云平台的日志管理系统,采用成熟的技术,更低的成本、更高的业务效率,提供了完整的海量日志解决方案。