Re: Raid5 to another raid level??

From: Michael Busby <hidden>
Date: 2011-09-07 16:26:26

Thanks for taking the time to respond, I am now running a 4 disk raid5
soon to be upgraded to a 8 disk raid6



-- Sent from my HP TouchPadOn 7 Sep 2011 02:08, [off-list ref] wrote:
On Fri, 2 Sep 2011 14:11:57 +0100 Michael Busby [off-list ref]
wrote:
I am using the 3.0.0 kernel so that should not be a issue, have just
upgraded mdadm on my box to 3.2.2 from 3.1.4

would i be right in thinking that to get from raid0 to raid5 i would
first have to change from raid0 to raid4 and add the extra disk for
parity, once i am at this level i would need a command to get the
parity data striped over the raid5 and not in a single disk like raid4
or maybe there is a way to go from raid0 direct to raid5 by adding the
extra disk and then having the parity data created and spread over the
disks....
(I vaguely recall already replying to this but find no evidence - apologies
if this is a duplicate).

RAID0 to RAID5 does happen in two stages but only one rebuild is needed.
mdadm should make it all 'just work'.
i.e.
  mdadm -G /dev/md0 -l 5 --raid-devices=4 --add /dev/sdf \
  --backup-file=/root/md0-backup

This will:
   - convert the array from RAID0 to RAID5 in a 'parity-last' layout, which
     is really the same thing as RAID4.
   - 'freeze' recovery
   - add /dev/sdf as a spare
   - request a reshape to change the layout from 'parity-last' to
     'left-symetric'
   - 'unfreeze' recovery

Then the kernel will notice that a reshape is needed and allowed, will add
the spare and start reshaping the array and creating parity at the same time.

So you don't need an intermediate state of a complete RAID4 - a degraded
RAID4 is sufficient and handled automatically.

NeilBrown

On 2 September 2011 13:49, NeilBrown [off-list ref] wrote:
quoted
On Fri, 2 Sep 2011 11:35:30 +0100 Michael Busby [off-list ref]
wrote:
quoted
Great, will test that in a bit

will mdadm 3.2.2 support converting raid4 to raid5

"A RAID4 can change the number of devices or the size of individual
devices. It cannot be converted to RAID5 yet (though that should be
trivial to implement)"
I guess the man page needs updating.  You would need a reasonably recent
kernel... 2.6.30 or later.  I guess that isn't so recent any more.

NeilBrown

quoted
On 2 September 2011 11:22, NeilBrown [off-list ref] wrote:
quoted
On Fri, 2 Sep 2011 10:12:32 +0100 Michael Busby [off-list ref]
wrote:
quoted
Thanks Neil

Is there anyway back from raid0 to raid4 as i know once at raid0 i
will no longer be able to add any disks, in theory i could change
echo raid0 > /sys/block/md0/md/level,but this would require adding a
missing disk to the raid4 at the same time, not sure how easy that
would be todo
Yes, you can switch from RAID0 to RAID4 in much the same way as you switch
from RAID4 to RAID0.
You can then freeze/add-disk/change-size/unfreeze/wait/switch-back-to-RAID0
to add more devices.

mdadm-3.2.2 should be able to do all this for you.  i.e. you ask it to --grow
a RAID and --add some disks at the same time, and it will do all the required
magic.

This hasn't been tested extensively, but should work in simple cases.

Of course the more devices you have in a RAID0, the less reliability you have
- but e.g. as a cache for a tape backup system a large RAID0 is fine.

NeilBrown

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help