基于IPMI的智能集中监控系统的设计与实现.doc

上传人:asd****56 文档编号:70342511 上传时间:2023-01-19 格式:DOC 页数:8 大小:612KB
返回 下载 相关 举报
基于IPMI的智能集中监控系统的设计与实现.doc_第1页
第1页 / 共8页
基于IPMI的智能集中监控系统的设计与实现.doc_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《基于IPMI的智能集中监控系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于IPMI的智能集中监控系统的设计与实现.doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、基于IPMI的智能集中监控系统的设计与实现The design and Implementation of intelligent centralized monitoring system which based on IPMI摘要:空管自动化系统是空中交通管制的指挥核心,设备维护人员必须及时有效掌握自动化系统设备运行状态,排除设备存在的安全隐患。本文针对空管自动化系统地理位置分散、软硬件差异大的特点,设计并实现了一套基于IPMI技术的智能集中监控系统。该系统充分利用了IPMI技术独立于系统软硬件的特点,使用现有自动化系统的网络资源,实现了对自动化系统中不同软硬件架构的服务器的集中监控。该系

2、统的使用,对于减轻设备维护人员的工作强度、提高系统安全余度,能取得很好的效果。关键词:空管自动化系统;集中监控系统;IPMI空管自动化系统是现代化空中交通管制的指挥核心,是信息汇聚、处理和分发的中心。它利用多种处理技术对雷达数据、ADS数据、电报数据进行实时分析、处理、加工、融合,为空中交通提供一个大范围内的已经融合处理好的实时空中交通动态场景,以帮助管制员维持快速、安全、高效的空中交通秩序。然而,对于空管自动化系统的维护人员而言,自动化系统有效的统一管理一直是个难题。面对为数众多、地理位置分散、软硬件架构不同的空管自动化系统,设备维护人员为了掌握各个子系统的工作情况,及时发现异常情况,通常需

3、要在值班期间不厌其烦的到现场一台台的检测。虽然在网络出现以后,值班人员可以通过网络远程登录到各个工作站和服务器上,通过远程管理各个子系统。但面对数量众多、涉及多个硬件平台和操作系统的空管自动化系统而言,非常的繁琐和复杂。特别是近年来,随着航班流量的日益增长,管制席位的数量也不断的增加,这不仅增加了设备维护人员的工作量,也使得设备维护人员出错的几率大大增加,对于民航飞行安全而言也是一种隐患。为此,本文设计并实现了一个跨越多个硬件平台和操作系统的智能管理系统基于IPMI的智能集中监控系统,为维护人员对自动化系统的集中监控和管理带来了方便。1. IPMI技术介绍IPM I ( Intelligent

4、 Platform Management Interface)是由Intel、HP、Dell、NEC四家公司制定的一套跨平台管理和监控服务器工作状态的接口规范。其目的是为了让系统管理员能够在单一的控制台上实现对不同软、硬件平台的服务器进行监视和管理。通过IPMI规范,系统管理人员可以有效的对服务器内部的电源、风扇、CPU、内存、硬盘等各个部件的工作状态进行监控。其独特之处在于,IPMI规范采用了基板管理控制器BMC(Baseboard Management Controller),在完全单独的芯片上实现,独立于CPU、BIOS和操作系统,只要服务器的主板接通电源,不管服务器的状态如何,都可以提

5、供远程检测、管理和恢复功能,从而协助系统管理人员迅速诊断系统故障的原因,在尽可能短的时间内重新恢复工作1。IPMI实现控制和管理的核心是实现在独立芯片上的基板管理控制器。BMC的职责在于提供了一个系统底层硬件和上层管理软件交互的中间层。通过采集各个传感器信息并转换为相同的消息格式发送给不同的控制器和管理软件,同时把从系统内部总线、网络、串口、调制解调器等不同信息通道接收的控制命令发送给相应的控制器,从而实现在异构软、硬件平台上的远程管理2。IPMI的系统整体架构如图1所示:图1、IPMI的系统整体架构图可以看出,整个IPMI除了有BMC系统核心外,还有SDR、SEL、FRU、ICMB、IPMB

