在 ESXi 5.1 中,VMware 增加了 S.M.A.R.T. 功能以监控硬盘驱动器运行状况。S.M.A.R.T. 功能录制附加到本地控制器的物理硬盘驱动器中的各种操作参数。该功能属于物理硬盘(HDD 和 SSD)电路板上的固件的一部分。
要读取磁盘中的当前数据,请执行以下操作:
- 打开 ESXi 主机的控制台或 SSH 会话。有关详细信息,请参见 Using ESXi Shell in ESXi 5.x (2004746)。
- 通过运行以下命令确定要使用的设备参数:
# esxcli storage core device list
- 读取设备中的数据:
# esxcli storage core device smart get -d device
其中 device
为在步骤 1 中找到的值。
- 预期输出是一个包含 ESXi 主机所看到的所有 SCSI 设备的列表。例如:
t10.ATA_____WDC_WD2502ABYS2D18B7A0________________________WD2DWCAT1H751520
注意:外部 FC/iSCSI LUN 或 RAID 控制器中的虚拟磁盘可能不报告 S.M.A.R.T. 状态。
下表详细介绍了部分示例输出:
参数 | 值 | 阈值 | 最差 |
运行状况 | 确定 | N/A | N/A |
介质磨耗指数 | 0 | 0 | 0 |
写入错误数 | N/A | N/A | N/A |
读取错误数 | 118 | 50 | 118 |
开机时数 | 0 | 0 | 0 |
重新启动次数 | 100 | 0 | 100 |
重分配扇区数量 | 100 | 3 | 100 |
原始读取错误率 | 118 | 50 | 118 |
驱动器温度 | 27 | 0 | 34 |
驱动程序额定最大温度 | N/A | N/A | N/A |
写入扇区 TOT 数 | N/A | N/A | N/A |
读取扇区 TOT 数 | N/A | N/A | N/A |
初始坏块数 | N/A | N/A | N/A |
注意:物理硬盘驱动器最多可以有 30 个不同的属性(上例仅支持 13 个)。有关详细信息,请参见
How does S.M.A.R.T. function of hard disks Work?注意:截至 2014 年 9 月 2 日,上述链接正确无误。如果您发现该链接已损坏,请提供反馈,VMware 员工会更新该链接。原始值有两个可能的结果:
- 0-253 之间的数字
- 单词(例如 N/A 或 OK)
列描述
注意:返回的值以及每个列的含义可能因供应商而异。有关详细信息,请咨询您的硬件供应商。
- 参数
这是从属性 ID 到人工可读文本的转换。例如:
hex 0xE7 = decimal 231 = "Drive Temperature"
有关详细信息,请参见 S.M.A.R.T. Wikipedia 文章的 Known ATA S.M.A.R.T. attributes 部分。
注意:截至 2014 年 9 月 2 日,上述链接正确无误。如果您发现该链接已损坏,请提供反馈,VMware 员工会更新该链接。
- 值
这是磁盘报告的原始值。使用上例说明一下简单值。驱动器温度报告为 27
,表示 27 摄氏度。
值可以是数字 (0-253) 或单词(例如 N/A
或 OK
)。
- 阈值
属性的(故障)限制。
- 最差
曾记录的参数的最高值。
smartd 守护程序
ESXi 5.1 在已安装的 DCUI 还有 /sbin/smartd
守护程序。此工具没有任何命令行开关,也不与控制台交互。如果您在 shell 中运行此命令,/var/log/syslog.log
文件中将报告 S.M.A.R.T. 状态。
例如:
XXXX-XX-28T10:15:12Z smartd: [warn] t10.ATA_____SanDisk_SDSSDX120GG25___________________120506403552________: below MEDIA WEAROUT threshold (0)
XXXX-XX-28T10:15:12Z smartd: [warn] t10.ATA_____SanDisk_SDSSDX120GG25___________________120506403552________: above TEMPERATURE threshold (27 > 0)
XXXX-XX-28T10:15:12Z smartd: [warn] t10.ATA_____WDC_WD2502ABYS2D18B7A0________________________WD2DWCAT1H751520: above TEMPERATURE threshold (113 > 0)
注意:
- 可以通过键入 Ctrl+c 停止守护程序。
- 查看记录的事件时请小心谨慎。如示例中所示,所有三个警告都不相关。供应商和磁盘型号不同,输出可能存在很大差异。