论文部分内容阅读
在大数据广泛推广的时代背景下,很多单位都对计算机系统包括数据系统安全性和稳定性提出了较高的要求,特别是支撑计算机应用及业务系统安全稳定运行的IDC机房基础环境,必须时刻保障设备正常运转,以及网络的稳定运行,在次背景之下,基于大数据技术的智能化运维管理手段如雨后春笋般不断涌现。其中,搜集设备运行日志,并在收集日志的基础上做更深入的统计分析,已经成为机房运维人员急需的运维手段,及时发现系统漏洞、网络攻击等行为,采取针对性措施解决问题,并能够提前预知问题,已经成为很多运维工作的主导方向。而在日志的分析处理方面,传统的离线分析处理已经很难满足实时准确预警的需求,而在这个时候,基于大数据技术的SparkStreaming等分布式实时处理框架开始进入我们的视野,这时候的所进行的日志分析处理所表现出来的实时性更进一步,而支撑业务稳定运行的机房运行维护的预警功能在实时性要求更加强烈,因为这关系当网络安全以及系统安全,对于业务系统数据有着非同寻常的重大影响。而本文研究的基于Spark Streaming技术的机房日志分析系统,就可以将机房收集的日志与大数据分布式流计算模式向结合,得出预警信息。本文设计的系统是利用服务器及网络安全等设备的日志数据利用Flume日志收集系统来完成收集收集工作,同时选用Kafka消息订阅系统对Flume日志收集系统收集过来的日志数据源进行数据缓存,然后通过Spark Streaming流处理机制对数据进行进一步的解析和统计分析工作,部署Hadoop集群中,采取以Spark On Yarn模式运行,依靠Yarn来调度Spark,提升Spark运行性能,Spark是基于内存计算的,所以本系统的实现要去内存性能要足够高,在搭建Hadoop分布式集群环境时需要提前这个因素,然后在次基础上再部署Spark on Yarn模式。本项目完成之后能够做到监控数据中心机房服务器及网络安全的设备的健康状况,并可以通过运维管理人员的实时查询得出预警结果,进而降低数据中心机房的网络安全及设备安全的风险,使得机房内运行的各个设备及信息系统安全稳定的运行。Kafka和Flume是相当稳定的系统,利用二者进行的日志数据收集和传输工作,很大概率都是稳定的,不会因此造成数据的丢失。Flume在某些特殊情况下,可能会导致传输数据的丢失,但是稳定可靠的Kafka能够不让此类事情发生,因为Kafka可以采取集群方式来运转,当某个节点出问题的时候,能够快速通过恢复机制保存数据,所以二者结合起来,可以保障日志数据的完整性和统一性。组合使用Kafka和Flume两种技术框架,常用的设计模式就是设计Flume+Kafka的分布式数据流模型,Flume作为消息的生产者,而我们这次项目就是根据这种技术模式来完成日志收集和传递。