Ipmitool⼯具安装以及常见使⽤⽅法
最近⼀直在公司实习,⽬前⽤到过⼀个陌⽣的物理服务器管理⼯具,也是主要⽤于OpenStack的IronicServer组件管理。功能⾮常强⼤。操作起来也很⽅便,注意,ipmi是通过RMCP来实现通信的,需要放tcp/udp的623端⼝,默认是623 可以通过-p参数显式修改或指定。下⾯来逐⼀介绍ipmitool⼯具的安装以及常见使⽤:
⼀、 IPMITOOL安装⽅式
1 、⽅式⼀:
IPMI( Intelligent Platform Management Interface)的第⼀种安装⽅式是编译安装。
这个是源地址:sourceforge/projects/ipmitool/
下载完成后,进⾏安装操作。
1、 tar -xvf ipmitool-1.8.18.tar.bz2
2、 cd ipmitool-1.8.18
3、./configure
4、 make
5、make install
6、编译安装之后,要开启三个相关模块,
modprobe ipmi_si(如果是虚拟机的话,该模块可能⽆法启动)
modprobe ipmi_devintf
modprobe ipmi_msghandler
可以起⼀下该服务,并查看下模块有没有启动:
[root@openstack ~]# lsmod | grep ipmi
ipmi_si 575870
ipmi_devintf 176030
ipmi_msghandler 466072 ipmi_devintf,ipmi_si
[root@openstack ~]#
如果缺少模块,那么ipmitool命令就会出现异常。
2、⽅法⼆:
⽅法⼆的安装就相对⽐较容易:
直接使⽤yum来进⾏安装操作。
[root@openstack ~]# yum install -y ipmitool.x86_64
Loaded plugins: fastestmirror
……
……
……
Installed:
ipmitool.x86_64 0:1.8.18-7.el7
Dependency Installed:
OpenIPMI.x86_64 0:2.0.27-1.el7 OpenIPMI-libs.x86_64 0:2.0.27-1.el7 OpenIPMI-modalias.x86_64 0:2.0.27-1.el7 net-snmp-libs.x86_6 4 1:5.7.2-43.el7_7.3
Complete!
可以启动下IPMI服务
[root@openstack ~]# systemctl status ipmi
● ipmi.service - IPMI Driver
Loaded: loaded (/usr/lib/systemd/system/ipmi.service; enabled; vendor preset: enabled)
Active: active (exited) since Fri 2020-02-2814:30:40 CST; 7s ago
Process:7748 ExecStart=/usr/libexec/openipmi-helper start (code=exited, status=0/SUCCESS)
Main PID:7748(code=exited, status=0/SUCCESS)
Feb 2814:30:40 openstack systemd[1]: Starting
Feb 2814:30:40 openstack systemd[1]: Started IPMI Driver.
[root@openstack ~]# lsmod | grep ipmi
ipmi_si 575870
ipmi_devintf 176030
ipmi_msghandler 466081 ipmi_devintf,ipmi_si
[root@openstack ~]#
这⾥再说明⼀下,如果环境是虚机的话,ipmi_si模块会⽆法启动,⼿动加载的话,会提⽰如下报错。
[root@openstacktest ~]# modprobe ipmi_si
modprobe: ERROR: could not insert 'ipmi_si': No such device
[root@openstacktest ~]#
⼆、ipmitool使⽤⽅法
1、⾸先看下丰富的帮助提⽰
[root@openstack ~]# ipmitool help
Commands:
raw Send a RAW IPMI request and print response
i2c Send an I2C Master Write-Read command and print response
spd Print SPD info from remote I2C device
lan Configure LAN Channels
chassis Get chassis status and set power state
power Shortcut to chassis power commands
event Send pre-defined events to MC
mc Management Controller status and global enables
sdr Print Sensor Data Repository entries and readings
sensor Print detailed sensor information
fru Print built-in FRU and scan SDR for FRU locators
gendev Read/Write Device associated with Generic Device locators sdr
sel Print System Event Log (SEL)
pef Configure Platform Event Filtering (PEF)
sol Configure and connect IPMIv2.0 Serial-over-LAN
tsol Configure and connect with Tyan IPMIv1.5 Serial-over-LAN
isol Configure IPMIv1.5 Serial-over-LAN
user Configure Management Controller users
channel Configure Management Controller channels
session Print session information
dcmi Data Center Management Interface
nm Node Manager Interface
sunoem OEM Commands for Sun servers
kontronoem OEM Commands for Kontron devices
picmg Run a PICMG/ATCA extended cmd
fwum Update IPMC using Kontron OEM Firmware Update Manager
firewall Configure Firmware Firewall
delloem OEM Commands for Dell systems
shell Launch interactive IPMI shell
exec Run list of commands from file
set Set runtime variable for shell and exec
hpm Update HPM components using PICMG HPM.1file
ekanalyzer run FRU-Ekeying analyzer using FRU files
ime Update Intel Manageability Engine Firmware
vita Run a VITA 46.11 extended cmd
lan6 Configure IPv6 LAN Channels
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信道。
[root@openstack ~]#
2、常见的操作命令
1. 远程电源控制类 远程电源控制类
[root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power off
[root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power on
[root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power reset
[root@openstack ~]# Ipmitool -I lanplus –H 10.32.228.111 –U username –P Password chassis power cycle
2. 读取系统状态类
[root@openstack ~]# Ipmitool sensor list 显⽰系统所有传感器列表
exited[root@openstack ~]# Ipmitool fru list 显⽰系统所有现场可替代器件的列表
[root@openstack ~]# Ipmitool sdr list 显⽰系统所有SDRRepository设备列表
[root@openstack ~]# Ipmitool pef list 显⽰系统平台时间过滤的列表
3. 系统⽇志类
[root@openstack ~]# Ipmitool sel elist 显⽰所有系统事件⽇志
[root@openstack ~]# Ipmitool sel clear 删除所有系统时间⽇志
[root@openstack ~]# Ipmitool sel delete ID 删除第ID条SEL
[root@openstack ~]# Ipmitool sel time get 显⽰当前BMC的时间
[root@openstack ~]# Ipmitool sel time set XXX 设置当前BMC的时间
4. 启动设置类
[root@openstack ~]# Ipmitool chassis bootdev bios 重启后停在BIOS 菜单
[root@openstack ~]# Ipmitool chassis bootdev pxe 重启后从PXE启动
5. 系统相关的命令
[root@openstack ~]# Ipmitool mc info 显⽰BMC版本信息
[root@openstack ~]# Ipmitool bmc reset cold BMC 热启动
[root@openstack ~]# Ipmitool bmc reset warmBMC冷启动
6. ⽹络接⼝相关命令
[root@openstack ~]# Ipmitool lan print 1 显⽰channel1的⽹络配置信息
[root@openstack ~]# Ipmitool lan set 1ipaddr 10.32.2.2 设置channel1的IP地址
[root@openstack ~]# Ipmitool lan set 1 netmask 255.255.0.0 设置channel1的netmask
[root@openstack ~]# Ipmitool lan set 4 defgw ipaddr255.255.0.254 设置channel4的⽹关
[root@openstack ~]# Ipmitool lan set 2 defgw macaddr 设置channel2的⽹关mac address
[root@openstack ~]# Ipmitool lan set 2 ipsrc dhcp 设置channel2的ip 源在DHCP
[root@openstack ~]# Ipmitool lan set 3 ipsrc static 设置channel2的ip是静态获得的
7. 通道相关命令
[root@openstack ~]# Ipmitool channel info 显⽰系统默认channel
[root@openstack ~]# Ipmitool channel authcap channel-number privilege 修改通道的优先级别
[root@openstack ~]# Ipmitool channel getaccess channel-number user-id 读取⽤户在通道上的权限
[root@openstack ~]# Ipmitool channel setacccess channel-number user-id callin=on ipmi=on link=onprivilege=5 // 设置⽤户在通道上的权限8. ⽤户管理相关命令
[root@openstack ~]# Ipmitool user list chan-id 显⽰某通道上的所有⽤户
[root@openstack ~]# Ipmitool set password [] 修改某⽤户的密码
[root@openstack ~]# Ipmitool disable 禁⽌掉某⽤户
[root@openstack ~]# ipmitool enable 使能某⽤户
[root@openstack ~]# ipmitool priv [] 修改某⽤户在某通道上的权限
[root@openstack ~]# ipmitool test <16|20>[<password]> 测试⽤户
9. 系统管理常⽤的
1.查看设备信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin chassis status
2.查看⽤户
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user list
3.增加⽤户
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user set name 3 test1
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user list
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user set password 3 test1
/
usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user priv 320
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user list
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U test1 -P test1 user list
4. disable/enable⽤户
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user disable 3
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U test1 -P test1 user list
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin user enable 3
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U test1 -P test1 user list
5.查看服务器当前开电状态
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin power status
6.服务器的开机,关机,reset和power cycle
/
usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin power on
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin power off
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin power cycle
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin power reset
7.查看服务器的80 Port当前状态
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin raw 0x300xB2
8.查看服务器的传感器状态
所有传感器状态详细信息:
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin sensor
传感器SDR summary信息:
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin sdr info
传感器SDR 列表信息:
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin sdr list
FRU传感器SDR 列表信息:
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin sdr list fru
下载RAW SDR信息到⽂件:
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin sdr dump sdr.raw
9.查看服务器的FRU信息
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin fru
/usr/bin/ipmitool -I lanplus -H 10.88.1.181-U sysadmin -P admin fru print
三、举例说明(关于⽤户的操作)
- H为需要操作的BMC ip,-I lanplus为使⽤rmcp+协议发送命令,-U 为操作命令的⽤户名,-P为⽤户密码。
1、查询所有⽤户
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user list
2、新增⽤户⽤户名和⽤户id不能和已有⽤户名⽤户id重复,如⽤户名test3,⽤户id为3
[root@openstack ~]# ipmitool -H 10.10.10.10 -I lanplus -U root -P admin user set name 3 test3
3、密码需要满⾜复杂度要求,如设置⽤户id为3的密码
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论