Swap Parity and Data drives


EvylRat

Recommended Posts

Probably needs further explanation. You can do this as parity swap if you want, or as 2 rebuilds. Parity swap takes the array offline while it copies parity, the 2 rebuilds method will have the array online the whole time.

 

Are parity2 and the data disk the same size?

Link to comment

So remove both drives at the same time? As I don't see how else to get the parity 2 drive into the data location. Sorry if I'm seeming to be a bit dense as I've never removed/failed 2 drives at the same time before. 

 

Or are you saying. Turn dual parity off, making parity 2 free. Move parity 2 to the data location. Rebuild the data. Then turn dual parity back on and add the "old" data disk to the parity 2 location and rebuild parity. So essentially, making my system a single parity system, freeing up the second parity. Then setting it back to dual parity and building the parity 2, parity data.

 

I don't care about the array being offline I want the method with the highest level of protection for a disk failure. I was hoping to retrain dual parity like in the parity swap procedure where the parity data is duplicated.

 

Yes, both disks are the same size. 

Edited by bnevets27
Link to comment

New Config without parity2, check the parity valid box since parity1 is still valid. That frees up parity2.

Replace data disk with old parity2 and rebuild. At this point, you still have the old data disk if there are any problems.

Add old data disk as parity2 and build parity2.

 

I don't know if anyone has ever tried to do what you propose as a parity swap. I guess it would go like this:

 

Start the array with the data disk unassigned so it is emulated.

Assign data disk as parity2 and parity2 as data disk, let it copy parity2. Array will be offline during copy.

Rebuild data disk.

 

Untested as far as I know, and it seems safer to me to just rely on single parity to do a normal drive replacement. Do any of your disks have SMART warnings on the Dashboard page?

 

Do you have another copy of anything important and irreplaceable?

 

 

 

 

 

 

Link to comment

Ah ok. I'm on the same page now. 

 

The initial questions was basically just that. Can a parity swap be done with dual parity, on the second parity disk? If it was a known/tested procedure then I would say it was probably be the safer of the two options, from what I understand. But as you say without knowing, then the first suggestion of just going back to single parity during the disk swap makes sense.

 

They are currently healthy but they are getting old and I have had the odd one drop out. And with a bunch of testing seem fine and had been re-added and look to be fine. But yes important stuff is backed up but prefer not to loose anything regardless of course. Just a bit of piece of mind thing. I was having an issue with the server where it was randomly having unclean shutdowns so I was a be leary of doing anything. Finally figured out it was the power supply. Would run for weeks, heavy load, light load no problem, then just shut off.

 

Long story short I'll take your advice and go back to single parity. I wish I knew of the full procedure at the beginning of all this though. This all started with a failed data drive. I had wanted to upgrade the parity 2 with the disk that was replacing the failed drive but wasn't sure if the parity swap worked the same way on dual parity (I have done it in the past on single parity), and being a bit concerned, waiting for a response and not fully understanding how to do it with dual parity, I just replaced the failed disk to get the array healthy again.

 

I have a backup server that has dual parity I could maybe try this out on in the future, if no one else has given it a try.

 

Thanks for the help and reassurance trurl

Edited by bnevets27
Link to comment
4 hours ago, itimpi said:

As far as I know the Parity Swap procedure works exactly the same as when using parity1.

As already discussed in the thread.

 

What I wonder about is not introducing any different disks while attempting the parity swap, but instead just swapping (either) parity with another disk that was in the array. The purpose of parity swap is to allow a new disk that is larger than parity when you have a disabled or missing data disk instead of making you buy another disk of the same size.

 

Theoretically, starting the array with the data disk unassigned would effectively make it another disk. I just don't know if anybody tried it like that, and it isn't clear to me there is any advantage since there is no disabled disk, no larger disk being used, and there is still another valid parity disk during the whole process.

Link to comment

My thinking was this without any real idea how it works.


1) Parity 2 info gets written to (overwrites) the data disk. - Result is Parity 2 and the data disk contain the same data now, the data disk of course was removed from the array so therefore its emulated. At this point there is still dual parity, and parity 2 actually exists on 2 disks (the original parity 2 and the new party 2 being the "old" data disk).

2) The data disk (which is no longer a data disk and is now a clone of parity 2) is then assigned as the parity 2 disk. I assume this is where you would "trust parity".  So still dual parity, data disk being emulated. 

3) Finally, add the disk to the "failed"/emulated data slot. Rebuild the data.

 

So in this scenario, dual parity is maintained. I just wasn't sure if this was possible.

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.