使用IPMI控制/监控Linux服务器

1       IPMI简述

IPMI提供了不少丰富功能,我使用的功能,说得大白话一点,就是:linux

一、获取本设备的硬件信息:包括CPU和主板的温度、电压、风扇转速。服务器

  二、在设备A上,经过命令,控制远程设备B,开机、关机、重启。(看到这个有没有一点想作坏事的冲动,哈哈)网络

IPMI的介绍,基本原理,和必备条件,可参考[1]中说明,很详细畅。工具

[1]:使用ipmitool实现Linux系统下对服务器的ipmi管理http://www.ibm.com/developerworks/cn/linux/l-ipmi/spa

1.1     使用的必备条件:

因为IPMI功能与OS及硬件相对独立,只此在任何软件及硬件环境下,只要知足如下三点,就可使用IPMI提供的众多功能。.net

BMC芯片 + ipmi模块加载 + ipmitool设计

1.2     判断IPMI必须条件是否知足的方法:

       cat /var/log/messages | grep BMC,查看开机是否有打印found BMC芯片的信息,若是没有说明硬件环境不支持BMC芯片;ip

       lsmod | grep ipmi,查看模块是否加载,加载/lib/modules/2.*.*/kernel/drivers/char/ipmi目录下的相应模块,若是无此目录,安装IPMI内核模块;get

       ipmitool help,查看用户态工具是否安装。it

1.3     两类使用方式:

       本地调用:本地环境必须知足以上三点。

       远程调用:调用系统,只须要有ipmitool,被调用系统,必须有BMC芯片 + ipmi模块。对于远程调用,被调用系统的BMC芯片只要写入了所需的配置信息,即便系统更换无为IPMI模块的软件系统,配置信息在BMC芯片中也不会被擦除及更改,仍然能够为本机提供被远程调用的功能。

2       IPMI的使用

2.1     ipmitool使用说明:

  ipmitool help;ipmitool Commands help;ipmitool Commands para help

http://linux.die.net/man/1/ipmitool

2.2     获取本地硬件信息:

ipmitool sdr

固然ipmi本地调用还提供了不少丰富功能,我只用过这一个啦,嘿嘿。

2.3     远程调用经常使用命令(远程开关机):

2.3.1  BMC芯片被远程控制的两个注意点

  物理网口:ipmi依赖物理网口接受ipmi指令,在硬件说明书中通常有说明BMC芯片共享或独占的物理网口具体是哪个。通常来讲与eth0口共享一个物理网口,固然也有可能主板设计为BMC芯片独占一个网口,所以必须保证共享eth0口(或独占的网口的)网络链接,且ipmi的ip与eth0(或独占网口)ip在同一网段。

  通道:BMC芯片虽然提供了不少channel,但好像一个型号的芯片通常只能使用一个channel,通常是channel 1,若是channel 1没法使用,可尝试其它channel,本芯片使用哪一个channel我理解应该也是硬件说明书中有规定。

2.3.2  配置IPMI被调用/监控端BMC芯片:

  被控制端须要配置lan信息、user信息

ipmitool lan set 1 ipsrc static #配置IP地址源为手动配置

ipmitool lan set 1 ipaddr 192.168.0.1   #配置IP地址(需与共享网口IP地址同网段)

ipmitool lan set 1 netmask 255.255.255.0    #配置子网掩码

ipmitool lan set 1 defgw ipaddr 192.168.0.100    #配置默认网关(没有网关能够不配)

ipmitool lan set 1 access on   #打开该通道(屡次执行不影响管理端管理)

ipmitool lan set 1 access off   #关闭该通道

ipmitool lan set 1 user    #激活该通道的用户(1为通道号)

 

ipmitool user list 1 #查看channel 1的用户

ipmitool user set name 1 admin     #设置用户名,1为用户ID。

ipmitool user set password 1 111111      #设置密码,1为用户ID。

ipmitool user enabled 1  #激活用户

ipmitool user priv 1 4 1 #设置用户为管理员权限,1为用户ID。

2.3.3  调用/监控端远程执行命令:

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power status    #查看电源状态

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power off/down             #关机

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power on/up           #开机

ipmitool -I lan -H 192.168.0.100 -U admin -P 111111 power reset     #重启

相关文章
相关标签/搜索