3. iDRAC与生命周期控制器实战

在滚动升级与业务迁移项目中,iDRAC9 与 Lifecycle Controller(LC)承担的是“带外控制面”的角色:即使操作系统未启动、网络尚未配置,只要服务器接入管理网并通电,就能完成固件盘点、远程开关机、虚拟介质挂载和升级前环境核查。把这一层用熟,后续的固件批量升级、节点下线与迁移才有稳定的操作入口。本节围绕四个动作展开:固件清单收集、远程管理、虚拟介质挂载、升级前环境检查。

一、先建立带外管理通道

iDRAC9 的默认管理口通常是服务器后部的专用 RJ45(iDRAC 端口),出厂默认地址多为 192.168.0.120/24,用户名 root,初始密码位于机箱抽拉标签或由部署方统一设置。生产环境不建议沿用默认网段,应规划独立的管理 VLAN,例如 10.20.30.0/24,并逐台设置静态地址或通过 DHCP 保留绑定 MAC。首次登录后先改密码、禁用 IPMI over LAN(如无需求)、开启所需服务。

验证通道是否可用,最直接的方式是命令行:

# 检查 iDRAC 连通性与基本信息
ping 10.20.30.51
racadm -r 10.20.30.51 -u root -p 'YourPass' getsysinfo

# 查看当前固件版本与型号
racadm -r 10.20.30.51 -u root -p 'YourPass' getversion
racadm -r 10.20.30.51 -u root -p 'YourPass' get iDRAC.Info

若 racadm 返回 RAC947 或连接超时,优先排查管理网路由、iDRAC 网口指示灯与交换机端口 VLAN。带外通道不通,后面所有批量动作都无从谈起。

二、固件清单收集:把“现状”变成可核对的数据

升级前必须知道每台机器上各部件当前固件版本。iDRAC9 提供两种常用方式:Web 界面 System → Inventory → Firmware Inventory,以及 racadm 的 swinventory 命令。后者更适合批量采集,输出可重定向为文件。

# 导出完整固件清单(示例)
racadm -r 10.20.30.51 -u root -p 'YourPass' swinventory > node51_fw.txt

# 仅看关键部件
racadm -r 10.20.30.51 -u root -p 'YourPass' swinventory | findstr /I "BIOS iDRAC NIC PERC"

清单中需要重点比对的对象包括:BIOS、iDRAC、Lifecycle Controller、PERC 阵列卡、网卡(NIC)、电源固件(PSU)、背板与 BOSS 卡。建议把每台机器的型号、服务标签、当前版本、目标版本整理成一张对照表,作为升级窗口的输入。示例(数据为教学假设):

部件当前版本目标版本是否需重启
BIOS2.15.12.19.1是
iDRAC6.10.80.007.10.30.00是(iDRAC 重启)
PERC H75552.21.0-460652.24.0-5012否(在线)
NIC (Broadcom)21.85.922.10.1否

注意:iDRAC 与 LC 固件通常需要先升级到较新版本,才能识别后续更高版本的部件固件,因此升级顺序一般是 iDRAC/LC → BIOS → 其它部件。

iDRAC9 / LC 升级前环境检查与操作链 带外管理通道 管理 VLAN 10.20.30.0/24 iDRAC 静态地址 racadm / Web 登录 root + 强密码 固件清单收集 swinventory 导出 BIOS / iDRAC / LC / PERC / NIC 当前版本 vs 目标版本 生成对照表 虚拟介质挂载 Map Removable Disk ISO / IMG 镜像 挂载为虚拟光驱 用于离线升级/救援 升级前环境检查(逐项确认) 电源与冗余 双 PSU 在线 / 无告警 存储健康 RAID 正常 / 无降级 散热与温度 风扇正常 / 进风温度 LC 状态 LC Ready / 无作业挂起 日志 无严重告警 远程管理动作(升级窗口内) 远程开机 / 关机 power action 挂载 ISO 并引导 virtual media 执行固件更新 LC / racadm update 验证版本 swinventory 复核

