分享
2023年基于ELK的高校数据中心运维多层面监控平台研究与实践.docx
下载文档

ID:1274985

大小:21.17KB

页数:5页

格式:DOCX

时间:2023-04-19

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023 基于 ELK 高校 数据中心 多层 监控 平台 研究 实践
基于ELK的高校数据中心运维多层面监控平台研究与实践 摘   要:为了及时发现隐患和故障,提高高校数据中心的运维效率,需要对数据中心软硬件系统的性能、状态、日志等进行监控。文章以ELK为数据采集和存取平台,并借助Shell脚本强大的系统管理功能,设计了监控代理,实现了在监控平台中对多数据源的处理。經过实践,文章设计的监控平台,能实现高校数据中心的多层面监控,为数据中心高效管理提供支撑。 关键词:数据中心;ELK;运维监控;监控代理 中图分类号:TP391 文献标志码:B 文章编号:1673-8454〔2023〕07-0093-04 一、引言 由于受到运行环境、设备生命周期、系统变更、系统漏洞、系统性能、网络功击,以及人为误操作等影响,数据中心的根底设施和软硬件系统,在运行过程中经常出现隐患和故障。通过多层面监控,能及时发现这些隐患和故障,提高运维效率,为数据中心的平安、稳定、可持续运行提供保障。因此,数据中心多层面监控意义重大。 系统性能和运行状态能反映出设备运行的稳定性和可持续性。系统日志记录了系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。运维人员可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹[1]。因此,数据中心运维监控,不仅要监控系统性能和运行状态,还要监控和分析系统日志。 由于高校数据中心运维,受到本钱控制的影响,一般会采用开源监控平台来实现数据中心监控。当前大多数数据中心采用Zabbix、Splunk等开源平台来实现监控。随着ELK功能不断完善,也被一些数据中心用来作为监控平台和日志处理平台。这些监控系统,虽然性能优秀,有些功能非常实用,但从高校数据中心多层面监控角度来看,或从易用性角度来看,还有必要改良,或在此根底上进行运维开发,实现全面监控,以进一步提升监控水平。由于ELK性能较好,开放程度较高,开发接口丰富,本研究以ELK为根底,进行架构设计和数据中心运维开发实践。 二、ELK简介 ELK是ElasticSearch、Logstash、Kibana三个开源软件的简称,是一个日志实时处理平台[2]。ELK之间的合作机制为: Logstash作为信息收集者,用来搜集、分析、过滤软硬件系统的日志。它支持大量的数据获取方式,工作方式为C/S架构。通过把客户端〔Beats〕程序安装在计算节点上,或者在网络设备或存储设备中配置Syslog、SNMP Trap等功能,来实现日志或性能数据的过滤和处理,然后将其处理结果推送到ElasticSearch 平台。 ElasticSearch作为数据的保存者,保存来自Logstash收集的数据,同时提供数据操作的API,以及ElasticSearch集群管理。 Kibana 是为 ElasticSearch设计的开源分析和可视化平台。主要用来搜索、查看存储在 ElasticSearch索引中的数据,并通过HTML5技术在浏览器端实现数据可视化。 ELK的Beats是采集系统监控数据的Agent,它可以发送不同类型的数据到ElasticSearch中,也可以行将采集完的数据发送到Logstash中转,然后再推送到ElasticSearch中。Beats包含多种工具,如:采集网络流量数据的Packetbeat;采集文件数据的Filebeat;采集 Windows 事件日志数据的Winlogbeat;采集系统级监控数据的Metricbeat等等。 ELK的架构如图1所示。 三、ELK在数据中心多层面监控中的缺乏 尽管ELK整体性能和功能较好,但经过笔者对ELK平台的运维开发实践,发现它在数据采集及可视化方面存在缺乏。数据采集方面,尽管结合Beats能采集到IT设备的日志和性能数据,以及SNMP Trap等信息,或通过Logstash插件的方式采集其它信息,但是,这种方式不能够获取较为全面的监控数据。例如:采用Winlogbeat采集Windows Server系统日志时,只能采集到事件日志,不能采集到事件跟踪日志;目前还不支持一些常用的应用程序或效劳〔如Tomcat、Weblogic等等〕的性能数据和运行状态的采集;尽管Logstash提供了插件方式采集数据,但是通过这种方式采集空调、UPS等根底设施的运行状态相关数据,以及效劳器虚拟化及虚拟机运行状态时难度较大。在可视化方面,Kibana应用可定制性和可扩展性较差,无法通过它对非Logstash收集的数据〔如上述根底设施的运行状态数据〕进行可视化展示。 四、高校数据中心多层面监控开放平台设计 1.高校数据中心运维对象 高校数据中心支撑着学校的教学、科研、管理及效劳等信息化,一般会配备功能完善的软硬件设施。根据当前高校数据中心管理模式及运营模式,其架构包括三个层次:底层为承载IT设备平安、稳定运行的根底设施,如空调、UPS、温湿度、门禁、消防等硬件设施;第二层为IT设备层,是提供IT效劳的核心,包含多种设备,如数据存储设备、效劳器、数据备份设备、网络设备、平安设备、负载均衡器、高性能计算平台等硬件资源;第三层为数据中心的软件系统,如操作系统、云平台、大数据平台、数据库、中间件、应用程序等软件资源。这三个层面的软硬件设施均属于运维对象。 2.计算节点监控代理研究 ELK 的Metricbeat工具可以获取操作系统的 CPU和内存使用率、文件系统、磁盘 IO 和网络 IO等统计数据,它也支持多种模块,比方Apache、HAproxy、MySQL、Nginx等[3]。 Metricbeat虽然能收集多项性能数据,也支持多个模块,但目前还不支持一些常用的应用程序或效劳。例如:当前最新版本仍然不支持高校数据中心常用的Tomcat、Weblogic等Web中间件的监控,也不支持Linux KVM、Windows Hyper-V效劳器虚拟化平台的监控。另外,由于数据中心需要监控的对象较多,如果都采用logstash来处理数据,将会增加Logstash的运行压力。因此,需要一个功能全面、开放性好的监控代理作为计算节点监控工具的补充。通过使用该代理,不仅能收集操作系统的性能数据,也能收集当前Beats不支持的应用程序或效劳的性能数据,同时能分担Logstash的运行压力。 2.SMonCgi实现 Windows Server系统的SMonCgi采用基于.Net Framework技术,用PowerShell编成实现[6]。当SMonCgi接收到客户端发起的数据采集需求时,SMonCgi去执行PowerShell脚本文件。在PowerShell脚本文件中执行PowerShell的Cmdlet或自定义函数〔通过PowerShell脚本模块实现〕,并对Cmdlet或自定义函数的执行结果格式化后返回给客户端。 Linux系统的SMonCgi采用C语言实现。底层用的是面向链接、可靠的字节流传输TCP协议,同时应用Sock编程、多线程编程、管道、CGI等技术。当SMonCgi接收到客户端发起的数据采集需求时,SMonCgi去执行Shell脚本文件。在Shell脚本文件中执行Linux系统命令,并对命令执行结果格式化后返回给客户端。 SmonCgi通过指定Client地址,到达限制访问的目的,增强该SMonCgi访问的平安性。 3.IT硬件资源SNMP Trap和syslog配置 就效劳器而言,先进行效劳器管理端口的网络配置,然后通过在远程管理模块〔如HP效劳器的iLO、DELL效劳器的iDRac等〕中启用SNMP Trap 和Syslog效劳,并指定目标IP和端口〔与Logstash相关配置一致〕,即可收集到报警信息和系统日志。就网络设备、存储设备等而言,可通过Console口或Web管理页面进行与上述效劳器类似的相关配置。 通过在计算节点中安装SNMP 客户端,结合SNMP get等命令,编写CGI脚本〔如获取存储系统性能的脚本〕。在监控平台中请求SMonCgi执行该脚本,即可获取相关数据。 4.监控平台开发实践 该平台采用“Maven+Spring+SpringMVC+Hibernate+Mysql〞整合开发框架实现后台开发,并采用ElasticSearch Java高级别REST客户端〔The Java High Level REST Client〕开发ElasticSearch相关应用,实现索引及文档的增删改查功能。前端采用HTML5,并结合JQuery及其多种组件实现监控平台数据的可视化。 六、结束语 本文对ELK日志分析平台进行了研究及实践。在多个IT设备上,根据实际情况,部署Beats,配置Syslog和 SNMP Trap实现了性能数据、告警信息和系统日志采集。并结合ELK在数据中心监控方面的缺乏,设计了开放性较好的计算节点监控代理程序SMonCgi,并把该代理程序部署在Linux系统和Windows Server系统中,进行性能数据的收集。根据高校数据中心针对不同层面的软硬件设施运行状态、性能数据、报警信息、系统日志的采集及处理实际要求,提出了一种多层面监控的开放平台架构。最后对该架构进行实践。经过实践,本文设计的监控平台,能针对不同层面、不同监控目标,采用不同技术手段实现监控,为高校数据中心高效管理提供支撑。 参考文献: [1]百度百科.系统日志[EB/OL].s://baike.baidu/item/系统日志/9389581?fr=Aladdin. [2]周映,韩晓霞.ELK日志分析平台在电子商务系统监控效劳中的应用[J].信息技术与标准化,2023〔7〕:67-70. [3][EB/OL].s://elastic.co/guide/en/beats/metricbeat/current/metricbeat-modules.html. [4]叶水勇.信息机房动力环境监控系统的研究与应用[J].東北电力技术,2023,40〔8〕:18-21. [5]百度百科.IPMI[EB/OL].s://baike.baidu/item/IPMI/2552078?fr=aladdin. [6]潘春华.基于PowerShell脚本和轻量级Web效劳的IT系统运维监控Agent设计与实现[J].网络平安技术与应用,2023〔7〕:68-69,71. 〔编辑:王晓明〕

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开