This is the old XigmaNAS forum in read only mode,
it will taken offline by the end of march 2021!



I like to aks Users and Admins to rewrite/take over important post from here into the new fresh main forum!
Its not possible for us to export from here and import it to the main forum!

[SOLVED] Replace drive in 3 drive setup

Forum rules
Set-Up GuideFAQsForum Rules
Post Reply
alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

[SOLVED] Replace drive in 3 drive setup

Post by alphasi1 »

Hi everyone

I've got 3 drives in ZFS.

500GB
500GB
250GB
Spare bay

I've bought two 500GB drives. I want to remove the 250GB drive and add the two 500GB drives, ideally without losing data. The data is not critical at all, it'll just save some hassle to replace the drives without loss.

I've tried shutdown > replace 250GB with 500GB > startup but the pool is no longer found.
I've tried working out how to add a 500GB to the spare bay and replace the 250 with it, but I can't work out how to do that either!

What's the correct process, please? If it's just to remove the 250, add the 2 x 500 and start again that's fine - but I thought I could do it more elegantly!

Thanks in advance.

User avatar
ms49434
Developer
Developer
Posts: 828
Joined: 03 Sep 2015 18:49
Location: Neuenkirchen-Vörden, Germany - GMT+1
Contact:
Status: Offline

Re: Replace drive in 3 drive setup

Post by ms49434 »

Please provide more details about your ZFS pool by posting the output of Disks > ZFS > Pools > Information.
1) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 22GB out of 32GB ECC RAM, LSI 9300-8i IT mode in passthrough mode. Pool 1: 2x HGST 10TB, mirrored, L2ARC: Samsung 850 Pro; Pool 2: 1x Samsung 860 EVO 1TB, SLOG: Samsung SM883, services: Samba AD, CIFS/SMB, ftp, ctld, rsync, syncthing, zfs snapshots.
2) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 8GB out of 32GB ECC RAM, IBM M1215 crossflashed, IT mode, passthrough mode, 2x HGST 10TB , services: rsync.

alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

Re: Replace drive in 3 drive setup

Post by alphasi1 »

Sure! Here it is - thank you.

Code: Select all

  pool: share
 state: ONLINE
  scan: none requested
config:

	NAME        STATE     READ WRITE CKSUM
	share       ONLINE       0     0     0
	  ada0      ONLINE       0     0     0
	  ada1      ONLINE       0     0     0
	  ada2      ONLINE       0     0     0
	spares
	  ada3      AVAIL

errors: No known data errors
ada2 is the 250GB drive I'd like to replace.
ada3 is one of the two new 500GB drives, I put it in as a spare thinking that might allow me to swap it with the 250GB.

11.1.0.4 - Atomics (revision 5065)

Nas4Free is running from a USB stick.

sleid
PowerUser
PowerUser
Posts: 774
Joined: 23 Jun 2012 07:36
Location: FRANCE LIMOUSIN CORREZE
Status: Offline

Re: Replace drive in 3 drive setup

Post by sleid »

Your "share" pool is a stripe of 3 disks so without any redundancy so it is impossible to change a disk by a zfs command they are all refused.

Risk-free solution: back up your data (but they must be!), Rebuild the pool and restore your data.

Possible but not tested solution:
Make a bit-by-bit copy of your 250g drive to the 500g then try online -e on the drive.
12.1.0.4 - Ingva (revision 7852)
FreeBSD 12.1-RELEASE-p12 #0 r368465M: Tue Dec 8 23:25:11 CET 2020
X64-embedded sur Intel(R) Atom(TM) CPU C2750 @ 2.40GHz Boot UEFI
ASRock C2750D4I 2 X 8GB DDR3 ECC
Pool of 2 vdev Raidz1: 3 WDC WD40EFRX + 3 WDC WD40EFRX

User avatar
ms49434
Developer
Developer
Posts: 828
Joined: 03 Sep 2015 18:49
Location: Neuenkirchen-Vörden, Germany - GMT+1
Contact:
Status: Offline

Re: Replace drive in 3 drive setup

Post by ms49434 »

There's a clever way to replace a single drive within a stripe of disks.

First thing you should do is to release the spare drive, it is of no use for you because your pool isn't redundant.
Second thing is to enable autoexpand on your pool.

The trick:
For ZFS the pool is made of 3 virtual devices with 1 drive per virtual device.
Now that we know that there are 3 virtual devices we can attach a mirror device to the virtual device containing the 250MB drive.
Once resilvering is completed you just simply detach the 250MB drive from the virtual device.

All of the above can be achieved using the tools menu under Disks > ZFS > Pools > Tools, "Attach a data device" and "Detach a data device from a mirror".

The fourth drive will go into a new virtual device which is added to the pool using tools command "Add a virtual device to a pool".

Once done you should sync the WebGUI.

Good luck!
1) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 22GB out of 32GB ECC RAM, LSI 9300-8i IT mode in passthrough mode. Pool 1: 2x HGST 10TB, mirrored, L2ARC: Samsung 850 Pro; Pool 2: 1x Samsung 860 EVO 1TB, SLOG: Samsung SM883, services: Samba AD, CIFS/SMB, ftp, ctld, rsync, syncthing, zfs snapshots.
2) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 8GB out of 32GB ECC RAM, IBM M1215 crossflashed, IT mode, passthrough mode, 2x HGST 10TB , services: rsync.

alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

Re: Replace drive in 3 drive setup

Post by alphasi1 »

Thank you both!

I'm not sure how to enable auto-expand - can I do that from the UI or is it a command?

I released the spare and attached a data device. Resilvering is taking place; once complete I will remove the 250GB from the virtual device and add the 4th drive as you instruct.

Can I enable auto-expand at some point next, or did I need to do it before anything else?

Thank you again.

Code: Select all

  pool: share
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
	continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Sat Jan 27 09:22:13 2018
        50.9G scanned out of 881G at 316M/s, 0h44m to go
        15.1G resilvered, 5.78% done
config:

	NAME        STATE     READ WRITE CKSUM
	share       ONLINE       0     0     0
	  ada0      ONLINE       0     0     0
	  ada1      ONLINE       0     0     0
	  mirror-2  ONLINE       0     0     0
	    ada2    ONLINE       0     0     0
	    ada3    ONLINE       0     0     0  (resilvering)

errors: No known data errors

User avatar
ms49434
Developer
Developer
Posts: 828
Joined: 03 Sep 2015 18:49
Location: Neuenkirchen-Vörden, Germany - GMT+1
Contact:
Status: Offline

Re: Replace drive in 3 drive setup

Post by ms49434 »

After you finished all tasks it is time to review your storage capacity of your pool and the autoexpand setting:

you can review the autoexpand setting of your pool with the following cli command:

Code: Select all

zpool get autoexpand share
you can enable autoexpand by submitting

Code: Select all

zpool set autoexpand=on share
you can disable autoexpand by submitting

Code: Select all

zpool set autoexpand=off share
1) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 22GB out of 32GB ECC RAM, LSI 9300-8i IT mode in passthrough mode. Pool 1: 2x HGST 10TB, mirrored, L2ARC: Samsung 850 Pro; Pool 2: 1x Samsung 860 EVO 1TB, SLOG: Samsung SM883, services: Samba AD, CIFS/SMB, ftp, ctld, rsync, syncthing, zfs snapshots.
2) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 8GB out of 32GB ECC RAM, IBM M1215 crossflashed, IT mode, passthrough mode, 2x HGST 10TB , services: rsync.

alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

Re: Replace drive in 3 drive setup

Post by alphasi1 »

Fantastic, thank you. The 250GB drive is replaced OK.

I can't see how to get the 4th drive into a new virtual device. It's listed as unknown/unformatted in HDD Management. When I look at format it's not available to select.

This is the current info:

Code: Select all

 pool: share
 state: ONLINE
  scan: resilvered 230G in 0h44m with 0 errors on Sat Jan 27 10:07:10 2018
config:

	NAME        STATE     READ WRITE CKSUM
	share       ONLINE       0     0     0
	  ada0      ONLINE       0     0     0
	  ada1      ONLINE       0     0     0
	  ada3      ONLINE       0     0     0

errors: No known data errors
It doesn't show up in Configuration > Current or Detected, even after running Synchronise.

Am I missing a step?

Thanks again.

alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

Re: Replace drive in 3 drive setup

Post by alphasi1 »

Update - found the + under Pools > Virtual Device.

I can't seem to add it as a disk. The options are Stripe, Hot Spare, Cache or Log.

User avatar
ms49434
Developer
Developer
Posts: 828
Joined: 03 Sep 2015 18:49
Location: Neuenkirchen-Vörden, Germany - GMT+1
Contact:
Status: Offline

Re: Replace drive in 3 drive setup

Post by ms49434 »

once you added the disk drive to your system and once you formatted the new drive you can create a new virtual device with option "stripe".
1) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 22GB out of 32GB ECC RAM, LSI 9300-8i IT mode in passthrough mode. Pool 1: 2x HGST 10TB, mirrored, L2ARC: Samsung 850 Pro; Pool 2: 1x Samsung 860 EVO 1TB, SLOG: Samsung SM883, services: Samba AD, CIFS/SMB, ftp, ctld, rsync, syncthing, zfs snapshots.
2) XigmaNAS 12.1.0.4 amd64-embedded on a Dell T20 running in a VM on ESXi 6.7U3, 8GB out of 32GB ECC RAM, IBM M1215 crossflashed, IT mode, passthrough mode, 2x HGST 10TB , services: rsync.

alphasi1
NewUser
NewUser
Posts: 10
Joined: 26 Jan 2018 08:21
Status: Offline

Re: Replace drive in 3 drive setup

Post by alphasi1 »

Worked perfectly. Thanks again! How do I label the thread as solved?

Code: Select all

  pool: share
 state: ONLINE
  scan: resilvered 230G in 0h44m with 0 errors on Sat Jan 27 10:07:10 2018
config:

	NAME        STATE     READ WRITE CKSUM
	share       ONLINE       0     0     0
	  ada0      ONLINE       0     0     0
	  ada1      ONLINE       0     0     0
	  ada3      ONLINE       0     0     0
	  ada2      ONLINE       0     0     0

errors: No known data errors

Post Reply

Return to “ZFS (only!)”