I’m looking at different options for getting a NAS/RAID array system that is tolerant to not just hard drive failures but also to hardware/firmware and board failures. I’ve utilized a RAID array in the past that was built into the motherboard, which resulted in the motherboard failing and me having to ebay another one to get the RAID array back up and running. Then I bought a NAS 2 bay drive that was only compatible with drives up to 1.5TB. I’ve also used external drives for backup since I’ve been burned by hardware/firmware/software issues related to RAID arrays. Are there are any PCI RAID cards, NAS boxes or software RAID or other options where the hard drives would still be readable by other RAID cards if the boards failed? Maybe a software RAID solution? Any thoughts would be appreciated.
If you are using fedora (with a recent install) you are using btrfs right now. 😉
My desktop and laptop run fedora. For my servers I run Debian 12 with everything in docker.
As for that article yah. Btrfs has had some rough points in its past. It’s true. Can’t deny it. This being said I would hold that the way btrfs treats raid definitions in unconventional ways is a design advantage.
Btrfs raid1 is more like “replica 2”. If you have one 12TB drive and two 6TB drives you get 12TB of useable space. Because btrfs will work to ensure there are two replicas behind the scenes. In a traditional raid 1 you could not use the space from the mismatched drives. It’s not traditional raid1 but I think it’s preferable.
I think the main advantage for btrfs for home lab is that you can toss in any drive regardless of size and btrfs will use it. You can remove any drive and btrfs will auto rebalance. These are btrfs exclusive features. You can also change the raid type on the fly too. Once I get kernel 6.2 I could live convert my btrfs raid1 pool into a raid 5 pool while the pool is live and mounted. You can do any such live mounted conversions on the fly.
For me home lab is being flexible and working with what you can get. And I feel btrfs is a great fit for that.
That and since btrfs if a native part of the kernel you won’t ever have to worry about updating your kernel and breaking the ZFS shim or dkms.
You seems prepared on the topic so I’ll jump in with a question: what do you think about SnapRAID? What are the advantages of birds? I’ve tried SnapRAID because it seems so malleable and easy, but (
maybefor my luck of knowledge) I don’t feel safe with it because I don’t know what’s going on, when it should do scarubs and sync and when it did do them. How do you see btrfs drives for OMV in Proxmox?Hey. I’m not an expert in SnapRAID but all of these specialized systems used one of the following under the hood
As long as the system is widely used, send you alerts when things go wrong, and uses 1-4 it should be ok. Just don’t go proprietary and make sure you get alerts when a drive fails and you should be ok.
Good point. I’m leaning toward running the RAID as part of the OS rather than having either a dedicated NAS OS like xigmaNAS or TrueNAS, since I’d like to still use the computer for things outside just the NAS specialty that those offer. I’m still looking into the snapRAID which is more of a backup rather than RAID option. I have 4 HDs right now and have room up to 6, and that’s all I really need. With btrfs RAID, if my motherboard fails or if I have to reinstall or change the OS, will any new system with a different motherboard and operating system that recognizes btrfs still be able to read the existing RAID array on the drives, without needing previous hardware/firmware/OS info?
The only thing you need to do if you run a standard Linux distro is to set up scheduled scrubbing and smart alerts. Nas OSes do that by default. But if you set it up as a cronjob or systemd timer you can achieve the same result.
The advantage of running a Linux distro over a Nas OS is that you could add virtual machines on top via kvm or run appliances via docker. It’s just a sever with a lot of storage added on top.
As for btrfs raid. Yes. If you motherboard fails or you have to reinstall the OS you can reimport it with no prior existing knowledge. It’s simple mounting it like a normal Linux file system because it is one. The kernel will locate all members of the raid pool.