按照合理的时间表让 RAID 控制器进行表面扫描

按照合理的时间表让 RAID 控制器进行表面扫描

我目前使用的控制器相当老旧,是 HP Smart Array P400;一方面我想知道如何处理该控制器,但我也对总体情况感兴趣——如果有其他/较新的控制器可以更好地处理这个问题,它们会如何处理?我理想情况下正在寻找与操作系统无关的解决方案,但如果这不起作用,它正在运行 VMware ESXi。

该控制器上的表面扫描基本上有两种设置:高或空闲,并可配置以秒为单位的延迟。

多年来,它一直处于空闲状态,延迟 3 秒。(不知道为什么,这可能是默认设置。)然而,我最近担心这意味着它基本上绝不运行表面扫描,因为即使在实际使用很少的期间,ESXi 也会更频繁地发送“心跳”I/O,并且大多数客户操作系统在空闲时间也会发送这样或那样的小信号。

认为拥有控制器不是一个好主意绝不进行表面扫描,我选择了唯一的其他选项“高”。

这里可能会有某种性能损失,但该阵列的工作负载只是虚拟机的系统磁盘,而不是数据磁盘(我在普通 HBA 上使用 ZFS),所以到目前为止还没有人注意到。

我担心的是,现在驱动器不会停止运行。我已经使用这个设置好几天了,在那些日子里,有很多空闲时间,所以我认为控制器现在可能已经完成了一次完整的扫描。我可以在更短的时间内对一个大 7 倍的池和更低 RPM 的驱动器进行 ZFS 清理。我在空闲期间多次偷看服务器,但我从未见过磁盘灯像音乐视频一样跳动。

看起来扫描是无限循环的,扫描之间没有任何延迟。我说得对吗?

在我看来,这有点荒谬。我本来希望一旦控制器设法通过扫描,它至少会停止几天,然后再开始下一次扫描。我真的怀疑扇区退化的速度是否足够快,足以证明这一点持续的扫描。

我担心这会更快地损坏驱动器。这些是 2.5 英寸 10k SAS 磁盘,300GB 和 600GB,RAID 1+0。这是合理的担心吗?我猜这个设置至少使每日磁盘活动总量增加了十倍。

现在,无论是否访问,磁盘都会不断旋转,磁头实际上不会接触盘片,致动器由非接触式电磁系统移动。所以我认为磨损的唯一大差异是在磁盘寻道时致动器轴承上。原则上这听起来很小,但在实践中,大量寻道似乎确实会磨损得更快。

我猜想这次扫描是按顺序访问扇区,这本身不会涉及大量的执行器移动。但是,如果扫描经常被一些需要磁头移动到其他地方的空闲访问打断,那么在最坏的情况下,这可能会大大增加来回移动。

(我或许应该考虑迁移到 SSD,但无论如何我不想消灭已经安装的磁盘。)

总而言之,我的问题是:

  • 它实际上会持续扫描吗?

  • 有没有办法使这种扫描周期性而不是连续性?(如果不是在这个控制器上,即使在任何其他控制器上?)

  • 我真的应该担心这会磨损磁盘吗?

答案1

哎呀... 这需要花费很多精力。

磁盘是消耗品。如果一个磁盘发生故障,就让它发生故障。HP
SmartArray 会通知您,您可以按计划更换驱动器。

对于那个时代的服务器(2007-2009)来说,更换磁盘很便宜,所以你不应该过多考虑这些后台进程是如何工作的。

答案2

我不会high长时间使用该设置,因为它会影响 IO 性能。

HP 智能阵列手册

表面扫描模式

此参数使用以下值指定表面扫描模式:高 - 无论控制器 I/O 级别如何,表面扫描都会进入保证取得进展的模式。

换句话说,控制器不会优先考虑实际 IO 还是扫描/清理 IO。我建议您保留默认设置medium:如果您的应用程序不断访问磁盘,则它可能需要所需的性能。

如果您担心位腐烂,可以偶尔设置表面扫描high(即:每个月的一个周末),但是,正如其他人所建议的,我不会费心更改默认设置。

答案3

我没有合适的答案,但我确实挖掘了一些相关信息。可以使用 HP Smart Storage Administrator 管理 HPE RAID 控制器。在旧版本的 Smart Array/Smart Storage Administrator 手册中,在 CLI 实用程序部分,它列出了一个未记录、未解释的设置“surfacescanschedule”,位于 UI 中存在的模式/延迟设置旁边。该设置已从最新版本的手册中删除。

此外,如果您转到 HP SSA > 诊断 > 查看诊断报告,它将显示所有存储组件的内部值的非常长且详细的列表。智能存储 RAID 控制器有一个名为“表面状态”的完整部分。这很难理解,据我所知没有这方面的文档,但有些字段很突出:
Surface Analysis Pass Count- 在一台 2 年多闲置的服务器上,有 2 个阵列和 3 秒延迟,它显示 53 和 52。在一台 13 年多闲置的服务器上,有 2 个阵列和 15 秒延迟,它显示 826 和 457。很奇怪。可能是因为大小不同?
Surface Scan Period- 新服务器上是 3600,旧服务器上没有。不知道它实际上做什么。

我的想法是要么向 HPE 支持人员寻求澄清,要么比较空闲模式和高模式下“通过计数”增加的速度。关于您的担忧,如果将其置于空闲状态/3 秒后数字仍会随着时间的推移而增加,那么它仍在进行检查,无论空闲计时器显示什么。

相关内容