陈宜荣
(江苏省徐州经贸高等职业学校 江苏 徐州 221004)
现阶段,我国很多企业已经构建了信息资源集成云管理系统,在一定程度上达到了虚拟化小型设备、PC 服务器和存储等相关设备的目的,亦开展了相应的系统运维工作。针对这一方向,学者们同样做出了相应的研究,曾波[1]探究了云环境下信息系统运维管理发展情况,对服务器虚拟化架构和智能运维系统框架做出阐述,进一步明确传统运维模式在向云计算转型时存在的问题,探索基于云环境的信息系统智能运维模式;麻建等[2]对云环境下的信息系统运维模式进行阐述,确定其运维体系及管理模式,亦对后期运维工作所需考虑的重点工作进行相应展望。然而,云计算技术目前正在采用“能力分散化、管理集中化”的方式冲击信息系统架构及其运营,在信息系统的推广以及使用过程中,核心虚拟化技术在很大程度上加大了传统运维工作的难度,诸多基础设备以及通用软硬件平台呈现出几何式的增长之势,信息系统所用监控和数据分析方式已经无法有效满足其运维要求。对此,需要以大数据技术为支持转变以往运维方式,切实提升信息系统运维智能化水,在缓解运维压力的同时为运维质量提供可靠保证。因此,本文研究一种云计算环境下的大数据信息系统运维模式,通过跟踪与分析云平台信息系统日志,达到优化资源管理的重要目的,在大数据技术运维支持下最大限度地节省成本支出,提供更为优质的信息化服务。
在虚拟化技术持续发展的过程中,信息系统运维技术随之发生了很大的变化,在此过程中,云计算应用普及程度越来越高,运维人员不仅要具备足够的传统运维知识与技能,还要对信息系统中各项业务资源的使用特点有一个全面与细化的认知,例如将信息系统到底属于计算型、内存型、IO 型还是存储型等确定下来,此外,还要做好各种相关资源的规划工作,对扩容规则做出具体的定义。由此,信息系统全部硬件资源的调配都需要很多的服务器运行数据为其提供重要支撑,这就为大数据技术的有效运用开辟极大的空间。以大数据技术为支持,对各种类型的运维指标进行定义,同时,执行日志的统一收集任务,在mongoDB 等非关系型数据库的运行支持下完成对多样性数据的保存工作,将全部数据一同写入Hadoop 集群,进一步地,从更多维度离线式分析收集到的各类数据,进行曲线图的绘制,与先前完成定义的指标作比对,建立起和监控报警系统之间的关联,最终将监控数据中心性能以及预测其可用性趋势的作用全面、有效地发挥出来。
在云计算环境下,以大数据技术为基础的信息系统运维平台主要包括4 个功能模块,分别为采集器、数据存储、大数据分析与展示(图1),依次对应于大数据应用下的数据采集、数据存储、数据分析与挖掘以及数据信息展示4 个重要环节。
采用分布式采集方式,动态性地执行分布式采集任务,采集频率高,对所有能够采集到的数据进行抓取,例如,抓取主机和网络等运行信息、采集网络交换机接口流量、读写存储池等。
该模块进一步划分为两个子模块,分别为结构化数据库MySQL[3]与非结构化数据库MongoDB[4]。其中,前者对系统配置信息与数据中心下的基础设施基本信息进行存储,数据量比较小,结构较为稳定,不会发生明显变动;后者则用于基础设施运行数据以及日志信息的存储,数据产生频率和实时性要求都比较高,结构不稳定。通过搭配使用结构化与非结构化两类数据库,可以有效发挥其互补优势。
其为整个信息系统运维平台中最为核心的一个模块,主要是对收集到的各类信息进行全面与准确分析。模块采用Hadoop 结构,Hadoop 对任务进行调度,同时,执行对分布式文件的存储任务,Spark 将数据放置于内存中,并通过MapReduce 完成计算任务。Hadoop 结构可以有效提高数据处理效率,有利于日志分析实时性要求的有效满足,此外,亦可以在数据库中存储计算结果,既能避免重复计算问题的发生,又可以为用户查询提供便利。
运用图表工具,通过图形化的方式完成对监控系统、大数据和各渠道收集与处理的数据的展示任务,用可视化的图形更加直观与形象地反映原本抽象的运维数据,实现对各基础资源运行状况以及具体分析结果的展现,增强数据信息可理解性,加强技术与非技术人员的共同关注。
数据采集模块的主要功能在于对原始数据进行采集,各组件从自身监控的硬件或软件设备中采集原始数据,并将这些数据存储至本地数据库中。在此基础之上,数据分析模块结合具体的业务场景分析与汇总所有的原始数据,完成对不同场景下各类报表的实时与准确展示。数据汇总分析对定时与事件触发相结合的方式加以采用,图2 为数据采集模块架构示意图。
采集控制中心在整个数据采集模块中发挥着中枢的作用,其功能体现在管理与监控之上。(1)采集器监控管理:主要是注册、修改、删除、启用或禁用采集器,此外,亦需要对采集器的实际运行状态进行监控。(2)采集任务分配:主要是向各个采集器下达事先设定好的采集任务,为数据的准确与高效采集提供支持,若某一采集器出现异常或故障,自动转移其采集任务至其他相关类型的健康采集器上,确保数据采集能够满足连贯性要求。(3)在采集任务的进行中,采集器扮演的是实际执行者的重要角色,部署方式为分布式部署,启用与禁用都非常灵活。(4)心跳信息发送:采集器按时向采集控制中心发送自身的健康信息数据,保证采集控制中心对采集器监控的实时性与准确性,结合采集器的实际情况,采集控制中心作出是否转发采集任务的决定。(5)接收采集任务:对采集控制中心下达的采集任务进行接收。(6)数据采集:基于采集控制中心下达的采集指令,执行对目标设备实际数据信息的采集任务,同时,向数据库引擎发送采集数据,由数据库引擎进行数据的存储。
数据库存储组件主要是为了应对MySQL 与MongoDB 存储而设计的接口,以采集到的数据类别为依据,调用采集系统对应的接口,持久化至对应数据库,此任务按照以下步骤来完成:(1)对采集数据进行结构化与非结构化两种不同类型的判断,确定执行具体存储任务的数据库类型;(2)根据存储数据类型与数据库的不同,按照对应的格式对数据进行处理;(3)完成对数据库存储接口的调用任务,将其持久化至对应数据库。数据存储模块流程图见图3。
在信息系统运维平台中,大数据分析模块是其最为核心的一个模块,该模块采用分布式系统架构。采用原因在于分布式系统容错率比较高,当运行于x86 架构的PC 机与服务器上时,可以很好地发挥出降低服务器成本的作用。
Hadoop 平台是以Google 分布式系统为基础的开源实现,包括HDFS、MapReduce、Hive 等基本组件。(1)HDFS,即Hadoop 分布式文件系统(Hadoop Distributed File System),是一种对集群网络中多台计算机存储进行管理的分布式文件系统,可在普通商用服务器节点上部署,容错性能强,可靠性高。HDFS 遵循流式数据访问的设计思路,在牺牲部分一致性的条件下,实施一次写入、多次读取大数据的模式,达到高速访问数据的目的。(2)MapReduce。一种用于并行处理的数据模型,可在多个计算节点进行大规模计算分析任务的分配,提高统计分析任务的效率。图4 为MapReduce 计算模型[5]。输入数据接收系统的分片处理,每个输入分片启动一个单独的Map 任务,并生成多个键值对,在本地硬盘中进行存储。Map 后的结果经网络传输由运行Reduce 任务的节点接收,Reduce 函数对其进行合并处理,并将最终的结果保存于HDFS 中。(3)Hive。构建于Hadoop 上的数据仓库框架,可将HiveQL 查询有效地转换为MapReduce 任务,便于不熟悉Java 与MapReduce 程序开发的工程师利用Hadoop进行海量数据的统计与分析,减小HiveQL 程序向Hadoop 平台移植的难度。
基于Hadoop 架构的支持,在对大数据进行处理之时,任务可以被分布式计算和分解,同时运行于多个节点之上,就算是集群上某一服务器出现错误,在其他服务器上依旧可以有效保持正常工作状态,整个过程并不会出现中断的状况。
针对已经存储下来的各项数据,信息系统维护平台会将其提取至HDFS 上,进一步地,Spark 与计算任务所提要求相结合获取相应数据,并确定具体的算法模型,执行对数据的统计分析任务,最终以图表的方式将具体的分析结果展示于界面之上。
在完成对信息系统运维平台的开发任务以后,需要对其功能作相应测试,判断平台各模块能否正常运行,以此为基础验证平台是否可以满足使用所需[6]。测试过程中,由于信息系统运维平台运行于云计算环境之下,以大数据技术为支持,因而仅需在PC 机上执行对平台各项功能的测试任务即可。此处以基于信息系统运维平台的设备监控功能模块为例,该模块能够对运行着各种操作系统的服务器自身硬件设备诸多指标信息,如主板、中央处理器、内存、硬板以及电源等利用率、传输速率等进行监控,有利于服务器设备使用高峰期以及空档期的掌握,以此为基础,平台使用人员可以及时采取应对措施,对高峰期服务器资源使用率过高导致的信息系统运行速度变慢等相关问题的发生加以规避。经测试,设备监控功能模块测试合格(图5),意味着此模块开发可用性比较理想[7-8]。
本文对云计算环境下以大数据智能为支持的信息系统运维平台展开研究,可以实现对传统运维流程的优化以及工作效率的提升,不仅有利于日常开支的节省以及管理人员作业量的减小,还对信息系统各项相关资源加以优化。信息系统运维平台对诸多运维监测数据进行收集,通过分析这些数据,在很大程度上为准确性与合规性提供保证,使检查运维作业的开展更为简便,亦为未来云计算环境下以大数据技术为支持的信息系统运维平台升级与扩容奠定了基础。