Considerations on FreeBSD System Disk Mirroring with GEOM
It was already the 5.x branch of FreeBSD which included the GEOM driver for creating RAID arrays of any kind.
As Ralf S. Engelschall pointed out in his famous howto, GEOM was eventually to replace ATA, CCD and good old vinum.
It may not always make sense to put a full-featured RAID controller into a box when it serves only some “minor” purpose or performance is not an issue (costs may also be a consideration), so a software RAID solution may sometimes be good enough.
I used to use ATA software RAID on some Intel-based FreeBSD boxes in “raw mode” (without an additional ATA controller card), though this approach led sometime to obscure behaviour and system faults including freezes. Furthermore, there are usually no ATA controllers in other platforms such as alpha or sparc in favour to SCSI controllers, which puts the use of ATA to an end.
So with the upcoming 5.x release of FreeBSD I tried the new GEOM driver as it promised more flexibility.
Initially I had only two intel boxes using GEOM mirroring at the office, though this number has grown to about 15 by today.
During my research I came along Ralf’s previously mentioned howto, which was serving me as a base for a script to automate GEOM mirror creation during jumpstart installation.
Since for myself I do personally own some sparc and alpha boxes which are – besides testing – also in production use, I thought to eventually replace the omnipresent single-disk installs by GEOM mirrors. During my experiments I found some (besides other things also architectural) differences which I’d like to point out to you.
Please have a look at my forthcoming follow-up topics.