Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Nov 2010 10:27:39 +0100
From:      Bastien Semene <bsemene@cyanide-studio.com>
To:        freebsd-geom@FreeBSD.ORG
Subject:   Re: Newbie RAID 0 question
Message-ID:  <4CE0FD0B.2010700@cyanide-studio.com>
In-Reply-To: <201011101839.oAAIdTpo062692@lurza.secnetix.de>
References:  <201011101839.oAAIdTpo062692@lurza.secnetix.de>

next in thread | previous in thread | raw e-mail | index | archive | help
Thank you both for the fast answer.

If I'm understanding well, I can add space with gconcat (8) but there 
will be two separate stripings, in your example datas will be stripped 
between ad0/ad1 and when space is full between ad2/ad3 ?

I'm using RAID-1+0 structure, so I think I can do the work with 2 arrays 
(old one with datas, new one with datas and more space).

Do you see some advantage/disadvantage using the gconcat model instead 
of a true striping ?
There will maybe have some performances differences, but I don't care 
that much as the server is far to be (and should never be) overloaded.

Is it planned that geom will add an insert command, or is gconcat the 
definitive solution ?

Le 10/11/2010 19:39, Oliver Fromme a écrit :
> Bastien Semene<bsemene@cyanide-studio.com>  wrote:
>   >  Is there a way to add a component to an existing RAID 0 array ?
>
> There are several ways in FreeBSD to create a RAID-0 array.
> Since you're posting to freebsd-geom, I assume that you are
> talking about gstripe(8).  If you mean something else, then
> please be more specific.
>
> As far as I know, you cannot directly add a new provider to
> an existing gstripe volume.  This would be technically
> difficult, because the stripes are spread evenly across the
> existing providers.  Adding a new provider would require
> changing the stripe distribution, which means rewriting
> large parts of the existing providers.
>
> However, you can add a new provider to a gconcat(8) volume
> (there's even an example for that in the manual page).
> gconcat simply concatenates its providers without striping
> (thus it's not RAID-0).
>
> So, basically you can add space to an existing gstripe by
> creating another gstripe containing the new disks, and then
> combine the two gstripes with gconcat.  For example:
>
> gstripe1<-- /dev/ad0 + /dev/ad1 (old)
> gstripe2<-- /dev/ad2 + /dev/ad3 (new)
> gconcat<-- gstripe1 + gstripe2
>
> Depending on your partition layout, you will have to modify
> the partition table (BSD label, GPT) to increase the size
> of the partition, and then use growfs(8) to resize the
> file system contained in the partition.
>
> Of course, you could also dump(8) your data (or copy it
> elsewhere), then recreate everything from scratch, and
> finally restore(8) your data (or copy it back).
>
> And of course you should have a good backup in either case,
> no matter which approach you choose.
>
> Best regards
>     Oliver
>

-- 
Bastien Semene
Administrateur Réseau&  Système

Cyanide Studio - FRANCE




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CE0FD0B.2010700>