linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: Michael Busby <michael.a.busby@gmail.com>
Cc: john.robinson@anonymous.org.uk, linux-raid@vger.kernel.org
Subject: Re: Raid5 to another raid level??
Date: Wed, 7 Sep 2011 11:07:56 +1000	[thread overview]
Message-ID: <20110907110756.788ca4b8@notabene.brown> (raw)
In-Reply-To: <CAFsPQ__91WvzJ1Xd1cnExkdQKVaPEHfdzrfm2RQPWSQfR-Ve=w@mail.gmail.com>

On Fri, 2 Sep 2011 14:11:57 +0100 Michael Busby <michael.a.busby@gmail.com>
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 <neilb@suse.de> wrote:
> > On Fri, 2 Sep 2011 11:35:30 +0100 Michael Busby <michael.a.busby@gmail.com>
> > wrote:
> >
> >> 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
> >
> >
> >>
> >> On 2 September 2011 11:22, NeilBrown <neilb@suse.de> wrote:
> >> > On Fri, 2 Sep 2011 10:12:32 +0100 Michael Busby <michael.a.busby@gmail.com>
> >> > wrote:
> >> >
> >> >> 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

  reply	other threads:[~2011-09-07  1:07 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-01 23:50 Raid5 to another raid level?? Michael Busby
2011-09-02  0:54 ` Michael Busby
2011-09-02  2:19   ` NeilBrown
2011-09-02  9:12     ` Michael Busby
2011-09-02 10:22       ` NeilBrown
2011-09-02 10:35         ` Michael Busby
2011-09-02 12:49           ` NeilBrown
2011-09-02 13:11             ` Michael Busby
2011-09-07  1:07               ` NeilBrown [this message]
  -- strict thread matches above, loose matches on Subject: below --
2011-09-07 16:26 Michael Busby
     [not found] ` <CAFsPQ__YdDnJw=qgLAq10vRbNPy4B_EhkV4FU0JAfovxnw9TxQ@mail.gmail.com>
2011-10-10 21:47   ` Michael Busby
2011-10-12  4:10     ` NeilBrown
2011-10-12  9:25       ` Michael Busby
2011-10-12 10:14         ` NeilBrown
2011-10-12 16:01           ` Michael Busby
2011-09-01 21:50 Michael Busby
2011-09-01 22:34 ` John Robinson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110907110756.788ca4b8@notabene.brown \
    --to=neilb@suse.de \
    --cc=john.robinson@anonymous.org.uk \
    --cc=linux-raid@vger.kernel.org \
    --cc=michael.a.busby@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).