6、子系统构成。SDR(Sensor Data Record)传感器数据仓库包含了系统中所有传感器的信息,在每个单独的SDR中包含了把传感器读数转化为标准单位的公式和系数。BMC通过SDR得到传感器的位置、类型、门限等一系列信息。这些数据可以不通过CPU和BIOS而自由存取。IPMI会将采集到的CPU状态信息、风扇转速信息、温度信息等信息作为系统事件日志存储到SEL(System Event Log)中。使得系统管理员能够对系统历史状况有一个全面的了解,从而让系统管理员更容易定位系统的故障点和故障隐患。IPMI还支持FRU (non-volatile Field Replaceable Unit)

7、的存储与访问。系统可以将存在于主板上的各个系统组件的信息存储到FRU当中。这些信息包括设备序列号、部件号、型号、资产标签等等。这样就相当于拥有了一份各个系统组件的配置资料,即使管理员是通过远程访问该主机,也能够立即掌握主机内各个部件的详细信息。IPMI标准为了实现跨平台系统的管理,提供了IPMB(Intelligent Platform Management Bus)接口和ICMB(Intelligent Chassis Management Bus)接口。分别和不同服务器之间的通讯。IPMB基于I2C标准实现,用于实现主板上不同组件之间的通信。ICMB接口则主要用于实现不同服务器之间的通信。

8、通过IPMB和ICMB接口,IPMI标准真正实现了对软、硬件异构的系统的访问和管理3。2. IPMI的SOL消息接口空管自动化系统中执行不同任务的主机通常也处于不同的地理位置,且相距较远,所有主机都仅能通过远程网络进行通信。为了能远程集中监控处于不同地理位置的主机,我们必须有一种手段能够通过网络监控主机的运行状态,并修复操作系统和BIOS的异常,IPMI的SOL消息接口则正好为我们提供了这样一种手段。SOL是Serial Over Lan的缩写,它提供了一种机制,可以将基于IP网络的UDP消息重定向到本地串口,而且这种重定向是基于BMC实现的,完全独立于操作系统和BIOS。当系统发生故障时,系

9、统管理人员就可以通过串口进行BIOS、操作系统的相关配置,从而修复系统。由于SOL完全基于BMC实现,因此,当系统正常运行时,我们也可以通过SOL访问BMC,从而进一步获取主机上各个部件的运行状态,达到远程监控的目的。SOL消息被设计成RMCP+协议的一种负载。RMCP(Remote Management Control Protocol)是一种简单的应答协议,它完全基于IP网络的UDP包实现,IPMI中所有的LAN消息都是通过RMCP包传输的。RMCP+是基于RMCP协议的一种扩展,它完全兼容RMCP包,并扩展了RMCP的认证、加密和发现功能4。一个标准的RMCP+包如表1所示:表1、RMC

10、P消息格式字段字节数描述版本106h保留位100h序列号1可变消息类型17RMCP ACK0通用RMCP消息1RMCP ACK消息6:5保留4:0消息类型0-5保留6ASF7IPMI8OEM其他位保留数据可变长度基于消息类型的附加数据IPMI消息被封装为RMCP包并最终被封装成以太网帧通过IP网络发送,具体的封装结构如图2所示:图2、RMCP帧封装结构由于IPMI必须适应异构软硬件结构上的差异,所以IPMI采用了基于消息的信息传递机制实现各个子系统之间的通信。采用消息式的通信机制能够有效的屏蔽不同硬件之间通信的差异,IPMI消息通过BMC的转换变换为对应的物理信号发送给各个子系统,同时BMC又

11、将收集到的不同的物理信号变换为结构相同的IPMI消息发送给不同管理软件或其它的BMC,从而有效的实现了异构软硬件平台上的信息传递。IPMI中所有的消息都采用相同的格式,一组典型IPMI请求/响应如下图3所示:图3、IPMI请求/响应消息结构其中,IPMI消息帧中各个域所包含的内容如表2所示:表2、IPMI消息帧中各个域对应的内容rsAddrrqAddrrsAddr/rqAddr域表示请求/响应的地址。长度为1Byte。当该字节的最低位为0时表示请求/回复响应的组件的地址码,当最低位为1时表示请求/回复响应的软件ID。该字节的高7位表示具体的地址码和软件ID。当BMC作为请求/响应者时该字节为2

