ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

DELL服务器iDRAC带外管理:远程查看硬件信息与故障排查指南

DELL服务器iDRAC带外管理:远程查看硬件信息与故障排查指南 干这行的人应该都有过这种经历机房里一台DELL PowerEdge正在跑着业务突然前面板的琥珀色指示灯亮了但系统看着还正常远程登录也没啥异常。这时候你要是不搞清楚状态就继续放着运气好只是某块盘被预测故障运气不好过两天直接宕机。我处理这种问题的第一反应永远都是先进iDRAC看一眼而不是急急忙忙联系机房值班去按面板。iDRAC全称Integrated Dell Remote Access Controller是DELL服务器上的带外管理控制器。所谓带外就是它不依赖操作系统、不依赖CPU跑不跑、不依赖业务网卡通不通有独立的处理器、独立网口或者共享网口、独立固件哪怕主机已经点不亮只要给它供上电、网线能通你照样能远程看到这台服务器当前的硬件状态。这篇文章就专门讲清楚一件事怎么通过iDRAC口把一台DELL服务器的硬件信息尽收眼底。1. 为什么硬件状态非看iDRAC不可先花点篇幅把iDRAC的定位聊透。很多刚接触服务器运维的同事会问服务器上装个Windows/Linux设备管理器里不也能看硬件吗那不一样。操作系统里看到的属于带内信息前提是系统能起来、驱动能装上、服务不崩。可服务器真正出大问题的场景往往恰恰是系统起不来、开机卡在自检、黑屏、反复重启这类情况。这时候带内手段全部失效你得有一个不管主机什么状态都能访问的入口这就是iDRAC存在的意义。我经常用一个通俗的类比带内管理像是让病人自己描述哪里不舒服带外管理则像是给他装了一套独立生命体征监护仪。服务器可以晕过去但你照样能在监护仪上看到心率、血氧、体温知道是哪根血管堵了。iDRAC就扮演这个监护仪。具体到查看硬件信息iDRAC能告诉你的东西非常全CPU型号、主频、核心数、每个插槽的安装状态、CPU错误状态内存总容量、每根内存条的位置编号、状态是否有错、是否禁用、速率物理硬盘盘位、型号、容量、健康状态、属于哪块背板、SAS还是SATA还是NVMeRAID控制器PERC卡型号、固件版本、缓存/电池状态、配置的虚拟磁盘状态电源模块PSU当前功率、输入电压、冗余状态、是否报警风扇与温度各风扇转速、CPU温度、进风口温度、主板温度传感器读数NIC网络卡型号、MAC地址、链路状态系统事件日志SEL和Lifecycle Log历史上发生的所有硬件事件包括哪块内存曾经报错、哪块盘什么时候掉线、哪次开机时电压异常。也就是说一台DELL服务器从机房开箱到寿终正寝绝大多数硬件维度的健康档案都在iDRAC里。版本上常见的PowerEdge R710/R720/R730/R740/R750分别对应iDRAC6、iDRAC7、iDRAC8、iDRAC9再新的机型会出现iDRAC10。界面风格差异比较大但查看硬件模块的思路是通用的我在下文中会以iDRAC9为主展开遇到老版本的地方单独说明。2. 第一次连iDRAC找IP、改密码、定访问方式2.1 默认IP到底是多少这是刚从网络设备转过来的人最容易卡住的地方。DELL iDRAC出厂时通常有一个默认IP绝大多数机型是192.168.0.120少数老机型是192.168.1.1子网掩码一般按255.255.255.0配置。但这里有一个重要前提新一些的型号在出货时如果被要求配置了DHCPiDRAC会动态获取地址那就没有默认IP可言了。所以第一件事永远是搞清楚当前的iDRAC IP。判断方法有几种按效率排序看前面板LCD部分塔式或机架式服务器前面有小液晶屏开机后可以通过按钮切换显示里面有iDRAC IP信息。开机自检时注意屏幕提示服务器POST阶段界面下方会短暂显示iDRAC IP : 192.168.x.x : ...速度可能比较快可以提前准备好手机连拍。进F2系统设置开机按F2进入System Setup →iDRAC Settings→Network能看到当前IPv4配置和获取方式。操作系统里查如果系统能正常启动可以在Linux下执行ipmitool lan printWindows下安装DELL OMIMSSOpenManage Server Administrator后进入Remote Access查看。利用DELL工具扫描同一二层网络内用racadm或Dell OpenManage Essentials等工具也能扫到iDRAC的地址。我这几年打交道最多的是R730、R740这批机器默认往往就是固件里写死192.168.0.120但别死磕这个值。新拆箱的机器第一次上电时建议直接看开机自检屏幕一秒内就能确认实际地址。2.2 默认账号密码和首次登录老一代iDRACiDRAC7及更早默认账号是root密码是calvin全小写。iDRAC8早期也是这套默认凭据。但iDRAC9有个明显变化首次开机进入iDRAC时会要求设置管理员密码也就是说你拿到的机器可能根本没有默认密码而是按初始配置向导走一遍。如果对方给的机器是二手或者机房代管退回的密码未知那就只能在服务器接显示器键盘的情况下进F2的iDRAC设置里做恢复出厂设置Reset iDRAC Config或者用短接主板上的跳线方式做硬件级恢复。第一次用浏览器访问iDRAC时因为走的是HTTPS自签名证书会触发浏览器警告这是正常的。iDRAC8及以下版本对现代浏览器兼容性差Firefox或者新版Chrome可能页面空白或者按钮点不动这时候建议先用老版本浏览器IE兼容模式/老Chrome内核完成初始配置然后把iDRAC固件升级到最新版本升级完大部分兼容性问题都能缓解。iDRAC9和iDRAC10则好得多直接Chrome/Edge就能正常用。2.3 专用管理口还是共享模式每台DELL服务器背后通常会有两种和网络有关的端口组业务网口比如四口千兆/双口万兆和iDRAC专用口。iDRAC专用口一般单独标注小字iDRAC或者用固定的小金属外壳网口样式上是个单独的RJ45。默认推荐使用专用口iDRAC流量和业务流量彻底隔离即便业务网卡驱动挂了、系统down了管理通道依然通畅。还有一种LOM共享Shared LOM模式把iDRAC复用到第一个业务网口上好处是省网口、省线缆缺点是一旦这个口变成系统网络的主链路传递大量业务流量时管理报文会和业务报文共用链路极端情况下可能出现卡顿而且网卡硬件故障时管理通道一样断掉。所以我的建议比较明确机房布线条件允许就给每台服务器留一个专用管理口接到管理交换机的独立VLAN里别跟业务混在一起。2.4 访问手段常规方式无非三种浏览器走Web界面、命令行走SSHssh rootiDRAC-IP、脚本走远程RACADM。另外iDRAC支持IPMI over LAN可以用ipmitool这类标准工具读取传感器。后两种方式适合批量、自动化、脚本化操作适合稍微有点Linux基础的人。如果只是想快速看看一台机器硬件状态Web界面最直接。我在下面两章分别把Web和命令行的思路都讲一遍你可以按习惯选择。3. Web界面里逐个硬件子项看什么参数登录进iDRAC之后不同版本菜单名称差异不小但核心模块是共通的。iDRAC9的首页Dashboard会给一个整体健康状态Overall Health绿色代表正常黄色代表有警告红色代表有严重故障。这个状态就等于机箱前面板指示灯在网页端的对应版本你远程的时候以它为准。iDRAC9的硬件详细信息主要在Hardware菜单下展开里面又有CPU、Memory、PCIe、Power、Thermal、Physical Disks、Storage等子页。iDRAC8则把这些分散在左侧树形菜单的System → Hardware下名称类似。下面按实际排查需求一个一个说。3.1 CPU先看是否全部在线点进Hardware → CPU页面会列出这台机器主板上的CPU插槽。常见的双路机器有Socket 1和Socket 2两个条目。每条里能看到CPU型号比如Intel Xeon E5-2680 v4、基础频率、核心数、线程数、二级缓存/三级缓存、当前状态。排查CPU问题最直接的一点是看状态字段。如果某个插槽显示Present且健康那就是正常的如果显示Absent、Failed或Unknown结合这台机器是不是双路配置就能判断是否有一个CPU没识别到或者已经故障。还有一个典型的坑单颗CPU的机器如果CPU装在Socket 2槽里而没有装Socket 1部分型号开机自检会有CPU配置告警虽然能开机但内存插槽的使用规则也会受影响这类问题在iDRAC里一眼就能看出来。3.2 内存哪里坏了看位置状态内存是服务器故障率最高的部件之一iDRAC在Memory页面里会把每个内存通道、每个插槽都展示出来。页面一般显示一个表格或者内存拓扑图内容包括插槽名称如A1、A2、B1、内存类型DDR4 RDIMM等、容量、速率、状态。关键点是理解内存状态的几个值Present或Good正常在位Enabled已启用并被系统识别Disabled可能被BIOS自动禁用通常因为检测到错误Correctable Errors存在可纠正错误例如单比特ECC这种错误不致命但需要关注频繁出现就说明这条内存条在老化Uncorrectable Errors不可纠正错误通常对应已发生的机器报错或死机记录。排查时Lifecycle Log里如果有一条类似Memory Error on DIMM A2: Uncorrectable Error的记录但你不知道A2在机器哪个位置可以看Memory页面的插槽编号图有的版本还有LED闪烁定位功能服务器面板和主板上的内存故障灯会跟着闪方便现场更换。3.3 物理磁盘和RAID控制器最常看的页面磁盘相关信息在iDRAC里分散在两个地方Storage或PERC控制器级别和Physical Disks物理盘级别。先看控制器。进入Storage → Controllers能看到PERC控制器的型号比如PERC H730P MINI、固件版本、缓存大小、电池状态有些是闪存电容以及它管理的虚拟磁盘Virtual Disks列表。虚拟磁盘的状态字段Online/ Degraded/Failed直接反映了RAID组的健康程度。看到Degraded就说明RAID组里至少有一块盘出问题了需要马上定位。再看物理盘。Physical Disks页面列出每个磁盘槽位的盘容量、型号、接口类型SAS/SATA/NVMe、转速7200rpm/10000rpm/SSD、PHY错误计数、状态。这里要特别留意几个状态OnlineRAID组内正常Non-RAID或Ready盘在位但没有加入任何虚拟磁盘Foreign磁盘上带外来的RAID元数据一般是把以前机器上的盘拆过来用了需要import foreign configFailed盘已故障Predictive Failure盘还能用但SMART指标已经达到预警线DELL建议尽快更换。页面通常还提供Blink按钮点了之后对应物理盘位的指示灯会闪烁方便你去机房里准确抽插。现场运维的时候这个功能比看盘位编号手工数有效得多。3.4 电源、风扇和温度机房环境问题的第一证据电源模块看的是Power或Power Supplies页面。页面会显示每个PSU的型号、容量比如750W或1100W、输入电压、输出功率、状态。冗余模式下如果只有一路供电正常另一路显示Failed即使当前服务器还在跑也必须尽快安排处理因为这时候机箱已经失去冗余能力。风扇信息在Thermal页面。页面列出前风扇/后风扇的转速RPM和状态正常情况下转速会随负载自动调节显示OK。如果某个风扇转速为零或者状态是FailiDRAC通常会触发风扇满转策略也就是其他风扇全部拉到最高转速机房里会突然非常吵这是服务器的自我保护机制散热风扇组里少了关键成员怕温度失控所以疯狂提高剩余风扇转速。遇到这种情况除了换风扇没有别的根治办法。Thermal页面里还有一堆温度传感器读数CPU1温度、CPU2温度、Inlet进风口温度、主板温度等。如果系统整体温度高但风扇正常那就要考虑机柜散热、环境空调的问题了。查看历史温度是不是一直很高可以辅助判断是不是机房环境长期不达标。3.5 事件日志硬件问题的案发现场只看当前状态还不够很多时候你要回答这台机器昨天夜里为什么重启了哪块盘是什么时候掉的。两个日志模块解决这类问题System Event LogSEL记录硬件传感器触发的事件比如温度越限、电压波动、ECC内存纠错次数超阈值、风扇降速等。Lifecycle Log记录更上层的事件包括开机、关机、固件更新、BIOS设置变更、RAID卡事件甚至iDRAC自身的配置变化。Lifecycle Log里能看到每次POST的时间和结果还能看到驱动固件更新的历史记录。排查思路通常这样先看Lifecycle Log按时间线梳理发生了什么再进SEL找对应的硬件传感器事件定位具体是哪个组件触发的告警。比如Lifecycle Log显示Firmware updated to version 2.65.65.65但更新第二天服务器开始反复重启那就要考虑固件本身是不是有问题再回到事件日志里找蓝屏/掉盘等佐证。4. 命令行派的高效姿势SSH RACADM我看硬件信息虽然偶尔会开Web界面点点点但说实话习惯了命令行之后很多操作反而用SSH更快尤其是手里同时管着几十台机器的时候。iDRAC默认是开启SSH服务的只要能连通直接ssh root192.168.0.120输入密码进入RACADM命令行。所有Web页面里能看的东西基本都能用命令查。下面列出我常用的几条。4.1 系统信息和传感器racadm get system.info这条命令输出服务器型号、服务标签、BIOS版本、iDRAC版本、主机名、操作系统如果有代理的话等基础信息。排查型号和固件版本时非常常用。racadm getsensorinfo这条命令类似ipmitool sdr list会把所有温度、电压、风扇转速传感器一次性列出来字段包括传感器名称、状态、读数、阈值。像这样CPU1 Temp | 52.0 C | OK | 64.0 / 75.0 System Board Inlet Temp | 27.0 C | OK | 40.0 / 45.0 Fan1 RPM | 7560 | OK | 840 / 22800我一般会在机房巡检的时候批量跑一遍这个命令脚本里做阈值判断直接把异常机器筛出来。4.2 存储和RAID信息RACADM查看存储信息的命令在版本之间有差异iDRAC8之后推荐这样racadm storage get controllers racadm storage get pdisk -o -p State,Size,Model,FirmwareVersion racadm storage get vdisk -o -p Name,State,Size,TargetIdstorage get pdisk的输出里能看到每块物理盘的State字段这就是Web页面里看到的盘状态。iDRAC6、iDRAC7时代没有这么规整的storage子命令更多是racadm get storagedevices输出相对简陋但盘位、容量、状态也能看个大概。老平台如果觉得RACADM不够直观可以配合ipmitool读SEL来辅助判断。4.3 事件日志和电源统计racadm getsel查看系统事件日志加-i可以指定记录条数racadm getsel -i 50电源相关racadm get powerbudget racadm get pminfoget pminfo在部分版本上会报命令不存在那就用racadm help拉一下当前固件的完整命令列表不同版本命令差异确实存在这是DELL固件历史包袱比较大的地方不用死记用到再查。4.4 一个实用的巡检脚本雏形你可以写一个很简单的Bash脚本循环SSH到多台iDRAC上去拉传感器信息比如#!/bin/bash for ip in $(cat idrac_list.txt); do echo $ip sshpass -p your_password ssh -o StrictHostKeyCheckingno root$ip \ racadm getsensorinfo 2/dev/null | grep -E Temp|Fan|Status done这只是个骨架实际生产环境建议用带有密钥认证或者专门的Credential管理方式不要明文把密码写在脚本里。但如果只是临时巡检这条已经能帮你省下大量打开浏览器的时间。4.5 IPMITool作为备选有些场景下你不想开SSH或者只是临时用笔记本接一下管理口可以考虑IPMITool。前提是iDRAC的网络选项里启用了IPMI over LAN部分新版本默认受限需要登录Web界面的Settings → Services里打开。常用的命令ipmitool -I lanplus -H 192.168.0.120 -U root -P calvin sdr list ipmitool -I lanplus -H 192.168.0.120 -U root -P calvin sel list但说实话IPMITool读SDR传感器数据记录的格式和RACADM有差异信息完整性上RACADM更贴合DELL的命名习惯。我个人建议既然你是DELL的机器老老实实用RACADM就好IPMITool更适合混合厂商环境或者你用的监控系统比如Zabbix IPMI模板需要走标准IPMI协议采集。5. 真实故障排查从亮黄灯到定位硬件问题只讲菜单不讲实战等于白写。这章我按实际排查链路走几个案例你就知道前面这些硬件信息怎么串起来用了。5.1 场景前面板琥珀灯亮但系统还能跑这是最常见的开场。业务没挂运维群里有人拍了一张机房照片这台服务器前面板不是绿色了是琥珀色。这时候直接在远程打开iDRAC不需要让机房同事去看任何东西。操作链路打开iDRAC Dashboard看Overall Health是什么颜色红色还是黄色进Lifecycle Log按时间筛选最近一天的事件找级别为Warning或Critical的新增记录如果是某个传感器触发的SEL里会有对应的传感器编号顺着查硬件模块结合Hardware菜单下的Physical Disks、Memory、Power等状态确认是哪个组件。我处理过一次典型情况琥珀灯亮但系统正常查Lifecycle Log发现是电源模块状态变Failed再进Power页面确认750W的PSU2显示故障PSU1正常工作。这种故障不影响当前运行但冗余已经没了。不处理的话下一次PSU1再出问题服务器直接掉电。当场安排机房换电源模块问题闭环。5.2 场景RAID Degraded哪块盘出了问题应用开始报写入缓慢系统能打开但文件系统明显卡。登上iDRAC一看Storage → Virtual Disks里状态是Degraded说明RAID组中有一块盘脱群或被判定为Predictive Failure。接下来看Physical Disks列表找State不为Online的那块盘。比如看到Slot 3的盘状态是Predictive FailureSMART数据已经报警。这时候点Web界面的Blink按钮或者命令行执行racadm storage blink -c controller:RAID.Integrated.1-1 -p pdisk具体命令名和参数在不同版本里略有差异核心作用是让那块盘位的LED灯开始闪烁。然后异地机房同事去机器前抽那块亮灯的硬盘即可。要是没有这个功能在几十个盘位的机器里数位置很容易抽错盘把好盘拔了。5.3 场景服务器频繁重启查不到系统日志Windows/Linux里的日志看不到崩溃原因因为重启来得太突然系统根本来不及记录。这时候iDRAC是唯一还能提供线索的地方。进Lifecycle Log看每次开机时间点之前有没有对应的事件。比如看到这样的记录1234567890 : Power Supply #1 lost AC input. Critical. 1234567891 : AC power restored. 1234567892 : System rebooted due to power fault.这就说明是市电输入有问题可能是机房PDU插排问题或者UPS故障。若事件是内存相关则回到Memory页面看具体DIMM。若事件是温度相关再去查Thermal页面确认传感器读数。实际中还遇到过这种情况服务器每两天固定重启一次所有硬件状态都正常最后在Lifecycle Log里发现是检测到System Inlet Temperature 42.0C达到进风口高温阈值触发了系统的过热保护关机。从iDRAC的system inlet温度历史来看这个机房空调近期确实有问题温度一直在往上飘。这种问题不做iDRAC日志分析根本定位不出来。5.4 场景风扇全速狂转机房里吵到不行机房某一台服务器突然声音暴涨到现场一看是前面板几个风扇都跑满转速了。进iDRAC的Thermal页面看风扇状态正常但温度传感器没有异常或者明确有一个风扇组件状态是Fail/Unknown。如果是一个风扇Fail剩余风扇会全速转以弥补散热空缺更换坏风扇后自动恢复如果是温度没问题、所有风扇也正常但依然满转检查是否有人改过Thermal Profile热配置或者机器存在未完成的开机自检告警。有时候BIOS检测到某个硬件未正确识别比如未装上的CPU或内存也会触发风扇满转。这种情况下iDRAC的事件日志里通常会有一条System Boot Event附带具体硬件状态排查方向就不会跑偏了。6. 进阶配置与踩坑提醒很多机器其实不止一台如果管理机房里几十上百台DELL服务器每台单独登录iDRAC看硬件信息效率太低。这里提供两个提高效率的思路。6.1 打开iDRAC的SNMP资源清册iDRAC支持SNMP可以从Web界面的Settings → Network → Services里开启SNMP Agent然后通过SNMP协议扫描每台服务器的硬件信息。配合Zabbix、Prometheus snmp_exporter这类监控系统可以把服务器型号、序列号、CPU温度、磁盘状态成体系地收上来。不过这属于监控搭建的范畴单看硬件信息的话日常直接查iDRAC已经足够。6.2 给每台iDRAC起好主机名iDRAC里可以设置主机名字段Settings → Network → Hostname默认可能是IDRAC-XXXXXXX这种序列号形式。管理上百台机器的时候命名不规范会非常痛苦。建议至少把主机名和服务标签对应起来比如R740-JH023-03或者加上机房机柜位置。这样你登录进iDRAC第一行就能确认我连的是哪台机器减少误操作风险。6.3 小心固件升级尤其老平台iDRAC的固件升级能解决很多兼容性问题但别手一滑随便升。DELL官方规定了iDRAC固件的升级路径比如从iDRAC8很老的版本直接跳到最新版往往要求先升级到中间版本否则会直接报错日志里也会出现类似downgrade blocked的信息。此外升级iDRAC固件有极低概率导致配置丢失或者需要重新激活许可证生产环境务必先备份配置racadm get -t cfg -f /path/backup/racadm_cfg_backup.xml恢复的时候用racadm set -t cfg -f /path/backup/racadm_cfg_backup.xml一个比较稳妥的习惯是非必要不升级确有必要升级时先在闲置机器上验证一遍再安排生产批次窗口。6.4 不同iDRAC版本的功能差异我会在最后放一张功能对照表方便你判断自己手头机器能干什么。功能iDRAC6R710等老平台iDRAC7/8R720/R730等iDRAC9R740/R750等iDRAC10较新平台Web查看硬件信息支持Java依赖严重支持iDRAC8相对更好支持纯HTML5支持现代浏览器友好远程虚拟控制台需Java插件需Java/ActiveX升级后有HTML5原生HTML5原生HTML5默认账号密码root/calvinroot/calvin首次设置管理员密码首次设置管理员密码传感器/日志查看完整完整完整完整免费许可证Express版基本够用Express版虚拟控制台等需企业版Express版部分API受限Express版部分功能需企业版看硬件信息这件事基本在Express免费许可证下就够用了。真正会被许可证限制的是远程虚拟控制台、vMedia虚拟介质、部分API调用这类功能但你不做重装系统和远程挂载ISO时影响不大。回到最初的问题怎么通过DELL服务器的iDRAC口查看硬件信息总结起来就四步找到iDRAC的IP并登录 → 按硬件模块逐个查看状态 → 有异常时对照事件日志定位故障 → 远程操作或者现场处置。我这些年跟DELL服务器打交道下来最大的体会是iDRAC这套带外管理系统真的能在服务器不说话的时候替你说话前提是你得养成定期看它、真出问题时会用它的习惯。别等到亮红灯才进去翻菜单平时巡检抽几分钟看一眼传感器和日志很多故障都能在萌芽期处理掉。也建议把常用RACADM命令做成一个小笔记毕竟iDRAC不同固件版本之间命令名称会有变化现用现查很容易耽误事。
返回列表