三、远程管理:开关机、重启与作业队列

iDRAC9 的远程电源控制不依赖操作系统,常用命令如下:

# 查看当前电源状态
racadm -r 10.20.30.51 -u root -p 'YourPass' serveraction powerstatus

# 优雅关机(需 OS 支持 ACPI)
racadm -r 10.20.30.51 -u root -p 'YourPass' serveraction powerdown

# 强制下电(业务已迁移、确认无 IO)
racadm -r 10.20.30.51 -u root -p 'YourPass' serveraction poweroff

# 开机
racadm -r 10.20.30.51 -u root -p 'YourPass' serveraction powerup

# 冷重启
racadm -r 10.20.30.51 -u root -p 'YourPass' serveraction hardreset

在滚动升级中,建议先通过业务侧确认节点已从负载均衡摘除、无活跃会话,再执行 powerdown;若 5 分钟内未完成,再考虑 poweroff。升级完成后用 powerstatus 确认已上电,并检查 LC 作业队列是否清空:

racadm -r 10.20.30.51 -u root -p 'YourPass' jobqueue view -i JID_xxxxxxxx

四、虚拟介质挂载:把 ISO 变成“远程光驱”

虚拟介质是 iDRAC 最实用的功能之一。它把本地或网络共享的 ISO/IMG 映射为服务器可见的虚拟光驱或虚拟软盘,常用于:挂载固件更新 ISO、挂载操作系统安装镜像、挂载诊断工具盘。Web 界面路径为 Virtual Media → Map Removable Disk,选择镜像文件后点击 Map Device。命令行方式:

# 挂载本地 ISO 为虚拟光驱(示例)
racadm -r 10.20.30.51 -u root -p 'YourPass' remoteimage -c -l //10.20.30.10/share/fw.iso

# 查看挂载状态
racadm -r 10.20.30.51 -u root -p 'YourPass' remoteimage -s

# 卸载
racadm -r 10.20.30.51 -u root -p 'YourPass' remoteimage -d

挂载后需在 Virtual Media → Attach/Detach 中确认状态为 Attached,并在 BIOS 启动顺序中把虚拟光驱设为第一启动项,或通过一次性引导菜单(F11)选择 Virtual CD。注意:虚拟介质传输依赖管理网带宽,大镜像建议放在管理网内的高速共享上,避免跨广域网挂载导致引导超时。

五、升级前环境检查清单

在真正执行固件升级前,逐项确认以下内容,可显著降低升级失败或业务中断风险:

  • 电源:双 PSU 均在线,无电源冗余丢失告警;若为单电,升级期间不得断电。
  • 存储:PERC 阵列状态为 Optimal,无降级、无重建中;虚拟磁盘有可用剩余空间。
  • 散热:风扇无故障,进风温度在厂商允许范围内(通常 10–35℃)。
  • LC 状态:Lifecycle Controller 处于 Ready,无未完成作业;如有,先清理或等待完成。
  • 日志:清除或记录当前 SEL/LC 日志,便于升级后对比新增告警。
  • 网络:管理网连通,iDRAC 与 LC 可访问固件仓库或共享目录。
  • 业务:节点已从集群/负载均衡摘除,无活跃业务会话,数据已同步或备份。
建议在升级窗口前 24 小时先做一次“只读检查”:用 racadm getsysinfo、swinventory、storage get controllers 采集基线,升级后再采集一次,用差异对比判断升级是否真正生效。
iDRAC 固件升级过程中 iDRAC 会重启,Web 会话会断开,属正常现象;但升级期间不要断电、不要强制刷新页面。若升级后 iDRAC 无法登录,可尝试通过 racadm 的 racreset 恢复,仍失败则需现场介入。

把上述四步串起来,就形成了一条可复用的带外操作链:先通管理通道,再采集固件清单,接着挂载所需 ISO,最后在升级窗口内执行远程电源控制与固件更新,并用同一套清单复核结果。这条链路是后续批量滚动升级与业务迁移的基础。