Dell™ PowerEdge™ 2850 系统底板管理控制器 (BMC) 通过与主机板上的不同传感器通信来监视系统是否有严重事件,并在某些参数超出其预置阈值时发出警报和日志事件。 BMC 支持工业标准的 Intelligent Platform Management Interface (IPMI) 规范,可以实现远程配置、监测和恢复系统。 BMC 提供以下功能:
通过系统的串行端口和集成 NIC 进行访问
故障日志记录和 SNMP 警报发送
访问系统事件日志 (SEL) 和传感器状况
控制包括开机和关机在内的系统功能
独立于系统电源或工作状态的支持
用于系统设置、基于文本公用程序和操作系统控制台的文本控制台重定向
使用 LAN 上串行 (SOL) 访问 Red Hat® Enterprise Linux 串行控制台界面
看到了吧,以上是DELL官方对IPMI功能的描述,这些功能非常强大哦,据我所知,现在一般大厂的服务器都支持ipmi功能,比如DELL,HP,IBM。今天我们以DELL的2850为例,给大家简单介绍一下IPMI的基本使用。
1.配置系统启用IPMI,启动服务器,在启动过程中,看提示,按Ctrl+E 进入IPMI管理界面
2.设置IPMI Over LAN为On,默认为Off,意思为启用通过LAN方式的IPMI。
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi01.jpg');}" onmousewheel="return imgzoom(this);">
3.设置IPMI的地址,这里的地址可以跟你服务器的ip地址一样,不会有冲突,放心设置,MAC地址不用设置。VLAN不用设置。
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi02.jpg');}" onmousewheel="return imgzoom(this);">
4.这里是设置访问的用户名和密码,远程访问IPMI是需要验证的。
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi03.jpg');}" onmousewheel="return imgzoom(this);">
好了设置完毕,重启机器,基本上现在服务器就已经能通过远程访问ipmi了。
我们先在另外一台机器装上ipmiltool,一个管理IPMI的开源工具,可以在任何机器安装,安装的机器本身主板可以没有IPMI。
装完以后,我们试验一下能不能访问,运行以下命令
ipmitool –I lan –H host -U user -a channel info
host:填写你的服务器的IP地址
user:填写你之前设置的用户名,我们这里是root
正常的话,会提示你输入密码,就是图3我们设置的密码。
以下是显示的信息:
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi04.jpg');}" onmousewheel="return imgzoom(this);">
说明远程服务器,我们刚才设置的服务器已经启用IPMI。
那怎么在本地访问IPMI呢,如果你直接用ipmitool访问是访问不了的,会提示以下错误:
Error: Unable to establish LAN session
Unable to Get Channel Info
这里我们得安装OpenIPMI,装完这个,系统就能认出IPMI,这样我们才能通过ipmitool访问,当然前提是你的内核编译支持IPMI了。
装完OpenIPMI后,启用IPMI服务 /etc/rc.d/init.d/ipmi start 一般如果内核支持的话,能正常启动,用lsmod看看加载的模块
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi05.jpg');}" onmousewheel="return imgzoom(this);">
这时我们可以本地访问IPMI,还是刚才那个命令,参看channel信息,不过本地访问命令有所不同,改为
screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open('http://blog.5ilinux.com/archives/images/ipmi06.jpg');}" onmousewheel="return imgzoom(this);">
下面我们介绍一些远程控制IPMI的用法
获取远程服务器的电源状态
Ipmitool -I lan –H host –U root –a chassis power status
远程软关机,相当于按下reset,这个在服务器死机的时候用到
Ipmitool -vI lan –H host –U root –a chassis power soft
类似的命令我们也可以用来远程开机,获取服务器运行的信息等。
参考文档:
使用ipmitool 实现Linux 系统下对服务器的ipmi 管理
IPMI HOWTO for Debian GNU/Linux on the Intel SR2300
著作信息:张微波 2006.7.16 北京