maozishuai 2012-11-13
1、IPMI(Intelligent Platform Management Interface): 即智能平台管理接口是使硬件管理具备“智能化”的新一代通用接口标准。用户可以利用 IPMI 监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应以及机箱入侵等。ipmi最大的优势在于它是独立于CPU BIOS和OS的,所以用户无论在开机还是关机的状态下,只要接通电源就可以实现对服务器的监控。ipmi是一种规范的标准,由美国英特尔、惠普(Hewlett-Packard)、NEC、美国戴尔电脑和SuperMicro等公司制定。新的版本是IPMI2.0(http://www.intel.com/design/servers/ipmi/)。其中最重要的物理部件就是BMC(Baseboard Management Controller),一种嵌入式管理微控制器,它相当于整个平台管理的“大脑”,通过它ipmi可以监控各个传感器的数据并记录各种事件的日志。
新版本的IPMI可以通过串口、Modem以及Lan等远程环境管理服务器系统(包括远程开关机),同时在系统发生错误时能自动发出警告。要对服务器进行IPMI管理,需要被监控的系统具有支持IPMI的硬件设备。如果服务器具有底板管理控制器 (Baseboard Management Controller ,BMC),并且支持IPMI规范,则通过BMC与主机板上的不同传感器通信来监视系统是否有严重事件,并在某些参数超出其预置阈值时发出警报和日志事件。BMC具有以下功能:
(1)通过系统的串行端口进行访问。
(2)故障日志记录和SNMP警报发送。
(3)访问系统事件日志 (System Event Log ,SEL) 和传感器状况。
(4)控制包括开机和关机。
(5)独立于系统电源或工作状态的支持。
(6)用于系统设置、基于文本公用程序和操作系统控制台的文本控制台重定向。
(7)使用LAN访问Red Hat Enterprise Linux串行控制台界面。
2、使用ipmi的先决条件: 想要实现对服务器的ipmi管理,必须在硬件、OS、管理工具等几个方面都满足。
(1)服务器硬件本身提供对ipmi的支持。
(2)目前IBM、HP、Dell和NEC等大多数厂商的服务器都支持IPMI,但并不是所有服务器都支持,所以应该先通过产品手册或在BIOS中确定服务器是否支持ipmi,也就是说服务器在主板上要具有BMC等嵌入式的管理微控制器。
(3)操作系统提供相应的ipmi驱动。通过操作系统监控服务器自身的ipmi信息时需要系统内核提供相应的支持,linux系统通过内核对OpenIPMI(ipmi驱动)的支持来提供对ipmi的系统接口。
3、用IPMI管理工具对服务器进行管理: IPMI可以通过本地和远程两种方式来获取被监控服务器的监测信息,两种方式都需要相关的硬件,但是软件的安装和软件命令使用稍微有所不同。常用的管理工具是ipmitool,在http://ipmitool.sourceforge.net/。Linux下需要先安装OpenIPMI驱动并启动它,在http://sourceforge.net/projects/openipmi/。SourceForge上的ipmitool只支持Linux/Unix系列的OS,不过它有很多针对Windows的移植版本,比如Sun公司的一个版本。在http://www.sun.com/download/上点击Downloads A-Z,找到字母I的分类,可下载支持Windows平台的ipmitool,当前版本为1.8.10.2,集成的ipmi驱动有ism, ms, lan, lanplus, rmcp+lan等,其中ms表示Microsoft的ipmi驱动。注意驱动必须安装在服务器的OS中,管理工具可以安装服务器上(本地管理),或者远程的客户端上(远程管理)。
Linux上启动OpenIPMI驱动模块常用/etc/init.d/ipmi start。启动ipmi驱动后,通过cat /proc/devices | grep ipmidev获得设备号,比如得到的设备号是253,用mknod -m 600 /dev/ipmi0 c 253 0建立文件索引点。然后就可以在本地服务器上运行各种ipmi工具获取相应的服务器信息了。