基于IPMI的智能平台管理系统设计与实现

2017-09-20 09:54李孟君王乐东
网络安全技术与应用 2017年9期
关键词:系统管理消息管理系统

◆李孟君 王乐东 叶 忠

(海军计算技术研究所 北京 100841)

操作系统、网络体系与服务器技术

基于IPMI的智能平台管理系统设计与实现

◆李孟君 王乐东 叶 忠

(海军计算技术研究所 北京 100841)

随着模块化刀片式服务器的广泛应用,对刀片式服务器为数众多、各式各样的平台系统进行有效管理一直是个难点问题。IPMI统一规范的采用,使跨平台集中管理成为可能。本文设计研究了一个基于IPMI的智能平台管理系统,通过构建嵌入式机箱智能管理系统软硬件平台,实现了基于服务的数据流通,为系统管理人员对刀片服务器各平台系统的远程管理带来了极大的方便。

刀片式服务器; 智能平台管理接口; 基板管理控制器

0 引言

模块化刀片式服务器以机箱管理和网络交换为核心,对外提供可伸缩的计算服务。对刀片式服务器平台系统的有效管理是系统管理人员需要解决的难题。目前的管理方式主要有三种:第一种是多个平台系统通过KVM进行直接管理,即共享一套键盘、鼠标和显示终端系统,管理员通过切换KVM分配器来实现每个平台系统的单独管理。另外两种都采取远程管理的方式,不同之处在于前一种通过部署一台专门的管理服务器对多个平台系统的集中管理,后一种通过刀片式服务器上的嵌入式机箱智能管理平台和各个刀片上安装的控制器,利用智能平台管理接口(Intelligent Platform Management Interface,IPMI)实现统一管理。系统管理人员可以通过网络或串口访问远程服务器,通过获取事件日志和传感器数据记录,分析并确认故障原因,并通过远程操作来实现系统恢复。这种管理方式有效降低了平台管理系统的开发成本及管理成本,同时解决了不同的平台系统与周边设备因接口不同而无法通信的问题。

智能平台管理系统通过IPMI和基板管理控制器(Baseboard Management Controller,BMC)实现对机箱、网络、计算等进行全面的统一管理,并监控整个服务器的硬件设备健康状况。BMC控制器一般安装在系统主板或刀片上。IPMI固件与BMC一起构成了独立平台管理子系统,这个子系统工作时不管处理器、BIOS或操作系统的类型或状态如何,都能提供可管理性和监测功能,甚至在系统其余部分不能使用时仍能执行恢复操作。IPMI是智能平台管理接口标准,定义了系统管理人员如何实现对系统硬件和传感器等信息的监测,对系统组件的控制,及对重要系统事件日志的检索,实现远程管理和恢复等功能。所有的IPMI功能都是向BMC发送命令来完成的,命令使用IPMI规范中规定的指令,BMC接收并在系统事件日志中记录事件消息,维护描述系统中传感器情况的传感器数据记录。

传统的故障诊断是系统管理人员到故障现场根据经验诊断故障原因,而利用IPMI标准后,系统管理人员可以通过网络或串口访问远程服务器,通过获取事件日志和传感器数据记录,分析并确认故障原因,并通过远程操作来实现系统恢复。它一般包括监控诸如系统温度、电压、风扇、电源、总线错误、系统物理安全等元素;它也包括自动和手工驱动的恢复能力,如本地或远程系统复位和电源开启/关闭操作。

刀片式服务器的结构复杂,机箱智能管理平台的强大功能使得能够远程控制计算模块的运行关停。机箱智能管理平台自身是一个嵌入式计算环境,在统管整机网络、电源、风扇、模块热插接等关键功能点的同时,也为整机带来了一定的安全隐患,使得恶意用户有可能通过网络入侵智能平台管理系统,进而控制BMC,甚至破坏电源和风扇,使得合法计算模块无法工作。

1 总体架构设计

IPMI提供的功能包括通过ADC实现对温度、电压的控制,对各种所需信号状态的获取,以及对整个系统的重新启动等。IPMI还提供了系统远程监控的功能,通过远程控制功能,系统管理人员可以将系统启动的信息进行串口重定向,从而实现对系统重启、复位和电源控制等操作。

嵌入式机箱智能管理平台的核心是提供IPMI功能的控制器,称为基板管理控制器(BMC)。BMC安装在服务器基板或刀片服务器上,其功能是对整个系统进行监测、管理,同时完成对系统事件的记录。BMC负责整个服务器平台底层组件与上层系统管理软件的交互,通过IPMB(Intelligent Platform Management Bus)完成与电源风扇管理控制器以及各其它管理控制器的通信,通过局域网对系统进行远程管理。

伺服管理控制器(MC)功能与BMC相似,但分布在系统的各个模块上(不包括BMC所在的模块),实现对各模块的监测和管理。MC分为两类:用于终端计算机模块/服务器模块管理的MC;用于电源风扇管理的MC。MC通过智能平台管理总线IPMB与BMC进行交互,系统管理软件通过BMC对与伺服管理控制器相连的组件进行管理配置。

