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<[email protected]> 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
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-geom
To unsubscribe, send any mail to "[email protected]"