# RAID mirroring (RAID 1) advice



## Seeker (Nov 1, 2012)

My Supermicro MBO supports it.

When it comes to RAID 1, ideal solution is to have exactly 2 same pieces of HDDs.
What if that is not possible? I can't get another same, as it isn't available anymore.

What is the tolerance?
Different manufacturer, but:
If I get another one with a same capacity.
Is it problem if buffers differ, or they also have to be, of a same size?

But even capacity and buffers and rpm are same, they may differ in R/W performance.
Is this a problem?

Your experiences?
What is an absolute min. lvl. of tolerance, for RAID 1 to work without "degradation"?


----------



## wblock@ (Nov 1, 2012)

gmirror(8) will create mirrors with different-sized drives.  The extra space on the larger drive is ignored.  Buffer size does not matter to the mirror, but could affect performance.  gmirror(8) has different load-balancing algorithms.  Expect write speed to be limited by the slower drive.  Read speed should be nearly the sum of both drives.

Motherboard RAID is usually software RAID.  Rather than use that, consider using FreeBSD's RAID implementations, like gmirror(8) and ZFS.  Both remove the dependence on particular hardware RAID metadata and avoid hardware RAID touchiness with things like TLER.


----------



## Seeker (Nov 1, 2012)

Before continuing, I first had to determine, what kind of RAID type, my MBO offers ...
Docs are pretty sneaky, about revealing this info ...


> Intel 6300ESB (RAID 0,1 supported) - Alternate Device ID and RAID Class Code option for support of *Soft* RAID
> The *Adaptec* Embedded Serial ATA RAID with HostRAID controller
> Supermicro's P4SC8/P4SCi offers the user with the benefits of SATARAID *without the high costs associated with hardware RAID* applications.



_*My judgement => on-board solution ("fake RAID" or "host RAID")*_
Am I right?

Are you imposing, that even when MBO offers embedded, high quality Hardware RAID, I should still use gmirror(8)?


----------



## wblock@ (Nov 1, 2012)

FreeBSD's various software RAID implementations do have some advantages over dedicated hardware RAID, yes.


----------



## Seeker (Nov 1, 2012)

In short, what would be the most notable ones?


----------



## wblock@ (Nov 1, 2012)

Already mentioned: a gmirror(8) or ZFS setup can be moved to a different machine with a different controller and still work, and don't have problems with normal, non-TLER drives in a RAID.


----------



## brd@ (Nov 1, 2012)

Also the HostRAID is very very bad.. I have seen multiple occasions where it corrupted entire systems. I saw one where the drives where out of sync, so if you do an [CMD=""] ls -l [/CMD] once it showed files from 2009 and then again and it would show files from 2011.

Also, don't forget to have backups too!


----------



## Quip (Nov 1, 2012)

*graid(8)*

I think graid(8) has support for onboard host RAID provided by Intel chipset on Supermicro motherboards.

Only size of disks matter. You need exact same number of sectors or second (replacement) disk can be larger. Remaining space will be unusable.


----------



## Seeker (Nov 2, 2012)

Thank you for your answers.
Nah! I would never go for Hybrid, BIOS assisted software RAID, aka Fake/HostRAID.
My solution is definitely OS based, soft RAID via gmirror.

Also, If someone is interested in RAID types comparison, take a look.


----------



## Sfynx (Nov 5, 2012)

Personally I wouldn't worry too much about performance degradation when using two different drives in a mirror... besides, it lowers the chance that there is a bad batch or something like that, causing both drives to fail at the same time (it happened to me once with a mirror of two of those notorious 80 GB Maxtor drives that were designed to crash within a couple months... horrible. Luckily my backups were fine )


----------



## Speedy (Nov 8, 2012)

Hardware RAID vs. fakeraid vs. software RAID ... seems like a no-brainer methinks?


----------



## mav@ (Nov 9, 2012)

Speedy said:
			
		

> Hardware RAID vs. fakeraid vs. software RAID ... seems like a no-brainer methinks?



That is not exactly true. RAID BIOS'es on modern board support number of RAID levels: except 0 and 1 it is also usually 0+1/10, CONCAT and 5 (RAID5 writing is not supported by FreeBSD now). At least Intel BIOSes support spare drives. You can often create two volumes per set of disks. Metadata are quite consistent within one chipset vendor, so you can replace failed motherboard with another one from the same vendor. And in worst case you can use even different vendor, except possibly some cases of booting, as it will just work as software RAID.


----------



## Speedy (Nov 10, 2012)

What's your point? Are you trying to say fakeraid can be almost as good as software RAID? Basically you are saying half flat tire is almost as good as fully inflated tire? Guess what, I still go with fully inflated tire and software RAID (as opposed to fakeraid).


----------



## kpa (Nov 10, 2012)

FakeRAID is software RAID in essence, operationally there is very little difference since both use the CPU for checksumming etc. The real difference between them is that FakeRAID uses a metadata format that is tied to the RAID BIOS on the motherboard BIOS or the controller card. The operating system has to support this metadata to use the RAID. With software RAID like gmirror(8) the support for the RAID comes from the operating system only and can use its own metadata format that the system BIOS does not need to know about.

Btw, the term "FakeRAID" refers to non-hardware RAID, a hardware RAID is seen as the real thing, anything using software for RAID functions is "fake".


----------



## mav@ (Nov 11, 2012)

Explanation by kpa is right -- FakeRAID is a software RAID with RAID BIOS support. Yes, software RAID can be more flexible as it doesn't need to be compatible with RAID BIOS. But, for example, it can't boot system from RAID10 or RAID5 volume, while BIOS-assisted FakeRAID can. Another example is if one disk was considered failed and dropped out of software RAID array, BIOS may still try to boot from it, while in case of FakeRAID RAID BIOS has all the information to do things right.

Both software and FakeRAID (and sometimes even hardware RAIDs) may have bugs. Choice depends on specific cases. For example, I wouldn't trust legacy ataraid(4) code much, preferring gmirror(8) instead. But I am sure enough in quality of graid(8) code to prefer it over gmirror(8).


----------

