from:http://blog.chinaunix.net/u2/70049/showart_1850139.html
IPMI远程管理实验 on DELL PE2950
ipmi的介绍此处省略...
ipmi能够不依赖服务器的CPU,内存,存储,电源等独立工作,是一种廉价远程管理方案
以一台未安装OS的DELL PE2950 (ipmi v2.0)为实验机器 (这里就不讨论IPMI的本地应用了),LAN内分别在WINDOWS(XP)平台和LINUX平台通过IPMI对2950进行管理
DELL 2950 BMC的设置 :
IPMI OVER LAN --> ON
IPMI LAN CHANNEL --> 填入IP地址,可以和该服务器操作系统中的IP一致,不过要确保后面客户机的IP和此IP在一个网段
User Configuration --> 填入权限,用户名和密码
Press [ ESC ] , save it , reboot
+++ Windows XP 平台 +++
安装DELL服务器管理软件-OpenManagment_V5.2.0,在"C:\Program Files\Dell\SysMgt\bmc\" 下,ipmish.exe,在命令行模式运行
基本语法:
> ipmish -ip -u -p
ej:
> ipmish -ip 172.16.0.4 -u root -p 123456 power status
>>> 查看当前电源状态
> ipmish -ip 172.16.0.4 -u root -p 123456 power reset
>>> reset该机器
> ipmish -interactive
我喜欢将上面放在批处理里,直接双击,进ipmi的shell环境, 然后
> connect -ip -u -p
验证成功后,就可以直接输入BMC控制命令,这里介绍三个比较有用的命令,其余命令和更详细的用法,可以在bmc shell里自己查看帮助 > help
> power [status|off[-force]|on|reset|cycle]
>>> 可以远程在不进入系统的情况下进行开关机,重启,等等
> sensor [temp|fan|volt|discrete|numeric] [-format ]
>>> 查看系统传感器的命令,支持温度,电压,风扇等等
> sel [[get [[[-begin ][-max |-end ]]|-last ] [-format ]] |clear|status]
>>> 查看和管理系统日志 sel get > log.txt 保存日志 ; sel clear
> sysinfo [fru|id]
>>> 查看 FRU 或者 BMC 信息
+++ Linux 平台 +++
RHEL AS4U4,安装时勾选了IPMI管理包,自己另装的话,注意要装上IPMI驱动模块和IPMITOOL管理工具.
#service ipmi start
#ipmitool -I open shell
#### 可以直接进入本地BMC shell
#ipmitool -I lan -H -U shell
#### 输入password,进入IPMI交互模式,当然这里也可以把shell直接换成bmc命令 , 另外ipmitool支持端口,所以是否可以先做DNAT,然后远程直接管理内网机器.
#### ipmitool提供的功能要比windows下ipmish提供的功能多得多,用法相对复杂一些
参考下面转摘的文章来详细了解命令
引用
Ipmitool本地监控使用命令:ipmitool –I open command,其中-I open表示使用OpenIPMI接口,command有以下项:
a) raw:发送一个原始的IPMI请求,并且打印回复信息。
b) Lan:配置网络(lan)信道(channel)
c) chassis :查看底盘的状态和设置电源
d) event:向BMC发送一个已经定义的事件(event),可用于测试配置的SNMP是否成功
e) mc: 查看MC(Management Contollor)状态和各种允许的项
f) sdr:打印传感器仓库中的所有监控项和从传感器读取到的值。
g) Sensor:打印详细的传感器信息。
h) Fru:打印内建的Field Replaceable Unit (FRU)信息
i) Sel: 打印 System Event Log (SEL)
j) Pef: 设置 Platform Event Filtering (PEF),事件过滤平台用于在监控系统发现有event时候,用PEF中的策略进行事件过滤,然后看是否需要报警。
k) Sol/isol:用于配置通过串口的Lan进行监控
l) User:设置BMC中用户的信息 。
m) Channel:设置Management Controller信道。
Ipmitool –I open sensor list命令可以获取传感器中的各种监测值和该值的监测阈值,包括(CPU温度,电压,风扇转速,电源调制模块温度,电源电压等信息)
Ipmitool –I open sensor get “CPU0Temp”可以获取ID为CPU0Temp监测值,CPU0Temp是sensor的ID,服务器不同,ID表示也不同。
Ipmitool –I open sensor thresh 设置ID值等于id的监测项的各种限制值。
Ipmitool –I open chassis status查看底盘状态,其中包括了底盘电源信息,底盘工作状态等
Ipmitool –I open chassis restart_cause查看上次系统重启的原因
Ipmitool –I open chassis policy list 查看支持的底盘电源相关策略。
Ipmitool –I open chassis power on启动底盘,用此命令可以远程开机
Ipmitool –I open chassis power off关闭底盘,用此命令可以远程开机
Ipmitool –I open chassis power reset实现硬重启,用此命令可以远程开机
Ipmi还可以设置系统启动boot的设备,具体见ipmitool帮助文档。
Ipmitool –I open mc reset 使BMC重新硬启动
Ipmitool –I open mc info 查看BMC硬件信息
Ipmitool –I open mc getenables 列出BMC所有允许的选项
Ipmitool –I open mc setenables =[on|off],设置bmc相应的允许/禁止选项。
Ipmitool-I open event 1 发送一个温度过高的消息到System Event Log中,可以发送的Event有:
1 Temperature: Upper Critical: Going High
2 Voltage Threshold: Lower Critical: Going Low
3 Memory: Correctable ECC Error Detected
Ipmitool-I open event命令可以用测试配置的IPMI中的snmp功能是否成功。
Ipmitool -I open lan print 1 打印现咱channel 1的信息 。
Ipmitool -I open lan set 1 ipaddr 10.10.113.95设置channel 1 的地址为10.10.113.95
Ipmitool -I open lan set 1 snmp public设置channel 1 上snmp的community为public。
Ipmitool -I open lan set 1 access on设置channel 1允许访问。
Ipmitool -I open pef info打印Platform Event Filtering (pef)信息
Ipmitool -I open pef status查看Platform Event Filtering (pef)状态
Ipmitool -I open pef policy查看Platform Event Filtering (pef)策略设置
Ipmitool -I open sdr list fru 读取fru信息并显示。
备注:
PEF由BMC厂商的FIRMWARE设置,ipmitool(V1.8.8)不能进行设置,也可以使用ipmiutil来进行初始设置。
2.1.2 使用ipmiutil本地获取信息
Ipmiutil安装完成后,会包含以下可执行命令:
? alarms –显示和设置Telco alarms报警(LED显示和延迟)
? bmchealth – 测试BMC是否工作正常。
? fruconfig – 显示FRU的产品信息,写入有用信息
? getevent – 接收一个IPMI event,并显示。
? hwreset – 用于使 firmware 硬重新启动或者关掉系统
? pefconfig – 用于显示和配置LAN端口,配置Platform Event Filter 表,来通过firmare event产生BMC Lan提示
? sensor – 显示Sensor Data Records,值和阈值。
? showsel – 显示System Event Log记录。
? tmconfig – 显示和配置BMC串口。
? wdt – 显示和设置看门狗时间.
以上命令种中最为常用的是sensor命令和pefconfig命令。使用sensor命令可以获取各种监测信息。使用pefconfig命令设置BMC,使得BMC可以在系统有event时候,进行报警。
Sensor 命令显示服务器状态信息。
Pefconfig –e命令用于设置BMC硬件,该命令将从操作系统收集相应的信息,并对bmc进行设置,使得BMC能够在有event时候报警(alert)。
Pefconfig –d命令将设置bmc不报警。
2.2远程获取服务器监控信息
远程获取服务器监控信息时,需要系统硬件支持ipmiV1.5和IPMIV2.0。获取信息时,不需要在服务器上安装其他软件,只需要在监控的客户端上安装ipmi工具软件,如ipmitool、ipmiutil或者freeipmi,并需要在相应命令中加入远端服务器的名字或者地址。Ipmitool和 ipmiutil可以通过LAN远程监控系统,同时BMC中保存有一序列用户名和密码,通过LAN进行远端访问需要用户名和密码。
2.2.1使用ipmitool获取远程服务器信息
Ipmitool 命令需要通过相应的interface来访问BMC,在本地获取信息时候采用的是-I open,即为OpenIPMI接口,IPMItool命令包含的接口有open、lan、lanplus。其中open是指的是OpenIPMI与 BMC通信,Lan是通过Ethernet LAN网用IPV4的udp协议与BMC通信。UDP的数据段包含了IPMI request/resoponse消息,消息具有一个IPMI session 头和RMCP 头。IPMI使用Remote Management Control Protocol (RMCP) 版本1支持操作系统关闭(pre-OS和OS-absent),RMCP把把数据发送到UDP的623端口。象lan接口一样,lanplus同样使用 Ethernet LAN 的UDP协议与BMC通信,但是lanplus使用RMCP+协议(在IPMIV20中描述)来同新,RMCP+允许使用改经的认证方式和数据完整性检查。Open端口用于本地监控系统使用的;Lan/lanplus通过网络进行远程监控。
远程获取服务器监控信息时,需要加上远程服务器的地址。使用以下的命令格式:
ipmitool -H 10.6.77.249 -U root -P changeme -I lan command。其中-H表示后面跟的是服务器的地址,-U表示后面跟着用户名,-P表示后面跟着用户密码,command与本地获取信息相同。
2.2.2使用ipmiutil获取远程服务器信息
Ipmiutil的sensor命令格式如下:
Sensor -N nodename –U user –R passwd ,
其中-N后面跟的是被监控服务器名字,-U后是用户名,-R后是用户密码。
Pefconfig -e -N nodename –U user –R passwd命令用于设置BMC硬件,该命令将从操作系统收集相应的信息,并对bmc进行设置,使得BMC能够在有event时候报警。
Pefconfig -d -N nodename –U user –R passwd将不允许报警
“要对服务器进行IPMI管理,需要被监控的系统具有支持IPMI的硬件设备。”
...........
这样我们就可以在机器当机的时候,不用打电话到处找机房值班人员了,不用怕某些远程操作会导致机器宕掉而畏首畏尾了,自己动手,丰衣足食啊.
---------------------------------------------
能否通过WAN直接进行远程管理:
1. 在ipmish 远程地址看是否能够连接上,
如果能够连接 ,分 服务器直接外网IP 和 防火墙映射IP (UDP 623 端口 )
2. IPMI V2.0 以后的版本要能支持截取当前屏幕(即使是单色,也非常有意义)
2007-10-15
Danny.he
似乎根本不行,嘎嘎,ipmitool -I 的接口类型也只支持 本地HOST和LAN,昏......,还是把linux下的用法丰富起来吧.然后再讲讲本地的使用,跨越WAN的就不考虑了.....