一、IPMI 概念
IPMI(Intelligent Platform Management Interface)-智能平台管理接口,IPMI是一个开放的免费标准,用户无需支付额外的费用即可使用标准。
IPMI能够横跨不同的操作系统、固件和硬件平台,可以只能的监视、控制和自动回报大量服务器的运作状况,以降低服务器系统成本
二、BMC概念
在介绍BMC之前,需要先了解平台管理(platform management)
平台管主要完成是一系列的监视和控制功能,平台管理的操作对象往往是系统硬件。比如设备硬件的温度、电压、风扇、电源等等,并会对其作出相应的调节。保证系统处于健康正常的状态。如果系统出现了不正常现象,还可以通过复位来重启系统。平台管理还可以记录各种硬件的信息和日志。
BMC(Baseboard Manager Controller,简称BMC)是基板管理控制器。用来实现平台管理的一些功能。BMC是一个独立的系统,它不依赖与系统上的其它硬件(比如CPU、内存等),也不依赖与BIOS、OS等(但是BMC可以与BIOS和OS交互,这样可以起到更好的平台管理作用,OS下有系统管理软件可以与BMC协同工作以达到更好的管理效果)。
三、IPMI与BMC的关系
PMI的核心是一个专用芯片/控制器 —— BMC,其并不依赖于服务器的处理器、BIOS或操作系统来工作,可谓非常地独立。
在工作时,所有的IPMI功能都是向BMC发送命令来完成的,BMC接收并在系统事件日志中记录事件消息,维护描述系统中传感器情况的传感器数据记录。
四、IPMI的作用
1、远程控制台
远程调整BIOS
远程安装操作系统
2、服务器强制断电重启
在遥远的地方,我们不需要去机房,直接通过ipmi的命令工具即可进行对服务器电源的操作 —— 这个操作是独立于操作系统的,硬件实现,因此比较稳定可靠。
3、远程获取服务器硬件设备信息
在Linux环境下我们可以通过 ipmi的命令行工具,来进行服务器硬件的获取:例如:风扇的转速,机箱温度,硬件日志,电压,BIOS版本号,RAID卡 fireware版本号,机箱上次打开的时间,服务标签等等…
五、IPMI监控服务器的模式
1、本地监控
需要下载: IPMI 驱动 、ipmitool 工具(或其他工具)
原理:安装 IPMI 驱动 使得 IPMI 被操作系统所识别;工具通过驱动获取服务器的信息。
2、远程监控
只需要下载: ipmitool 工具(或其他工具)
原理:远程监控的时候,只需要在 客户端 安装 ipmitool工具,在远程模式下,IPMI 使用的是RMCP协议,RMCP协议基于UDP协议实现。端口为 643!
六、ipmitool 介绍
ipmitool —— 是在 Linux 命令行模式下,实现 ipmi 远程管理的一个工具。
七、基于Ubuntu16.04操作系统安装、试用ipmitool 工具:
1、加载ipmi的模块
modprobe ipmi_msghandler
modprobe ipmi_devintf
modprobe ipmi_si
modprobe ipmi_poweroff
modprobe ipmi_watchdog
2、下载和安装ipmitool:
wget https://downloads.sourceforge.net/project/ipmitool/ipmitool/1.8.18/ipmitool-1.8.18.tar.bz2
tar -jxf ipmitool-1.8.18.tar.bz2
cd ipmitool-1.8.18
./configure --prefix=/usr/local/ipmitool
make && make install
ln -s /usr/local/ipmitool/bin/ipmitool /usr/bin/ipmitool
或者试用apt-get 安装
apt-get update
apt -y install ipmitool
3、查看ipmitool 版本
ipmitool -V
八、配置IPMI管理地址
1、将通道配置为静态
ipmitool lan set 1 ipsrc static
2、配置IPMI管理IP地址:
ipmitool lan set 1 ipaddr 192.168.1.2
3、配置IPMI管理地址掩码:
ipmitool lan set 1 netmask 255.255.255.0
4、配置IPMI管理地址网关:
ipmitool lan set 1 defgw ipaddr 192.168.1.254
5、查看IPMI管理地址配置情况:
ipmitool lan print 1
九、测试并登陆
测试以上配的地址是否能ping通,如果能ping通,则表示配置成功,然后通过浏览器输入配置的IPMI管理地址,然后通过web页面进行下一步的操作。