我是网页开发人员。我没有太多的硬件经验。因此,我使用托管服务器。
今天早上,我们设置中的驱动器之一发生了故障。但是,整个站点都崩溃了。我问我的网络主机发生了什么,他回答说硬盘发生故障,导致RAID控制器无法正常工作。阵列设置为RAID 4。
你们以前见过吗?可能吗?
感谢您对这家伙的任何帮助。我需要知道我的虚拟主机是否对我诚实。
我是网页开发人员。我没有太多的硬件经验。因此,我使用托管服务器。
今天早上,我们设置中的驱动器之一发生了故障。但是,整个站点都崩溃了。我问我的网络主机发生了什么,他回答说硬盘发生故障,导致RAID控制器无法正常工作。阵列设置为RAID 4。
你们以前见过吗?可能吗?
感谢您对这家伙的任何帮助。我需要知道我的虚拟主机是否对我诚实。
Answers:
您的提供商很有可能正在使用并非要在RAID中使用的硬盘。普通的消费者SATA驱动器属于此类。
可能的问题是驱动器开始出现不可纠正的读取错误(URE)。当在消费型驱动器中发生这种情况时,驱动器会坐在那里,然后重试读取操作(通常需要30-60秒),直到它放弃。RAID将等待驱动器报告错误(30-60)秒。因此,对几个扇区的简单请求很容易导致服务器崩溃,而发生故障的驱动器通过这些读取重试操作而崩溃。
用于RAID阵列的驱动器具有限时错误恢复功能(对于SATA驱动器)。TLER迅速将故障报告给控制器,以便控制器可以智能地响应此类故障(主要是智能地;希望如此)。SCSI(也是SAS)的工作方式有所不同。SCSI命令集允许控制器在驱动器上指定各种恢复工作量限制(模式选择:RW ERR RECOVERY)。RAID控制器应将驱动器设置为快速故障,然后控制器可以使用TUR命令测试驱动器是否认为其正常工作,如果存在检查条件,则将驱动器从阵列中排除。
是的,即使在您认为阵列应该在故障中幸免的情况下,这也是可能的。
关于数组为什么失败的一些可能性:
如果它是RAID 0的实现,那么肯定在单个驱动器发生故障时,您将丢失该阵列及其所有数据。
是的,有可能。它不应该发生,但是可以。输入URE(不可恢复的读取错误)和控制器故障以及固件错误等。
没有额外的信息(您的主机可能不会给您提供信息),就不可能一概而论,但是任何使用大量RAID阵列的人都曾经历过整个阵列丢失或崩溃的经历。不应该。
(并且,顺便说一下,RAID4不是一个非常常用的RAID级别,但是应该可以承受任何驱动器的丢失。但是,这并不意味着它总是会的。)
我遇到过许多HDD故障,不是机械故障,而是构成通信接口的电子设备故障。由于它们的体积小,许多电子元件甚至对很小的电气异常也非常敏感(当附近的大型A / C电动机打开/关闭等情况下,并且电源便宜一点时,就会发生这种情况)。
当驱动器的内部电源转换器或电容器(储能缓冲器)烧坏时,HDD外部连接器产生的电信号会并且将超出规格范围。由于驱动器是通过铜线连接到控制器的,并且通常在服务器中,许多驱动器共享电缆连接以简化安装并减少混乱,因此很容易破坏甚至永久破坏任何数量的相邻组件。
顺便说一下,这与定价无关。确实,昂贵的控制器和驱动器可能会使用对异常情况具有更高耐受性或具有更好屏蔽性能的部件,并且使用廉价组件,您更有可能获得不合格的部件。但是我经常在$ 50驱动器和$ 500驱动器上发现相同的电容器。而且,如果发生故障,如果发生故障的HDD直接将12伏电源从电源直接路由到SATA连接器,则RAID控制器将被炸掉,无论价格多少。
这不是通常发生的情况,但是根据我的经验,这绝对不是闻所未闻的。