What is proper procedure in 2019 to both upgrade parity drive (6TB->8TB) and add a second parity drive?


Recommended Posts

It is worth pointing out that if you both upgrade the existing drive and add the new one in a single operation your data is not protected until the parity has been rebuilt.

 

Another option (but it takes longer) is to first add the second parity and let that build.     When that has completed you can replace the first parity disk and let that build.    Using that procedure you are always protected against a single drive failing.

Link to comment
If the title of the post is correct and you're upgrading an existing 6tb parity drive to be 8tb, then just stop the array, and assign the 2 new 8TB's to the parity positions.


Yeah the title is correct. I figured your suggestion would work but worried about being unprotected during that time. Is the array unavailable during the entire rebuild?

What’s the rough eta of a parity rebuild with two 8TB drives or is that dependent on size of the array? (I’m at 27TB total, about 17TB used).


It is worth pointing out that if you both upgrade the existing drive and add the new one in a single operation your data is not protected until the parity has been rebuilt.
 
Another option (but it takes longer) is to first add the second parity and let that build.     When that has completed you can replace the first parity disk and let that build.    Using that procedure you are always protected against a single drive failing.


Thanks for this tip.
Link to comment
1 hour ago, tmchow said:

Yeah the title is correct. I figured your suggestion would work but worried about being unprotected during that time. Is the array unavailable during the entire rebuild?

The array is available during the rebuild but performance will be degraded until the parity build completes.

 

1 hour ago, tmchow said:

What’s the rough eta of a parity rebuild with two 8TB drives or is that dependent on size of the array? (I’m at 27TB total, about 17TB used).

The time has nothing to do with the amount of data on the array, but is determined by the size of the largest parity drive.   It will take something like 2-3 hours per TB.

Link to comment

@itimpi @Squid I think i'll probably roll the dice and go with the unprotected array for a period of time to speed things up.

 

So to clarify, is the procedure:

 

  1. Stop Array
  2. Remote Remove existing 6TB parity drive
  3. Add both new 8TB drives as 2 parity drives
  4. Let it rebuild, once done I'm set for dual parity.
  5. I can then add the 6TB drive that was parity back into the array for more storage

?

Edited by tmchow
Link to comment

If you want, since you are rebuilding parity anyway, you could skip the clearing process on the old 6TB and add it as a data drive along with the 2 new parity drives. Set a new config and retain all, then make all your assignment changes at once. If you leave the old 6TB unformatted, and don't write to the array while parity is being built, you could actually roll back and reconstruct one failed data drive if you have an issue during the 8TB parity build process.

Link to comment

 

2 hours ago, jonathanm said:

If you want, since you are rebuilding parity anyway, you could skip the clearing process on the old 6TB and add it as a data drive along with the 2 new parity drives. Set a new config and retain all, then make all your assignment changes at once. If you leave the old 6TB unformatted, and don't write to the array while parity is being built, you could actually roll back and reconstruct one failed data drive if you have an issue during the 8TB parity build process.

 

Good idea about making all the changes at once to reduce the downtime.  I have a question about the latter part of your advice about being able to recover.

 

While parity is being built, if the 6TB (old parity) drive is added to the array, won't there be a risk of writes happening to that disk?  I thought the array was functional (just not protected) during adding of the 2 x 8TB drives as new parity drives.

Link to comment

If you do not format the drive then although it is part of the array it will not be mounted as it does not yet have a file system, so Unraid will not attempt to write to it.    It is only when after successfully building parity and you decide to go ahead with formatting the drive that Unraid will create a file system on the drive, mount it, amd start writing to it.

Link to comment
5 minutes ago, itimpi said:

If you do not format the drive then although it is part of the array it will not be mounted as it does not yet have a file system, so Unraid will not attempt to write to it.    It is only when after successfully building parity and you decide to go ahead with formatting the drive that Unraid will create a file system on the drive, mount it, amd start writing to it.

Got it. Thank you guys! Very helpful.

Link to comment

@Squid @itimpi Tried doing what you guys suggested but I couldn't add 2 parity drives AND add a drive for expansion. Unraid dashboard said this wasn't possible and wouldn't even give an option to start the array. So I left the old parity drive out of the array for now, and it's rebuilding the parity with the 2 new 8TB drives.

 

did something changes in recent versions of unraid that prevents pairty drive change and expansion at same time?

Link to comment
39 minutes ago, tmchow said:

@Squid @itimpi Tried doing what you guys suggested but I couldn't add 2 parity drives AND add a drive for expansion. Unraid dashboard said this wasn't possible and wouldn't even give an option to start the array. So I left the old parity drive out of the array for now, and it's rebuilding the parity with the 2 new 8TB drives.

 

did something changes in recent versions of unraid that prevents pairty drive change and expansion at same time?

Probably too late now, but Squid had said you could use Tools->New Config as the first step in his suggested approach.   I suspect you missed that :).    It is not part of normal array expansion but an alternative approach that could be used in your particular case.
 

The New Config option invalidates parity (but you have done that anyway) and allows you to make any changes to the data drive selection that you want and then builds parity based on the new selection of data drives.    It exploits the fact that as long as the data drive has previously been used by Unraid it’s contents are left intact when you first start the array and commit the new drive selection.

Edited by itimpi
Link to comment
Probably too late now, but Squid had said you could use Tools->New Config as the first step in his suggested approach.   I suspect you missed that :).    It is not part of normal array expansion but an alternative approach that could be used in your particular case.
 
The New Config option invalidates parity (but you have done that anyway) and allows you to make any changes to the data drive selection that you want and then builds parity based on the new selection of data drives.    It exploits the fact that as long as the data drive has previously been used by Unraid it’s contents are left intact when you first start the array and commit the new drive selection.


Oh dammit. I missed that part. Didn’t even know about this config thing you’re talking about.
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.