12、0h。netFnnetFn域表示请求或响应的功能类别。长度为1Byte。当该字节为偶数时表示此消息是一条请求,当该字节为奇数时表示此消息是一条响应。当消息是一条基本的控制请求或状态响应时该字节为00h和01h。rqSeq/rqLUNrqSeq/rsLUN这个域的长度为1Byte。其中高6位为rqSeq域,它是由请求者自行生成的一个序列号,当有多条请求时用以标识不同的请求;低2位为rqLUN/rsLUN域,它是响应/接收该消息的组件的子组件号或子地址号。cmdcmd域表示具体执行该请求或回复该响应的命令代码。长度为1Byte。request data bytereqponse date byte

13、data域在请求中表示cmd域指定的命令需要附加的数据,在响应中表示回复对应请求的数据。长度为0个或多个字节,具体长度由相应的命令定义。completion codecompletion code域表示对应请求中cmd域指定的命令执行后的状态。长度为1Byte。checksumchecksum域表示校验和。长度为1Byte。第一个checksum域记录连接头的校验和。第二个checksum域记录从第一个checksum域到第二个checksum域之间部分的校验和。checksum的具体算法为:1、 初始化checksum=12、 对于被计算的每一个字节checksum = (checksum

14、+ byte) mod 2563、 checksum = checksum * -1校验时,将所有被校验的字节和checksum相加,再对和取256的模,若结果为0则说明校验正确,反之则校验错误。在IPMI规范中,BMC可以直接与系统的LAN控制器进行通信,LAN控制器可以将网络上的数据包进行分类,被封装为RMCP格式的数据包将被直接发送给BMC,同时,传送到BMC的数据包也会被发送给主机CPU,而未被封装为RMCP格式的数据包,则只会发送给主机CPU。BMC采用共享方式访问系统的LAN控制器,当BMC有接收或发送消息的请求时,将与系统交替使用LAN控制器。这样,IPMI LAN消息便可以在不

15、干预系统正常运行的情况下用于信息的双向传输,既可以向远程控制台发送请求或响应消息,也可以从远程控制台接收请求或响应消息。为了简化连接操作,在IPMI规范中,BMC接收和发送的所有外部消息都采用相同的消息格式。这样,我们就可以将我们对远程系统的BMC的访问封装为IPMI LAN消息,采用UDP方式,通过远程IP网络发送和接收远程BMC的请求和响应,从而实现对远程、软硬件异构系统的监控。3. 智能集中监控系统的设计与实现3.1系统功能针对IPMI的特点以及对系统软、硬件工作状态进行监控的客观需求,综合考虑空管自动化系统对安全性、稳定性的要求极高,同时还要保证较小的网络带宽占用及较小的系统侵入性的要

16、求,我们对智能集中监控系统的功能做如下约束:3.1.1软、硬件状态的实时检测智能集中监控系统应能够实时监测各个服务器和工作站的软、硬件工作状态,包括:CPU的占用情况、系统各个组件的温度、风扇转速、电压、网卡工作情况以及操作系统工作情况。3.1.2实时告警当检测到的数据超出一定阈值,如温度过高或发生异常事件,如散热风扇停止工作时,可通声光告警的形式报告给系统管理人员。3.1.3应急处置当系统发生严重问题时,可以通过智能集中监控系统手工或自动的对整个系统或单个工作站执行关机、重启、加电启动等操作,尽可能缩短系统恢复的时间。3.1.4软、硬件工作情况日志智能集中监控系统应能够将系统中发生的各个事件

17、,如传感器记录的信息、告警信息、关机、重启等事件做一个长期的日志记录,方便系统维护人员根据日志分析诊断故障。同时,该日志将保存在集中监控系统的非易失性存储器中,在远程服务器宕机或电源被切断的情况下,仍然能够为系统维护人员提供一个分析故障的途径。3.2软件架构设计根据上述功能并结合IPMI工作的实际特点,本文对智能集中监控系统的软件架构做出了如下设计,如图4所示:图4、智能集中监控系统软件架构图中,集中监控模块部署在监控机房内的监控终端上,而数据采集模块部署在各个被监控的工作站上,集中监控模块和数据采集模块通过自动化系统现有的远程网络相连。图中各个模块的功能划分如下:在数据采集模块中,远程访问单

