software raid, multiple controllers, btrfs

NeghVar

2[H]4U
Joined
May 1, 2003
Messages
2,671
I am experimenting with btrfs. I have a system with 8 2TB HDDs. Four attached to a controller card and 4 attached to the motherboard. I plan on a software RAID 10 using btrfs. I need to know if using HDDs attached to different controllers can be used together in a software RAID array. All 8 HDD are identical models. All the SATA ports used are SATA II.
 
Yes, that will work fine.

Make sure you add your disks to your array using UUID's and NOT /dev/sda, /dev/sdb, etc. You will thank me later :)
 
Does Btrfs on Linux use static device nodes and no 'device tasting' such as ZFS under BSD?
 
Yes, that will work fine.

Make sure you add your disks to your array using UUID's and NOT /dev/sda, /dev/sdb, etc. You will thank me later :)

That doesn't matter for btrfs, the kernel sees the whole array at once.

Does Btrfs on Linux use static device nodes and no 'device tasting' such as ZFS under BSD?

Yeah, one can mount any one drive out of the whole array and it'll automagically do it's thing and effectively mount the whole array.

Now if you want to have a constant thing to mount then referring to one of the drives by /dev/disk/by-id in fstab is a good thing.
 
With static device node i meant that if you change the cabling or connect the drive to another controller, does it automatically pick that up upon reboot, even if you use static nodes like /dev/sda, like on BSD?
 
With static device node i meant that if you change the cabling or connect the drive to another controller, does it automatically pick that up upon reboot, even if you use static nodes like /dev/sda, like on BSD?

As far as I know it does, i've got a btrfs array in an external (esata) enclosure and it's worked fine after an unplug and replug.
 
That doesn't matter for btrfs, the kernel sees the whole array at once.



Yeah, one can mount any one drive out of the whole array and it'll automagically do it's thing and effectively mount the whole array.

Oh, that's good to know.
 
upon creation of any array type (mdadm btrfs) you can supply the individual device nodes by any naming sheme (/dev/sdb1 /dev/disk/by-uuid/123...) it does not matter. The information which devices (which device uuids) belong to the given array are stored on every singel array member. So it does not matter on what controller, in what order the devices are present as long as they are present. You can even put all your disks in external usb cases and hook all of them up to the computer, it will work.
One thing you really shoud do, is use partitions. So dont use the device /dev/sdb but one whole partition (with typecode fd(mbr) or 00fd(gpt)) /dev/sdb1 instead
This way you coud even use the array as rootpartition /
 
Back
Top