PiKVM Redfish与IPMI命令映射:功能对照表
在远程服务器管理领域,IPMI(Intelligent Platform Management Interface,智能平台管理接口)作为传统协议已被广泛应用,而Redfish作为现代替代方案,基于HTTP协议解决了IPMI的诸多安全问题。PiKVM同时支持这两种协议,为用户提供灵活的远程管理选择。本文将详细对比两者在电源控制、系统信息查询等核心功能上的命令映射关系,并说明实际应用场景与注意事项。
协议概述与安全建议
IPMI是一种 legacy protocol(传统协议),虽被众多企业系统支持,但存在已知安全隐患,不建议在非信任网络中使用。Redfish则是由DMTF(分布式管理任务组)制定的现代化协议,基于HTTP/JSON,提供更安全的认证机制和结构化数据交互。PiKVM推荐优先使用Redfish或原生的KVMD API进行远程管理。
图:IPMI与Redfish协议栈对比示意图(来源:PiKVM官方文档)
电源管理命令映射
1. 查询电源状态
| 功能描述 | IPMI命令 | Redfish命令 |
|---|---|---|
| 查看当前电源状态 | ipmitool -I lanplus -U admin -P admin -H pikvm power status | redfishtool -S Never -u admin -p admin -r pikvm Systems |
2. 电源控制操作
| 功能描述 | IPMI命令 | Redfish命令 |
|---|---|---|
| 开机 | ipmitool -I lanplus -U admin -P admin -H pikvm power on | redfishtool -S Never -u admin -p admin -r pikvm Systems reset On |
| 关机(强制) | ipmitool -I lanplus -U admin -P admin -H pikvm power off | redfishtool -S Never -u admin -p admin -r pikvm Systems reset ForceOff |
| 重启 | ipmitool -I lanplus -U admin -P admin -H pikvm power reset | redfishtool -S Never -u admin -p admin -r pikvm Systems reset ForceRestart |
串行控制台访问(SOL)
IPMI SOL配置与激活
- 配置USB-COM适配器(需修改
/etc/kvmd/override.yaml):ipmi: sol: device: /dev/ttyUSB0 # USB-COM设备路径 speed: 115200 # 波特率 - 激活SOL会话:
ipmitool -I lanplus -U admin -P admin -H pikvm sol activate
Redfish串行控制台访问
Redfish通过HTTP接口提供串行控制台访问,需结合PiKVM的WebSocket服务实现实时交互。具体接口定义可参考Redfish官方规范,或通过以下命令获取控制台信息:
redfishtool -S Never -u admin -p admin -r pikvm Systems/1/SerialConsole
配置与启用方法
IPMI服务启用步骤
- 切换文件系统为可写模式:
[root@pikvm ~]# rw - 配置IPMI账户(编辑
/etc/kvmd/ipmipasswd):admin:$2a$10$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 加密后的密码 - 启动并设置开机自启服务:
[root@pikvm ~]# systemctl enable --now kvmd-ipmi - 恢复只读模式:
[root@pikvm ~]# ro
Redfish服务访问方式
Redfish服务在PiKVM中默认启用,无需额外配置。可通过redfishtool或HTTP客户端直接访问:
# 获取系统信息
redfishtool -S Never -u admin -p admin -r pikvm Systems
# 强制关机
redfishtool -S Never -u admin -p admin -r pikvm Systems reset ForceOff
注意事项与最佳实践
- 安全建议:IPMI协议因设计缺陷存在安全风险,建议仅在可信内网使用,或通过加密网络访问。Redfish支持HTTPS和现代认证机制,是跨网络管理的首选方案。
- 命令权限:所有操作需使用管理员账户(默认
admin),密码存储于/etc/kvmd/ipmipasswd(IPMI)或系统用户数据库(Redfish)。 - 兼容性:IPMI命令需使用
lanplus接口(-I lanplus)以支持加密传输,Redfish需确保客户端支持HTTP Basic Auth或Token认证。
扩展资源
- 官方文档:
- IPMI配置指南:docs/ipmi.md
- Redfish协议详解:Redfish官方规范
- 工具下载:
- ipmitool:适用于IPMI命令行操作
- redfishtool:Redfish协议官方客户端(GitHub仓库)
- 故障排查:
- IPMI服务状态:
systemctl status kvmd-ipmi - Redfish API测试:
curl -u admin:admin http://pikvm/redfish/v1/Systems
- IPMI服务状态:
通过本文的命令映射表,用户可根据现有管理系统选择合适的协议,实现PiKVM设备的无缝集成。Redfish作为未来趋势,建议在新部署中优先采用;而IPMI则可用于兼容传统管理工具链。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考




