Swapping array drive with parity drive


Julius

Recommended Posts

I want to have total parity size expanded. It now has a 10TB and 6TB drive as parity 1 and 2, so only 6TB can be used in the array.

I have another 10TB drive (planned to be) in the array, and intend to swap them around.

What's the best route to go here?

Do I just stop the array and unassign that 2nd parity 6TB HDD first?

Then take the 10TB out of the array as well?

Or can I do both in one go and start the array with the 2 swapped around?

 

Is there a way, outside of the Unbalance plugin, to actually physically move out the data that would be on the 10TB array disk, so I'm certain to not lose anything now stored on it?

How do I know what the actual amount of disks that can fail (or disappear) in the array is, if there are 8 HDD in the array (not counting the 2 parity drives) ?

Edited by Julius
Link to comment
2 minutes ago, Julius said:

to actually physically move out the data that's on the 10TB array disk, so I'm certain to not lose anything now stored on it?

Over the network.  Global Share Settings, Enable Disk Shares

 

Then move from diskX to diskY  Do NOT move from diskX to a "normal" share (or vice versa)  Corruption of the files can happen.

4 minutes ago, Julius said:

How do I know what the actual amount of disks that can fail (or disappear) in the array is, if there are 8 HDD in the array (not counting the 2 parity drives) ?

The answer to that is all of them.

 

You probably wanted to ask how many disks can fail without losing any data.  That answer is equal to the number of parity drives.  In your case 2 data disks can fail simultaneously without loss of data.

  • Like 1
Link to comment

Obviously, you will have to have a plan. 

 

Let's talk about the simplest one---  buy another 10TB HD pull the old 6TG parity2 out and rebuild the parity.  Add the old 6TB HD as a data drive.  (You have apparently decided not to use this option.) 

 

The next one would be to modify the instructions that were used by many of us when we converted from RFS to XFS.  

 

       https://wiki.unraid.net/index.php/File_System_Conversion#Mirror_each_disk_with_rsync.2C_preserving_parity

 

It uses rsync which might be a bit faster than using the network (as @Squid suggested) but it is more complicated.  But it does tell you how to reassign drives so that you don't have any holes (in the disk assignments) when you get done.  (I would print out these instructions and read through them and cross out the ones that you don't need.  Be sure to write the actual disk numbers into your printed instructions so that you don't make a mistake.  Double check with a dry run as you are using these instructions to do something quite similar but not quite exactly...) 

Edited by Frank1940
  • Like 1
Link to comment
8 hours ago, Squid said:

Over the network.  Global Share Settings, Enable Disk Shares

 

You probably wanted to ask how many disks can fail without losing any data.  That answer is equal to the number of parity drives.  In your case 2 data disks can fail simultaneously without loss of data.

That disk share over the network option is one I had not encountered in config yet, very handy! Thanks.

 

Edited by Julius
Link to comment
9 minutes ago, Frank1940 said:

which might be a bit faster than using the network

Just as a note, when using SMB3 (which is now default), if the source and destination are both the same machine, then the data never actually traverses the network and stays locally on the server (ie: the transfer rate reported by Windows (and time taken) will far exceeds the theoretical maximum of the network (when using 1G) )

Link to comment
58 minutes ago, Julius said:

I want to have total parity size expanded. It now has a 10TB and 6TB drive as parity 1 and 2, so only 6TB can be used in the array.

I have another 10TB drive in the array, and intend to swap them around.

What's the best route to go here?

Do I just stop the array and unassign that 2nd parity 6TB HDD first?

Then take the 10TB out of the array as well?

Or can I do both in one go and start the array with the 2 swapped around?

 

Is there a way, outside of the Unbalance plugin, to actually physically move out the data that's on the 10TB array disk, so I'm certain to not lose anything now stored on it?

How do I know what the actual amount of disks that can fail (or disappear) in the array is, if there are 8 HDD in the array (not counting the 2 parity drives) ?

There is something wrong with your description :(   It is not technically possible to have a 10TB drive in the array if one of your parity drives is only 6TB.     It is a requirement that ALL parity drives must be at least as large as the largest data drive.

  • Like 1
Link to comment
7 hours ago, itimpi said:

There is something wrong with your description :(   It is not technically possible to have a 10TB drive in the array if one of your parity drives is only 6TB.     It is a requirement that ALL parity drives must be at least as large as the largest data drive.

I had just added that 10TB to unraid, it wasn't used by the array yet (although it was in the dropdown to select with a stopped array), so yes, my description was incorrect if that's what it said.

 

Either way, 'swapping' disks in one go works, it is now copying the parity from old parity 2 to new parity 10TB, and said it will then recreate the ex-parity disk as the (new) disk1 for the array (FYI, disk 1 wasn't the 10TB before, it was another disk that needed to be replaced);

 

swapparityarray.png

Edited by Julius
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.