手册下载
H3C HDM IPMI技术白皮书-6W101-整本手册.pdf (378.89 KB)
H3C HDM IPMI技术白皮书
Copyright © 2021 新华三技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。
本文档中的信息可能变动,恕不另行通知。
IPMI(Intelligent Platform Management Interface,智能平台管理接口)是一项应用于服务器管理系统设计的标准,由Intel、HP、Dell和NEC公司于1998年共同提出。IPMI 的主要特性是可独立于处理器、BIOS 和操作系统,利用此标准,有助于在不同类服务器系统硬件上实施系统管理,使不同平台的集中管理成为可能。
在IPMI管理平台中,BMC(Baseboard Management Controller,基板管理控制器)是核心控制器,系统管理软件对各个器件的管理都是通过与BMC通信来实现的。BMC与主处理器和板上各元件相连接,监控或管理各物理部件。
由于BMC系统的独立性,使得IPMI为高可用性 (HA) 系统提供了一种企业级的管理手段,甚至在系统处于电源关闭状态时,平台管理功能也可使用。在系统管理软件和正常带内管理机制都不可用的情况下可获得平台状态信息并启动恢复操作。通过IPMI独立监视、日志记录等功能,为服务器硬件提供了内置的可管理平台。
IPMI提供了一组应用于带外管理和监视功能标准接口,主要特性包括:
· 资产管理
· 故障监视
· 日志记录
· 恢复控制
IPMI 对连接平台管理子系统(如 IPMB、LAN)的不同接口使用基于消息的接口。所有 IPMI 消息在消息有效负载中共享相同的字段,无论它们通过哪个接口进行传递。IPMI 消息的有效负载对每个IPMI 指定的接口可用,只是根据特定传输的需求以不同方式进行封装。这使得在一个接口上工作的管理软件可通过更改该特定传输的基础驱动程序来转换为使用其他接口。
系统接口连接到可由主处理器驱动的系统总线。当前IPMI系统接口可以是 I/O,也可以是映射的存储器。可以使用允许主处理器访问指定的 I/O 或存储器位置并符合计时规格的任何系统总线。如IPMI 系统接口可连接到网络、PCI、LPC、IPMB(Intelligent Platform Management BUS,智能平台管理总线)(I2C)、SMBus或基板芯片组的专用总线。
IPMI 消息传送使用请求/响应协议。IPMI请求消息通常称为命令。请求/响应协议的使用可方便 IPMI 消息在不同的传输中进行传递。它还允许总线(如 IPMB)上的多个主操作,允许消息进行交叉存取,并允许多个管理控制器直接在总线上互通消息。
使用称为网络功能代码(NetFn)的字段将IPMI命令在功能上进行分组。拥有传感器、事件、机箱命令和其他命令的命令集。这种功能分组便于组织和管理命令值的分配。
所有IPMI请求消息都有一个网络功能命令和可选的数据字段。所有IPMI响应消息都携带网络功能命令可选数据和完成代码字段。
IPMI协议的核心是规范在平台管理体系结构中传感器、事件消息、SDR存储等消息数据格式的定义。IPMI消息格式见表1所示。
表1 IPMI消息格式
字段 |
说明 |
网络功能(NetFn) |
用于标识消息的功能类的字段。网络功能将IPMI命令分组为不同的集合 |
请求/响应标识符 |
用于区分请求消息和响应消息的字段。在 IPMB 协议中,此标识符与NetFn 代码合并在一起,其中偶数网络功能代码标识请求消息,奇数网络功能代码标识响应消息 |
请求程序的ID |
标识请求源的信息。此信息必须完整,才能使响应返回给正确的请求源。例如,IPMB 请求程序ID包含请求程序设备的从属地址和LUN。对于多数据流系统接口,请求程序ID是通过其发出请求数据流的数据流ID |
响应程序的ID |
标识请求的响应程序的字段。在请求消息中,此字段用于将请求传递到所需的响应程序;在响应消息中,此字段用于协助请求程序将响应与给定的请求相配 |
命令 |
在本文档中指定的消息包含 1 字节命令字段。命令在给定的网络功能中是唯一的。命令值范围可从00h到FDh。代码FEh保留用于规范的未来扩展,代码FFh保留用于未来接口中报告的消息接口级别错误 |
数据 |
数据字段包含请求或响应的其他参数(如果有) |
网络功能码将命令组合为功能命令集。NetFn分配见表2所示。
表2 NetFn分配
值(十六进制) |
名称 |
说明 |
00,01 |
机箱 |
用于普通的机箱功能命令字,如上/下电 |
02,03 |
桥接 |
用于桥接消息,当本设备作为桥接设备时才会用到 |
04,05 |
传感器/事件 |
用于传感器和事件消息 |
06,07 |
应用消息 |
用于应用消息,具体内容与执行的命令对象相关 |
08,09 |
固件 |
Firmware相关消息,比如在线升级 |
0A,0B |
存储 |
用于访问非易失存储器的消息,比如EEPROM |
0C,0D |
传输 |
用于访问接口的消息,比如配置Serial或LAN接口的属性 |
2C,2D |
组扩展 |
该命令字用于其它协议通信,其中数据位的第一字节标明协议的类型 |
2E,2F |
OEM扩展 |
用于IANA命令,数据的前三个字节必须为IANA Enterprise Number |
30-3F |
生产厂家自定义 |
用于生产厂家自定义命令 |
所有响应消息都包括一个完成码以作为响应的数据字段中的第一个字节,如表3所示。对无效的请求,管理控制器必须返回错误完成码。
完成码值分为通用、特性命令(包括OEM)。所有命令都可以返回通用完成码。成功执行的命令返回00h执行成功完成码。
表3 IPMI完成码
Code(十六进制) |
定义 |
00 |
执行成功 |
C0 |
目标繁忙 |
C1 |
无效命令 |
C2 |
目标LUN不支持该命令 |
C3 |
超时错误 |
C4 |
超出范围 |
C5 |
条件取消或无效条件ID |
C6 |
请求数据不完整 |
C7 |
无效数据长度 |
C8 |
请求数据超出范围 |
C9 |
参数超范围 |
CA |
无法返回请求数量的数据 |
CB |
请求的传感器、数据或记录不存在 |
CC |
请求消息里的数据不正确 |
CD |
目标传感器或记录支持 |
CE |
无法应答该请求 |
CF |
不能执行重复请求 |
D0 |
不能响应命令,当前SDR库正在升级 |
D1 |
不能响应命令,当前firmware正在升级 |
D2 |
不能响应命令,BMC正在初始化设备 |
D3 |
无效目标 |
D4 |
权限或安全等级不够 |
D5 |
在当前配置下无法执行该命令 |
D6 |
对目标子系统参数错误 |
01-7E |
厂商自定义区域 |
80-BE |
为特殊命令保留 |
其它 |
保留 |
IPMIv2.0包含通用的通信基础设施,称为“通道模型”。
通道提供了一种机制,用于BMC连接到不同介质之间指引IPMI消息的传送。通道编号用于标识特定的连接。使用通道可支持与BMC的多个IPMB、LAN、串行等连接,如表4所示。
通道中Primary IPMB(0h)和System Interface(Fh)的Channel ID是固定的,其它Channel可以自定义。
表4 HDM中的通道定义
通道ID |
类型/协议 |
说明 |
0 |
主 IPMB |
Channel 0被分配给Primary IPMB |
1-Bh |
特定实现的通道号 |
已分配实现的通道号,例如:LAN1(1h),LAN2(8h)、ICMB(3h)等 |
Ch-Dh |
-- |
保留 |
Eh |
当前通道 |
专门用于标识当前的Channel。例如软件如果想获取当前交互的Channel属性,但是又不知道具体Channel ID,则可以在‘Get Channel Info’命令中填入这个Channel ID |
Fh |
系统接口 |
Channel F被分配给System Interface |
与 BMC 进行的已验证 IPMI 通信是通过建立会话实现的。建立后,会话由会话ID标识。可将会话 ID 看作一个句柄,用于给定的远程用户和BMC之间的连接。IPMI规范支持与BMC建立多个活动会话。
无会话连接未经过身份验证,执行IPMI消息传送时不需要任何用户登录。系统接口和IPMB上的IPMI是无会话连接的。
如果在上次接收消息后,在指定的间隔内没有收到会话的新的有效消息,则BMC会自动关闭会话。关闭后,必须重新对会话进行身份验证才能恢复。
BMC Message Bridging用于桥接两个Media间的通信。Bridging只用于传递不同channel间的消息,即它不用于传递同一个channel的消息。
在IPMI 1.0规范中,Bridging只用于连接SMS和IPMB。到IPMI 1.5,它扩展到支持任意Media连到BMC的session。
由于发向SMS的消息总是会接收到接收消息队列(Receive Message Queue),所以Send Message命令一般不用于发消息给SMS,而是通过BMC SMS LUN 10b实现。BMC总是自动的将发给SMS的消息转换成LUN 10b格式,然后SMS再通过Get Message命令来获取。
KCS(Keyboard Controller Style,键盘控制器方式)是用于BMC 和SMS的一种传输协议,早期用于传输键盘敲击的数据,其速度和效率都不高。KCS 接口支持轮询操作,也可选择由 OBF 标志提供的中断操作。
LUN(Logical Unit Number)逻辑单元号,长度两bit:IPMB协议中的LUN是一个Sub-Address,用于将消息传递到物理设备中的不同逻辑单元。
LUN 00b通常用于通过KCS接口向BMC发送所有消息。LUN 10b保留用于接收消息队列,不能用于向BMC发送命令。
通过KCS接口的将请求消息从系统软件发送到BMC,按照图1所示的格式规范组织消息字节,消息字节含义如表5所示。
字节名称 |
含义 |
LUN |
同一物理接口之后的不同 LUN 的子地址,2bit |
NetFn |
网络功能码。NetFn 字段占用第一个消息字节的最高六位 偶数NetFn 值:向 BMC 发送请求 奇数NetFn 值:在来自 BMC 的响应 |
Cmd |
此消息字节用于指定的网络功能下执行的操作 |
Data |
零个或多个字节的数据,按照给定命令的要求而定。一般约定是首先传递数据低字节,但应查看具体的命令规范以进行确认 |
响应消息是通过KCS接口从BMC到系统软件的数据。只有在需要返回数据时,BMC才会通过KCS接口返回响应。按照图2所示格式规范组织消息字节,消息字节含义如表6所示。
字节名称 |
含义 |
LUN |
返回在请求消息中传递的LUN |
NetFn |
网络功能码,奇数NetFn值 |
Cmd |
返回在请求消息中传递的Cmd代码 |
完成代码 |
指示请求是否已成功完成 |
Data |
零个或多个字节的数据。BMC始终返回一个响应以确认请求,无论是否返回数据 |
LAN接口规范用于定义如何向封装在远程管理控制协议(RMCP)分组数据报中的BMC发送IPMI消息,或从该BMC 接收IPMI 消息。此功能也称为“IPMI over LAN”。如图3所示,IPMI还定义用于设置诸如IP地址等其他选项设置的相关LAN 特定的配置接口,以及用于发现基于IPMI系统的命令。
图3 IPMI的LAN接口架构
分布式管理任务组 (DMTF)指定RMCP格式。数据包格式用于通过DMTF标准论坛(ASF)规范进行发布。使用RMCP数据包格式可以在管理应用程序之间实现标准化操作。
IPMIv2.0定义扩展的数据包格式和功能,它们统称为RMCP+,并且是在RMCP数据包的IPMI特定部分中定义的。 RMCP+使用的身份验证算法与用于ASF2.0规范的机制更为接近。此外,RMCP+ 可添加数据机密性(加密)和有效负载功能。
对于LAN传输,IPMI报文是一种封装在IPMI Session包中的特殊数据类型。IPMI Session包封装在RMCP包中,而RMCP报文则是封装在UDP数据报中。
如图4所示,在RMCP/ASF的网络传输中,采用大端的字节序方式。IPMI协议规定传输数字域等多字节域采用小端的模式,因此除非特别另外的规定,在IPMI报文头和报文域中采用小端的字节序方式传输。
图4 RMCP+的包封装
IPMItool是一款支持 IPMI 1.5/2.0 规范的系统命令行工具。通过KCS通道时,IPMItool必须运行在服务器本机的操作系统上;当基于LAN时,IPMItool等工具可以远程管理服务器。
IPMItool第三方工具支持Windows和Linux系统。
以LAN通道为例,IPMItool命令的通用格式为ipmitool -I connect_type -H hostname -U username -P password <command>
在执行IPMI命令时,需要指定以下参数。
· -I connect_type:指定连接被管理设备的方式,connect_type的取值为lanplus,表示使用IPMI v2.0规范进行远程连接。
· -H hostname:指定被管理设备的IP地址。
· -U username:指定被管理设备的HDM用户名。
· -P password:指定被管理设备的HDM登录密码。
· <command>:IPMI命令执行的具体动作,本参数包含2种形式:字符串形式(如chassis status)或十六进制的原始代码形式(如raw 0x00 0x01)。关于<command>参数的说明,可以参考《H3C HDM IPMI基础命令参考手册》。
· -L:会话权限,默认Administrator。
IPMItool主要提供如表7所示的功能。
命令字 |
功能 |
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 |
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 |
firewall |
Configure Firmware Firewall |
exec |
Run list of commands from file |
set |
Set runtime variable for shell and exec |
ekanalyzer |
run FRU-Ekeying analyzer using FRU files |
#通过带外LAN通道获取服务器的各个传感器的取值和健康状态。
COMMAND>ipmitool -I lanplus -H 192.168.50.166 -U admin -P Password@_ sdr
18-P/S 1 Zone | 39 degrees C | ok
19-P/S 2 Zone | 36 degrees C | ok
24-BMC Zone | 44 degrees C | ok
32-Outlet_Temp 1 | 45 degrees C | ok
33-Outlet_Temp 2 | 41 degrees C | ok
16-P/S 1 | 36 degrees C | ok
17-P/S 2 | 36 degrees C | ok
02-CPU 1 | 52 degrees C | ok
03-CPU 2 | 51 degrees C | ok
04-CPU 1 DTS | -40 degrees C | ok
05-CPU 2 DTS | -41 degrees C | ok
06-P1 DIMM Ch1-3 | 36 degrees C | ok
#通过带内LPC通道获取服务器FRU信息。
[root@localhost~]# ipmitool fru
FRU Device Description : Builtin FRU Device (ID 0)
Chassis Type : Rack Mount Chassis
Chassis Part Number : 0200A00R
Chassis Serial : 750124
Chassis Extra : User Defined
Chassis Extra : 307BACC120AA
Chassis Extra : 6
Chassis Extra : FC9612PW11
Board Mfg Date : Fri Dec 8 00:00:00 2017
Board Mfg : H3C
Board Product : RS33M2C3S
Board Serial : 02A3TWH17C000085
Board Part Number : 0302A3TW
Board Extra : 210235A2CVH17C000003
Product Manufacturer : Unis Huashan Technologies Co., Ltd.
Product Name : 750124
Product Part Number : 0200A00R
Product Version : VERA
Product Serial : 638889
Product Asset Tag : h3c123456789
FRU Device Description : BackPanel1 (ID 2)
Board Mfg Date : Thu Sep 14 00:00:00 2017
Board Mfg : H3C
Board Product : RS33B04LA
Board Serial : 02A3GPH179000133
Board Part Number : 0302A3GP
Board Extra : 02A3GPH179000133
FRU Device Description : MB BIOS (ID 22)
Product Manufacturer : H3C
Product Name : BIOS
Product Part Number : C35
Product Version : 2.00.32P04
FRU Device Description : MB BMC (ID 21)
Product Manufacturer : H3C
Product Name : BMC
Product Part Number : HDM
Product Version : 2.13.00
FRU Device Description : Riser1 (ID 16)
Board Mfg Date : Sun Aug 13 08:00:00 2017
Board Mfg : H3C
Board Product : RS33RGPX16
Board Serial : 02A3H9H178000022
Board Part Number : 0302A3H9
Board Extra : 02A3H9H178000022
FRU Device Description : mLOM (ID 3)
Board Mfg Date : Tue Dec 5 00:00:00 2017
Board Mfg : H3C
Board Product : RS33NGT4M
Board Serial : 02A3GKH17B000267
Board Part Number : 0302A3GK
Board Extra : 02A3GKH17B000267
H3C的BMC管理软件HDM(Hardware Device Management)兼容IPMI 1.5/IPMI 2.0规范,通过第三方工具(如IPMItool)基于LPC通道或LAN通道实现对服务器的有效管理。
· LPC/eSPI通道:运行KCS协议,IPMItool等工具必须运行在服务器本机的操作系统上。
· LAN通道:运行UDP/IP协议,IPMItool等工具可以远程管理服务器。
HDM支持AES-CBC-128算法进行加密和HMAC-SHA1/HMAC-SHA256算法进行鉴权和完整性校验。
HDM IPMI 标准命令支持情况如表8所示:
表8 HDM支持IPMI Spec 标准命令列表
NetFn |
CMD |
命令描述 |
HDM支持 |
App |
01h |
Get Device ID |
支持 |
App |
01h |
Broadcast ‘Get Device ID’ |
不支持 |
App |
02h |
Cold Reset |
支持 |
App |
03h |
Warm Reset |
支持 |
App |
04h |
Get Self Test Results |
支持 |
App |
05h |
Manufacturing Test On |
支持 |
App |
06h |
Set ACPI Power State |
支持 |
App |
07h |
Get ACPI Power State |
支持 |
App |
08h |
Get Device GUID |
支持 |
App |
09h |
Get NetFn Support |
支持 |
App |
0Ah |
Get Command Support |
支持 |
App |
0Bh |
Get Command Sub-function Support |
支持 |
App |
0Ch |
Get Configurable Commands |
支持 |
App |
0Dh |
Get Configurable Command Sub-functions |
支持 |
App |
60h |
Set Command Enables |
支持 |
App |
61h |
Get Command Enables |
支持 |
App |
62h |
Set Command Sub-function Enables |
支持 |
App |
63h |
Get Command Sub-function Enables |
支持 |
App |
64h |
Get OEM NetFn IANA Support |
支持 |
App |
22h |
Reset Watchdog Timer |
支持 |
App |
24h |
Set Watchdog Timer |
支持 |
App |
25h |
Get Watchdog Timer |
支持 |
App |
2Eh |
Set BMC Global Enables |
支持 |
App |
2Fh |
Get BMC Global Enables |
支持 |
App |
30h |
Clear Message Flags |
支持 |
App |
31h |
Get Message Flags |
支持 |
App |
32h |
Enable Message Channel Receive |
支持 |
App |
33h |
Get Message |
支持 |
App |
34h |
Send Message |
支持 |
App |
35h |
Read Event Message Buffer |
支持 |
App |
36h |
Get BT Interface Capabilities |
支持 |
App |
37h |
Get System GUID |
支持 |
App |
38h |
Get Channel Authentication Capabilities |
支持 |
App |
39h |
Get Session Challenge |
支持 |
App |
3Ah |
Activate Session |
支持 |
App |
3Bh |
Set Session Privilege Level |
支持 |
App |
3Ch |
Close Session |
支持 |
App |
3Dh |
Get Session Info |
支持 |
App |
3Fh |
Get AuthCode |
支持 |
App |
40h |
Set Channel Access |
支持 |
App |
41h |
Get Channel Access |
支持 |
App |
42h |
Get Channel Info Command |
支持 |
App |
43h |
Set User Access Command |
支持 |
App |
44h |
Get User Access Command |
支持 |
App |
45h |
Set User Name |
支持 |
App |
46h |
Get User Name Command |
支持 |
App |
47h |
Set User Password Command |
支持 |
App |
48h |
Activate Payload |
支持 |
App |
49h |
Deactivate Payload |
支持 |
App |
4Ah |
Get Payload Activation Status |
支持 |
App |
4Bh |
Get Payload Instance Info |
支持 |
App |
4Ch |
Set User Payload Access |
支持 |
App |
4Dh |
Get User Payload Access |
支持 |
App |
4Eh |
Get Channel Payload Support |
支持 |
App |
4Fh |
Get Channel Payload Version |
支持 |
App |
50h |
Get Channel OEM Payload Info |
支持 |
App |
52h |
Master Write-Read |
不支持 |
App |
54h |
Get Channel Cipher Suites |
支持 |
App |
55h |
Suspend/Resume Payload Encryption |
支持 |
App |
56h |
Set Channel Security Keys |
支持 |
App |
57h |
Get System Interface Capabilities |
支持 |
App |
58h |
Set System Info Parameters |
支持 |
App |
59h |
Get System Info Parameters |
支持 |
App |
60h-64h |
Firmware Firewall Configuration |
不支持 |
Chassis |
00h |
Get Chassis Capabilities |
支持 |
Chassis |
01h |
Get Chassis Status |
支持 |
Chassis |
02h |
Chassis Control |
支持 |
Chassis |
03h |
Chassis Reset |
不支持 |
Chassis |
04h |
Chassis Identify |
支持 |
Chassis |
05h |
Set Chassis Capabilities |
支持 |
Chassis |
06h |
Set Power Restore Policy |
支持 |
Chassis |
07h |
Get System Restart Cause |
支持 |
Chassis |
08h |
Set System Boot Options |
支持 |
Chassis |
09h |
Get System Boot Options |
支持 |
Chassis |
0Ah |
Set Front Panel Button Enables |
支持 |
Chassis |
0Bh |
Set Power Cycle Interval |
支持 |
Chassis |
0Fh |
Get POH Counter |
支持 |
S/E |
00h |
Set Event Receiver |
支持 |
S/E |
01h |
Get Event Receiver |
支持 |
S/E |
02h |
Platform Event (a.k.a. “Event Message”) |
支持 |
S/E |
10h |
Get PEF Capabilities |
支持 |
S/E |
11h |
Arm PEF Postpone Timer |
支持 |
S/E |
12h |
Set PEF Configuration Parameters |
支持 |
S/E |
13h |
Get PEF Configuration Parameters |
支持 |
S/E |
14h |
Set Last Processed Event ID |
支持 |
S/E |
15h |
Get Last Processed Event ID |
支持 |
S/E |
16h |
Alert Immediate |
支持 |
S/E |
17h |
PET Acknowledge |
支持 |
S/E |
20h |
Get Device SDR Info |
支持 |
S/E |
21h |
Get Device SDR |
支持 |
S/E |
22h |
Reserve Device SDR Repository |
支持 |
S/E |
23h |
Get Sensor Reading Factors |
支持 |
S/E |
24h |
Set Sensor Hysteresis |
支持 |
S/E |
25h |
Get Sensor Hysteresis |
支持 |
S/E |
26h |
Set Sensor Threshold |
支持 |
S/E |
27h |
Get Sensor Threshold |
支持 |
S/E |
28h |
Set Sensor Event Enable |
支持 |
S/E |
29h |
Get Sensor Event Enable |
不支持 |
S/E |
2Ah |
Re-arm Sensor Events |
不支持 |
S/E |
2Bh |
Get Sensor Event Status |
不支持 |
S/E |
2Dh |
Get Sensor Reading |
支持 |
S/E |
2Eh |
Set Sensor Type |
支持 |
S/E |
2Fh |
Get Sensor Type |
支持 |
S/E |
30h |
Set Sensor Reading And Event Status |
支持 |
Storage |
10h |
Get FRU Inventory Area Info |
支持 |
Storage |
11h |
Read FRU Data |
支持 |
Storage |
12h |
Write FRU Data |
支持 |
Storage |
20h |
Get SDR Repository Info |
支持 |
Storage |
21h |
Get SDR Repository Allocation Info |
支持 |
Storage |
22h |
Reserve SDR Repository |
支持 |
Storage |
23h |
Get SDR |
支持 |
Storage |
24h |
Add SDR |
支持 |
Storage |
25h |
Partial Add SDR |
支持 |
Storage |
26h |
Delete SDR |
支持 |
Storage |
27h |
Clear SDR Repository |
支持 |
Storage |
28h |
Get SDR Repository Time |
支持 |
Storage |
29h |
Set SDR Repository Time |
支持 |
Storage |
2Ah |
Enter SDR Repository Update Mode |
支持 |
Storage |
2Bh |
Exit SDR Repository Update Mode |
支持 |
Storage |
2Ch |
Run Initialization Agent |
支持 |
Storage |
40h |
Get SEL Info |
支持 |
Storage |
41h |
Get SEL Allocation Info |
支持 |
Storage |
42h |
Reserve SEL |
支持 |
Storage |
43h |
Get SEL Entry |
支持 |
Storage |
44h |
Add SEL Entry |
支持 |
Storage |
45h |
Partial Add SEL Entry |
支持 |
Storage |
46h |
Delete SEL Entry |
支持 |
Storage |
47h |
Clear SEL |
支持 |
Storage |
48h |
Get SEL Time |
支持 |
Storage |
49h |
Set SEL Time |
支持 |
Storage |
5Ah |
Get Auxiliary Log Status |
支持 |
Storage |
5Bh |
Set Auxiliary Log Status |
支持 |
Storage |
5Ch |
Get SEL Time UTC Offset |
支持 |
Storage |
5Dh |
Set SEL Time UTC Offset |
支持 |
Transport |
01h |
Set LAN Configuration Parameters |
支持 |
Transport |
02h |
Get LAN Configuration Parameters |
支持 |
Transport |
03h |
Suspend BMC ARPs |
支持 |
Transport |
04h |
Get IP/UDP/RMCP Statistics |
不支持 |
Transport |
10h |
Set Serial/Modem Configuration |
支持 |
Transport |
11h |
Get Serial/Modem Configuration |
支持 |
Transport |
12h |
Set Serial/Modem Mux |
支持 |
Transport |
13h |
Get TAP Response Codes |
支持 |
Transport |
14h |
Set PPP UDP Proxy Transmit Data |
不支持 |
Transport |
15h |
Get PPP UDP Proxy Transmit Data |
不支持 |
Transport |
16h |
Send PPP UDP Proxy Packet |
不支持 |
Transport |
17h |
Get PPP UDP Proxy Receive Data |
不支持 |
Transport |
18h |
Serial/Modem Connection Active |
不支持 |
Transport |
19h |
Callback |
支持 |
Transport |
1Ah |
Set User Callback Options |
支持 |
Transport |
1Bh |
Get User Callback Options |
支持 |
Transport |
1Ch |
Set Serial Routing Mux |
不支持 |
Transport |
20h |
SOL Activating |
不支持 |
Transport |
21h |
Set SOL Configuration Parameters |
支持 |
Transport |
22h |
Get SOL Configuration Parameters |
支持 |
Transport |
30h |
Forwarded Command |
不支持 |
Transport |
31h |
Set Forwarded Commands |
不支持 |
Transport |
32h |
Get Forwarded Commands |
不支持 |
Transport |
33h |
Enable Forwarded Commands |
不支持 |
Bridge |
00h |
Get Bridge State |
不支持 |
Bridge |
01h |
Set Bridge State |
不支持 |
Bridge |
02h |
Get ICMB Address |
不支持 |
Bridge |
03h |
Set ICMB Address |
不支持 |
Bridge |
04h |
Set Bridge ProxyAddress |
不支持 |
Bridge |
05h |
Get Bridge Statistics |
不支持 |
Bridge |
06h |
Get ICMB Capabilities |
不支持 |
Bridge |
08h |
Clear Bridge Statistics |
不支持 |
Bridge |
09h |
Get Bridge Proxy Address |
不支持 |
Bridge |
0Ah |
Get ICMB Connector Info |
不支持 |
Bridge |
0Bh |
Get ICMB Connection ID |
不支持 |
Bridge |
0Ch |
Send ICMB Connection ID |
不支持 |
Bridge |
10h |
PrepareForDiscovery |
不支持 |
Bridge |
11h |
GetAddresses |
不支持 |
Bridge |
12h |
SetDiscovered |
不支持 |
Bridge |
13h |
GetChassisDeviceId |
不支持 |
Bridge |
14h |
SetChassisDeviceId |
不支持 |
Bridge |
20h |
BridgeRequest |
不支持 |
Bridge |
21h |
BridgeMessage |
不支持 |
Bridge |
30h |
GetEventCount |
不支持 |
Bridge |
31h |
SetEventDestination |
不支持 |
Bridge |
32h |
SetEventReceptionState |
不支持 |
Bridge |
33h |
SendICMBEventMessage |
不支持 |
Bridge |
34h |
GetEventDestination (optional) |
不支持 |
Bridge |
35h |
GetEventReceptionState (optional) |
不支持 |
IPMI标准规范中定义NetFn值如表9所示:
NetFn |
Value |
App |
0x06 |
Chassis |
0x00 |
S/E |
0x04 |
Storage |
0x0A |
Transport |
0x0C |
Bridge |
0x02 |
各命令的详细使用可参考IPMI2.0规范。
HDM除了支持标准的IPMI命令外,还可以通过raw格式命令,实现HDM的IPMI扩展命令集,以满足不断扩展的数据中心用户的需求。
扩展命令主要支持功能如表10所示,具体可以参考《H3C HDM IPMI基础命令参考手册》。
表10 HDM IPMI扩展功能
功能 |
描述 |
硬件信息 |
获取主机的CPU、内存、PCIe插卡等部件信息 |
存储管理 |
实现对存储卡、物理盘和逻辑盘进行管理 |
BIOS |
BIOS命令交互,实现BIOS部分配置项管理 |
DNS |
DNS配置和信息查看 |
防火墙 |
防火墙配置和信息查看 |
网口 |
网口管理,包括bond配置、网口状态配置 |
目录用户管理 |
实现LDAP、AD配置 |
SNMP |
SNMP配置和信息查看 |
NTP |
NTP配置和信息查看 |
HDM维护 |
HDM的固件管理和配置管理 |
可维护性 |
包括Syslog、SMTP服务的配置和信息查看,SEL管理 |
风扇 |
风扇管理 |
PSU |
电源管理 |
KVM |
KVM加密配置 |
HDM为每个IPMI接口指定一个权限模块,用户调用接口时会根据接口所属的权限模块以及用户的角色组配置,进行权限判断,提高接口的安全性。
各模块权限说明如表11所示。
表11 HDM中的模块权限
权限模块 |
描述 |
用户配置 |
包括:用户管理、高级密码配置、目录管理、导入导出、联合管理等 |
常规配置 |
包括:网络配置、告警设置、资产标签配置等 |
远程控制 |
包括:RAID、BIOS选项、启动项、UID、SOL |
远程媒体 |
包括:远程镜像挂载 |
安全配置 |
包括:SSL、防火墙、服务配置等 |
电源控制 |
包括:电源管理、风扇管理、节能控制 |
维护诊断 |
包括:日志管理、录像截屏、固件管理、固件重启 |
配置自身 |
包括:用户配置自身密码 |
查询 |
包括:GET接口一般都具有查询权限 |
表12 缩略语
术语 |
解释 |
IPMI |
Intelligent Platform Management Interface,智能平台管理接口 |
HDM |
Hardware Device Management,设备管理系统 |
BMC |
Baseboard Management Controller,基板管理控制器 |
MC |
Management Controller,管理控制器 |
IPMB |
Intelligent Platform Management Bus,智能平台管理总线 |
DMTF |
Distributed Management Task Force,分布式管理任务组 |
KVM |
Keyboard Video Mouse,键盘、视频和鼠标 |
SMS |
System Management Software,系统管理软件 |
LUN |
Logical Unit Number,逻辑单元号 |
LPC |
Low Pin Count,用于连接I/O设备 |
KCS |
Keyboard Controller Style,键盘控制器方式 |
ASF |
Apache Software Foundation,Apache软件基金会 |
DCMI |
Data Centers Manageability Interface,数据中心可管理接口 |