我们在数据库服务器Lenovo ThinkServer RD120 中遇到了 RAID 控制器问题。这是联想/IBM 命名为ServeRAID 8k的更名 Adaptec 。
我们已将此ServeRAID 8k修补为最新和最强大的:
- RAID BIOS版本
- RAID背板bios版本
- Windows Server 2008 驱动程序
即使在我们拥有它的短短 4 个月内,这个 RAID 控制器也已经进行了多次关键的 BIOS 更新,而且更改历史只是......好吧,可怕。
我们已经在逻辑 RAID 驱动器上尝试了回写和直写策略。在繁重的磁盘活动下,我们仍然会遇到间歇性 I/O 错误。它们并不常见,但一旦发生就会很严重,因为它们会导致 SQL Server 2008 I/O 超时,有时还会导致 SQL 连接池失败。
我们已经完成了对这个问题的故障排除。没有像更换整个服务器或更换 RAID 硬件这样的核心内容,我们变得绝望了。
当我第一次拿到服务器时,我遇到了无法识别驱动器托架 #6 的问题。奇怪的是,将硬盘换成不同的品牌,解决了这个问题——并更新了 RAID BIOS(多次的第一次)永久修复了它,所以我能够在托架 6 中使用原来的“不兼容”驱动器。预感,我开始假设我选择的西部数据 SATA 硬盘驱动器与 ServeRAID 8k 控制器不兼容。
购买 6 个新硬盘是桌面上更便宜的选择之一,所以我选择了6 个 Hitachi(又名 IBM,又名 Lenovo)硬盘,理论是 IBM/Lenovo RAID 控制器更有可能与它通常使用的驱动器一起工作出售。
看起来这种预感得到了回报——我们已经度过了负载最重的三个日子(周一、周二、周三),没有出现任何类型的 I/O 错误。在此之前,我们经常在这个时间范围内至少有一个 I/O“事件”。看来切换品牌的硬盘驱动器已经解决了我们间歇性的 RAID I/O 问题!
虽然我知道 IBM/Lenovo 可能只用他们自己品牌的硬盘驱动器测试他们的 RAID 控制器,但我很不安 RAID 控制器会在特定品牌的硬盘驱动器上出现如此微妙的 I/O 问题。
所以我的问题是,这种 SATA 驱动器不兼容在 RAID 控制器中很常见吗?是否有某些品牌的驱动器比其他品牌的驱动器工作得更好,或者针对特定的 RAID 控制器进行了“验证”?我有点假设所有商品 SATA 硬盘驱动器都是相似的,并且在任何给定的 RAID 控制器(质量足够)中都能很好地工作。
即使对于非 RAID 的普通台式机硬盘驱动器,从供应商处购买驱动器(以预期的荒谬加价)通常也会有所作为。例如,Apple 小心翼翼地只发布真正能够支持Mac OS X
F_FULLSYNC
fcntl()
标志的驱动器,这对确保Time Machine备份等功能可靠运行大有帮助。同样,这是普通桌面使用,不涉及 RAID。任何比这更复杂的东西,如果不是供应商自己定价过高的驱动器,那么您肯定想购买,那么至少您肯定知道的驱动器型号在供应商的“批准”列表中。
所以,回答你的问题,这很常见吗?我想说,是的,比你想象的更普遍,甚至超出了企业领域。
是的,我在使用低端显卡和有缺陷的驱动程序时遇到过这种情况。但是,不,不是在最新的 Adaptec 更名卡上。哇,我只能说。需要考虑的一件事,可能是驱动器的错误而不是 RAID 控制器。
我没有一个好的答案,但是由于除了更换卡之外,您似乎已经用尽了大部分选择,(并且更换驱动器就可以了)这里有一些您可以考虑进行故障排除的想法:
WD 驱动器是 RE(RAID 版)驱动器,对吗?限时错误恢复很重要,因此如果您没有该错误恢复并且该驱动器正在尝试恢复该扇区,那么您将从该驱动器获得一个looooong 暂停。如果 RAID 控制器有耐心并且没有丢弃驱动器,那么您将遇到一个大问题。
检查您删除的驱动器上的 SMART 数据,看看是否有任何有趣的东西。
来自 NAS / RAID 供应商支持的关于限时错误恢复 (TLER) 功能重要性的另一条评论:
我认为这本身并不常见。但是,一旦您开始使用企业存储控制器,无论是 SAN 控制器还是独立 RAID 控制器,您通常都希望严格遵守它们的兼容性列表。
通过购买一系列便宜的磁盘,您也许可以在标价上节省一些钱,但这可能是我最不想省钱的领域之一——考虑到数据在大多数情况下的重要性。
换句话说,显式不兼容是非常少见的,但建议遵循显式兼容性。
我不会梦想将 SATA 磁盘用于服务器 - 它们都没有服务器质量驱动器的预期占空比,并且它们没有 SCSI/SAS 用于监控驱动器性能和健康状况的丰富命令集。如果你有很多服务器,但没有一台服务器真的那么重要,那么联想服务器既便宜又好,但惠普的 300 系列服务器占市场的 40% 是有原因的——它们可以工作。特别是他们的“SmartArray”磁盘控制器在可靠性和性能方面无与伦比,他们的故障前保证是一个受欢迎的补充。不是最便宜的,但你的时间值多少钱?二十年来,我一直在购买他们的(以及 Compaq first tbh)服务器,并且每年购买 500-800 台新服务器没有任何问题。认真检查他们。
答案一如既往是“视情况而定”。
对于某些企业存储(比如 EMC),供应商会专门对驱动器进行认证,甚至会加载自定义固件。
正如 Mark 所说,如果有供应商的批准列表,我发现它是最好的。最初节省的成本被试图追捕小精灵所花费的时间所抵消。
您有一个 SAS 控制器,这可能是问题所在。虽然 SAS 协议可用于隧道 ATA 命令,但物理级别的信令有点不同(SAS 使用更高的电压和更宽的差分)。几乎所有控制器都能够直接与 SATA 驱动器通信,但如果中间有一个(大的?蹩脚的?)背板,信号可能会中断。通常在企业世界中,官方不支持将 SATA 驱动程序直接连接到 SAS 控制器,您应该使用插入器(一种直接连接到磁盘的小型逻辑板,一方面理解完整的 SAS 协议,另一方面讲 ATA -这样背板承载更高的 SAS 信令)。
有点相关:在同一背板上混合 SAS 和 SATA 驱动器往往会失败,因为所有驱动器(包括 SAS)的信号都降低到 SATA 级别。
您的 WD 驱动器很可能需要固件更新。请参阅此 IBM 说明以下载和应用更新。从说明中可以看出,WD 驱动器远不是唯一有问题的驱动器。
如果您要将驱动器置于繁重的服务器环境中,那么您肯定会遇到比典型的发烧友桌面配置更多的问题。
您能否评论一下为什么您选择使用桌面级Deskstar系列驱动器而不是 Enterprise/RAID 级Ultrastar系列?您是否觉得额外的成本不值得增加可靠性和速度?
作为一名使用 RAID 控制器的工程师,我可以说某些品牌的驱动器出现某些 RAID 控制器问题的情况并不少见。每个驱动器都有其特定的怪癖,并且控制器的“兼容设备”列表中列出的任何驱动器型号都将由控制器考虑其怪癖。要使驱动器型号出现在列表中,它必须满足控制器制造商的性能和可靠性标准。任何不在此列表中的驱动器都可能工作,但由于它没有经过与“批准”设备相同的严格测试,YMMV。
特别是,SATA 协议允许驱动器或控制器定义的供应商特定(非标准化)命令。在您的情况下,您可能会看到一个控制器期望驱动器响应特定的专有命令或期望看到永远不会到达的专有命令的驱动器。
另一种可能性是您的有问题的驱动器在某些压力大的工作负载下表现不佳,并且您看到的行为足以让 Adaptec/IBM 不将该驱动器型号列为受支持。
不幸的是,存储协议(SATA、SAS 等)不如其他标准化接口(USB、PCI 等)好,在这些接口中,您只需要一个总线和一个说相同语言的设备,一切都很好。尤其是在企业级设备方面,设备制造商和驱动器制造商花费了大量的协作时间和精力,以确保客户从大多数客户使用的配置中获得最佳性能(即使用非“支持的设备”列表)。不在该列表中的驱动器可能已设计为使用不同品牌的控制器实现最佳性能,您看到的错误是优化的副作用。