2 硬件系统设计

2.1 管理控制器

管理控制器主要由MCU、MC存储器、电源DC-DC部分、PHY芯片、网络变压器、温度监测器件、热插拔电路组成。MC提供背板接口、前面板接口以及和交换部分互连的接口。MC的逻辑框架如图1所示。

图1 管理控制器电路逻辑框图

2.2 交换管理控制器

交换网络功能由交换管理控制器提供,交换单元除具有交换电路外还具有用于交换管理控制器MC电路。交换管理控制器电路逻辑框图如图2所示。

图2 交换管理控制器电路逻辑框图

交换单元采用VSC7407作为主CPU,搭配CPLD实现控制功能,对外提供12路1000BASE-T和12路SerDes接口。板载用于IPMI管理的MC,MC和主芯片之间可通过UART实现通信。

交换单元插入背板后,MC使用背板提供的3.3V standby电源加电,然后控制MOS管开启为交换部分提供12V电源,VSC7407初始化交换部分电路后,将全部的对外网络接口关闭,并且通过与MC连接的UART报告自身状态(系统固件版本、开机时间和端口状态等),当接收到控制命令后,VSC7407开启建立网络连接。

3 软件系统设计

机箱智能管理平台软件系统主要功能是收集硬件信息,将信息汇总,生成具有统一格式的消息,并提供常用的服务接口,实现基于服务的数据流通,达到消息传递的目的。由设备驱动模块、IPMI消息管理模块、应用接口三部分构成,如图3所示。设备驱动模块包含了BMC硬件平台所需的驱动,获取硬件平台的信息,并将信息生成具有统一格式的消息,提供给IPMI消息管理模块。IPMI消息管理模块完成消息的汇总,将消息提供给应用接口。应用接口提供常用的服务接口,实现基于服务的数据流通。

图3 软件系统架构组成

同时,应用接口接受用户指令,传递给IPMI消息管理模块。IPMI消息管理模块会根据设备预定义模式和来自应用接口的用户指令,借助设备驱动模块管控BMC硬件平台。最终实现对整个服务器的管控。

设备驱动模块由IPMB驱动、SSIF驱动和SPI驱动等部分组成。IPMI消息管理模块由初始化子模块、消息处理子模块、事件处理子模块、监视器管理子模块、网络服务子模块组成。

设备驱动模块中,IPMB对接模块主要负责MC与BMC之间的消息传递;SSIF驱动模块实现管理软件对管理单元上的传感器的信息获取以及控制器的控制。

IPMI消息管理模块各组件主要功能如下:

初始化子模块:为在系统上电之后进行设备自检并启动各个功能模块。

消息处理子模块:主要负责IPMB消息的处理。消息处理子模块需要解析来自IPMB的消息,根据不同消息,生成对应事件;或接受事件处理子模块命令,生成对应IPMB消息,通过设备驱动模块发出。

监视器管理子模块:主要实现了对服务器状态的秒级轮询,记录服务器硬件状态和工作环境状态,同时根据预配置信息,检测各类警告和危险状态,并生成对应事件上报。

事件处理子模块:监控来自消息处理子模块和监视管理子模块的事件消息,根据各种事件采取相应的处理措施,如实现服务器的温控,进行电源管理,安全接入管理,事件日志记录等。

网络服务子模块:主要功能有两个方面,一方面,接收网络上发来的管理命令并生成对应的管理事件;另一方面,建立超文本传输服务进程,实现基于IP地址的远程访问,并将总线管理控制子模块的IPMB信息、监视器子模块的SDR信息、事件处理子模块的SEL日志信息转换为对操作人员可读的文字信息,显示于上位机。

4 结束语

本文设计的基于IPMI的服务器智能平台管理系统基于底层独立硬件实现,而与刀片服务器上的系统无关。具有两个优点:首先,具有跨平台的特性,可通过管理网络采用B/S模式进行远程管理;其次,系统状态管理数据由专有的IPMB内部总线进行传输,安全性和实时性都可以得到保证。下一步将研究WEB管理系统的身份认证与加密传输技术,进一步增强远程管理的安全性。

[1]李娜.基于IPMI技术的服务器管理系统的设计与实现[D].北京:北京邮电大学, 2009.

[2]于治楼,陈乃阔,牛玉峰.基于 IPMI 的服务器远程管理的研究与实现[J].信息技术与信息化,2010.

[3]李彦,陈德人,梁达明.基于IPMI的虚拟远程串口终端[J].现代机械,2010.

[4]张义良.IPMI服务器监控系统的设计与研究[J].信息与电脑(理论版),2015.

[5]王栩浩.基于IPMI的服务器管理系统的实现[D].上海:东华大学, 2016.

[6]童燕.基于IPMI的智能平台管理系统的实现[D].上海:华东师范大学, 2008.

猜你喜欢
系统管理消息管理系统
基于James的院内邮件管理系统的实现
一张图看5G消息
基于LED联动显示的违停管理系统
《系统管理学报》征稿简则
海盾压载水管理系统
《系统管理学报》征稿简则
欢迎订阅《系统管理学报》
消息
消息
消息