18、元提供了统一的访问接口,通过网络接收来自远程监控单元的控制命令,同时也将采集到的IPMI数据发送给远程监控单元。IPMI数据采集单元发送指令给本机的BMC,并采集本机BMC发送的IPMI消息。远程控制单元将远程监控单元的控制指令转化为本机的本地命令,通过操作系统接口实现对本地操作系统的控制。在集中监控模块中,远程访问单元同样是提供统一的访问接口,接收和发送来自各个模块的消息。IPMI消息解析单元负责解析远程访问单元接收到的IPMI数据,并将解析后的数据分别发送给监控单元、消息分类告警单元和日志记录单元。日志记录单元负责将解析后的IPMI消息和告警信息以日志的形式存放到数据库当中,以便在需要时查

19、阅相应的历史记录。消息分类告警单元接收解析后的IPMI消息,将并解析后的IPMI消息通过相应的告警参数进行分类,对超过告警阈值的消息形成相应的告警信息,发送给监控单元进行告警提示,同时也将告警信息发送给日志记录单元形成相应的告警日志。IPMI消息封装单元接收来自监控单元的控制指令,并将控制指令封装为IPMI请求,最终通过远程访问单元实现对远端服务器控制。监控单元是集中监控模块的核心,负责将采集到的IPMI消息、告警信息及时呈现给用户,同时接收用户对远程服务器的控制指令。除此之外,监控单元还提供了统一的CUI接口,方便用户对历史日志、告警信息的查询和浏览。告警参数的设置也可以通过监控单元提供的G

20、UI接口进行。在集中监控系统中,我们采用了数据库系统作为日志、告警信息和配置参数的统一存储接口,这样在简化了系统接口设计的同时,也能很方便的进行数据的增、删、查、改操作。在本文的设计中,数据采集模块被设计得尽量简单,仅负责IPMI消息的采集和发送,目的是为了能尽量减少对自动化系统的干扰,最大限度的保证自动化系统的平稳运行。对于数据的传输,沿用了自动化系统原有的网络系统,从而降低了系统部署的成本。集中监控系统的监控模块部署在一台独立的工作站上,所有采集到的数据均由该工作站负责解析和存储,方便历史数据的访问和查询,也能够更为可靠的实现实时告警。3.3集中监控系统的实现基于上述设计,本文实现了集中监

21、控系统。为了和现有自动化系统保持一致,集中监控系统终端使用的是Solaris10操作系统,用C+语言编写,采用GTK图形库进行开发。为了保证较少的系统资源占用,同时也为了简化系统结构,集中监控系统采用了轻量化数据库SQLITE作为数据库。最终实现后的系统如图5所示:图5、集中监控系统界面四、结束语本文介绍了IPMI技术,并在此基础上设计并实现了一套基于IPMI技术的集中监控系统,实现了空管自动化系统的集中监控。该系统能在不间断系统运行的情况下及时发现并排除系统潜在的安全隐患,在实际工作中取得了很好的效果。由于本文实现的集中监控系统采用IPMI接口标准,具有良好的通用性和可扩展性,这不仅能方便的

22、在现有基础上扩充新功能,而且在将来设备硬件发生变化时,也能够对不同品牌不同体系结构的服务器进行集中监控和管理,降低了设备更新所带来的维护成本。参考文献1 童燕.基于IPMI的智能平台管理系统的实现D,2008.2 Intel, Hewlett-Packard, NEC, Dell. Intelligent Platform Management Interface Specification Second Generation v2Z,2009.3 于治楼,陈乃阔,牛玉峰.基于IPMI的服务器远程管理的研究与实现J. 信息技术与信息化,2010(1).4 李彦,陈德人,梁达明. 基于IPMI的虚拟远程串口终端J.现代机械, 2006(3).

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