我正在 Supermicro X6DHE-XB 3U 机箱中构建基于 FreeNAS 的服务器,该机箱具有 4G RAM、16 个 SATA 热插拔托架。它带有 2x8 端口的 3Ware RAID 卡,但我计划只使用 ZFS 功能而不是硬件 RAID。我的初始驱动器组将是 8x2TB HITACHI Deskstar 7K3000 HDS723020BLA642 驱动器。
如果我使用基于硬件的 RAID,它会在驱动器发生故障的驱动器托架上给我一个红灯。当驱动器出现故障时,它如何与 ZFS 一起工作?我觉得sda=bay1、sdb=bay2等没有任何保证,那么你如何确定需要更换哪个驱动器?ZFS 可以向 SATA 控制器报告以打开“故障驱动器”指示灯吗?它是否只报告驱动器序列号?如果驱动器故障如此严重以至于无法报告其序列号怎么办?我想最好在上线之前写下每个驱动器的序列号以及它进入哪个托架。是否还有其他“预生产”任务可以使将来更容易更换驱动器?
当前版本的 FreeNAS(目前为 9.3 版)将为添加到 zpool 的每个驱动器创建一个 gptid。创建后立即,“zpool 状态”将如下所示(取决于您的池配置)...
# zpool 状态
池:myzfstest
状态:在线
扫描:无
请求配置:Run Code Online (Sandbox Code Playgroud)NAME STATE READ WRITE CKSUM myzfstest ONLINE 0 0 0 raidz-0 ONLINE 0 0 0 gptid/4fc2b789-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/51d38480-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/54c672cc-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/56a07638-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 raidz2-1 ONLINE 0 0 0 gptid/630e1317-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/6557b52d-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/667a1318-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/68cadf75-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 logs mirror-2 ONLINE 0 0 0 gptid/8839f22e-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/8a6d0b14-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 cache gptid/8c2f3824-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 gptid/8da9ba80-7b7f-11e4-9585-de9b81338d40 ONLINE 0 0 0 spares gptid/72f039f2-7b8a-11e4-9585-de9b81338d40 AVAIL gptid/750df91d-7b8a-11e4-9585-de9b81338d40 AVAIL
错误:无已知数据错误
不幸的是,Web GUI 不会向您显示这些数字。因此,如果您收到一条错误消息,指出“gptid/6557b52d-7b7f-11e4-9585-de9b81338d40”不好……您怎么知道要拉哪个驱动器?在安装时找出该部分需要一些繁琐的工作。
smartctl -a /dev/ada0 | grep ^Serial
(用列表中的每个驱动器名称替换“/dev/ada0”)现在,在 shell 中,我们需要将驱动器名称与所有 gptid 编号进行匹配。所以,输入glabel status
,你应该得到这样的东西......
# glabel status
CORRECT>glabel status (y|n|e|a)? yes
Name Status Components
ufs/FreeNASs3 N/A ada0s3
ufs/FreeNASs4 N/A ada0s4
ufs/FreeNASs1a N/A ada0s1a
gptid/616cddb6-7b7f-11e4-9585-de9b81338d40 N/A ada0p2
gptid/630e1317-7b7f-11e4-9585-de9b81338d40 N/A da1p1
gptid/6557b52d-7b7f-11e4-9585-de9b81338d40 N/A da2p1
gptid/667a1318-7b7f-11e4-9585-de9b81338d40 N/A da3p1
gptid/68cadf75-7b7f-11e4-9585-de9b81338d40 N/A da4p1
Run Code Online (Sandbox Code Playgroud)现在写入所有 gptid 编号,将它们与驱动器名称相关联,从而将序列号及其位置关联起来。 注意:当您看到类似“da3p1”的内容时,它是标识为 da3 的驱动器的分区之一。Web GUI 中的列表将仅显示磁盘的标签“da3”。
现在,当出现错误,说 gptid 编号为xyz的磁盘有错误时,您将能够参考您的工作表并知道您需要拉/更换哪个驱动器。
我知道这对于原始海报来说已经太晚了;但是,也许其他人会发现这很有用。
您需要的是来自 LSI(现为 Avago)的sas2ircu实用程序。LSI 维护 FreeBSD、Linux 和 Windwos 的版本。使用 FreeNAS,您将需要 FreeBSD 版本。
要尝试它,您可以将它放在 /tmp 目录中并首先使其可执行。
第一步是发现您的 SAS HBA 的 ID(示例):
/tmp# ./sas2ircu list
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.
Adapter Vendor Device SubSys SubSys
Index Type ID ID Pci Address Ven ID Dev ID
----- ------------ ------ ------ ----------------- ------ ------
0 SAS2008 1000h 72h 00h:04h:00h:00h 1000h 3020h
SAS2IRCU: Utility Completed Successfully.
Run Code Online (Sandbox Code Playgroud)
第二步将生成您可以稍后检查的所有设备的列表:
/tmp# ./sas2ircu 0 display > disklist.txt
Run Code Online (Sandbox Code Playgroud)
第 3 步是检查您的磁盘列表。它看起来类似于:
/tmp# vi disklist.txt
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.
Read configuration has been initiated for controller 0
------------------------------------------------------------------------
Controller information
------------------------------------------------------------------------
Controller type : SAS2008
BIOS version : 7.37.00.00
Firmware version : 19.00.00.00
Channel description : 1 Serial Attached SCSI
Initiator ID : 0
Maximum physical devices : 255
Concurrent commands supported : 3432
Slot : 4
Segment : 0
Bus : 4
Device : 0
Function : 0
RAID Support : No
------------------------------------------------------------------------
IR Volume information
------------------------------------------------------------------------
------------------------------------------------------------------------
Physical device information
------------------------------------------------------------------------
Initiator at ID #0
Device is a Enclosure services device
Enclosure # : 2
Slot # : 24
SAS Address : 5003048-0-00d3-a87d
State : Standby (SBY)
Manufacturer : LSI CORP
Model Number : SAS2X36
Firmware Revision : 0717
Serial No : x36557230
GUID : N/A
Drive Type : Undetermined
Device is a Enclosure services device
Enclosure # : 3
Slot # : 0
SAS Address : 5003048-0-00ca-7bfd
State : Standby (SBY)
Manufacturer : LSI CORP
Model Number : SAS2X28
Firmware Revision : 0717
Serial No : x36557230
GUID : N/A
Drive Type : Undetermined
Device is a Hard disk
Enclosure # : 4
Slot # : 0
SAS Address : 5003048-0-00d3-a8cc
State : Ready (RDY)
Size (in MB)/(in sectors) : 1907729/3907029167
Manufacturer : ATA
Model Number : WDC WD20EARS-00M
Firmware Revision : AB51
Serial No : WDWCAZA1037887
GUID : N/A
Drive Type : Undetermined
Device is a Hard disk
Enclosure # : 4
Slot # : 1
Run Code Online (Sandbox Code Playgroud)
第 4 步是识别出现故障的驱动器 - 您将通过驱动器上报告的丢失或损坏的信息知道哪个。获取 Enclosure # 和 The Slot # 并在步骤 5 中使用它们使托盘 LED 闪烁:找到 Enclosure # 4, Slot # 0
/tmp# ./sas2ircu 0 locate 4:1 ON
Run Code Online (Sandbox Code Playgroud)
更换后关闭 LED:
/tmp# ./sas2ircu 0 locate 4:1 OFF
Run Code Online (Sandbox Code Playgroud)
我希望这有帮助!
zpool status -v
应该告诉你哪个磁盘在线或不在线。
归档时间: |
|
查看次数: |
60408 次 |
最近记录: |