Replacing a ZPOOL Failed Disk

Status
Not open for further replies.

losip

Cadet
Joined
Jan 21, 2012
Messages
8
Soon after building a FreeNAS system, I suffered a hard disk failure on my ZRAID1 system. I tried to follow the instructions in the User Guide for replacing a failed disk but got in a complete mess using the command line - mostly because 8.0.2 does not give the same results to commands that are described in the 8.0.2 manual.

Help on this forum assisted me in regaining access to my volume but I was back at square one with a degraded pool. This time, I thought I'd try a different mechanism and, after reading all that I could, including suggestions to do a fresh installation, decided that I didn't understand the console commands well enough. The general opinion was that one should not use the GUI but use the command line instead but I didn't feel comfortable so tried the GUI.

This procedure worked perfectly:

1. Shutdown and replace failed drive
2. Reboot and, from the GUI (Storage/Drives), click "Replace" alongside the device that said it's state was unknown.
3. Wait for resilvering to finish. (In my case, this was 49 hours later and I did have to use ZPOOL STATUS -v to see how far it had got)
4. Click "Detach" alongside the device that was offline. It was identified by a long integer (not a GUID)
5. Lo and behold, the "Degraded" status was replaced by "Online" for the pool and everything works OK.

Was I lucky, or have things been fixed in the GUI? One would certainly expect any self-respecting fault-tolerant disk system to have an easy to use invocation of the disk replacement procedure. Having been used to using HP SmartArray controllers/software, I was pretty disappointed to be directed to the command line but this experience has restored some faith in FreeNAS.
 
G

gcooper

Guest
Soon after building a FreeNAS system, I suffered a hard disk failure on my ZRAID1 system. I tried to follow the instructions in the User Guide for replacing a failed disk but got in a complete mess using the command line - mostly because 8.0.2 does not give the same results to commands that are described in the 8.0.2 manual.

Help on this forum assisted me in regaining access to my volume but I was back at square one with a degraded pool. This time, I thought I'd try a different mechanism and, after reading all that I could, including suggestions to do a fresh installation, decided that I didn't understand the console commands well enough. The general opinion was that one should not use the GUI but use the command line instead but I didn't feel comfortable so tried the GUI.

This procedure worked perfectly:

1. Shutdown and replace failed drive
2. Reboot and, from the GUI (Storage/Drives), click "Replace" alongside the device that said it's state was unknown.
3. Wait for resilvering to finish. (In my case, this was 49 hours later and I did have to use ZPOOL STATUS -v to see how far it had got)
4. Click "Detach" alongside the device that was offline. It was identified by a long integer (not a GUID)
5. Lo and behold, the "Degraded" status was replaced by "Online" for the pool and everything works OK.

Was I lucky, or have things been fixed in the GUI? One would certainly expect any self-respecting fault-tolerant disk system to have an easy to use invocation of the disk replacement procedure. Having been used to using HP SmartArray controllers/software, I was pretty disappointed to be directed to the command line but this experience has restored some faith in FreeNAS.

This should be improved in 8.2.0. There is some naivete in terms of how things were done in FreeNAS 8.0.x that could cause issues in certain scenarios when disks were replaced in the GUI. That being said, there are some cases where FreeBSD won't detect a disk detach and trickle things up to the zpool (this is a ZFS on FreeBSD thing, not a pure FreeBSD thing or a ZFS thing). It will be ameliorated in 9.0 and fixed once the zfsd branch hits FreeBSD, but that code still isn't available in mainline FreeBSD (it should be considered alpha code until it's fully vetted)..
 

losip

Cadet
Joined
Jan 21, 2012
Messages
8
Thanks for the explanation. I would have felt much better if the User Guide had reflected what actually happened at the command line for the version I was using. For instance, there are no such suffices as 'old' as in zpool detach tank /dev/ada7/old any longer. I see that this anomaly is still present in the documentation for 8.0.3.
 
Status
Not open for further replies.
Top