Its new homelab time. And with that, potentially a new OS time too.
I currently am very happy with Debian and Docker. The only issue is I am brand new to using data redundancy. I have a 2 bay NAS I’ll use, and I want the two HDDs to be in raid 1.
Now I could definitely just use ZFS or BTRFS with Debian, and be able to use Docker just like I do currently.
Or I could use a dedicated NAS OS. That would help me with the raid part of this, but a requirement is Docker.
Any recommendations?
Debian and the standard linux mdraid?
This. Don’t make it unnecessarily complicated.
Do you mean mdadm? https://raid.wiki.kernel.org/index.php/A_guide_to_mdadm If not can I have a link?
Yeah, that’s what he means.
I’m doing kinda the same thing with my NAS: md raid1 for the SSDs, but only snapraid for the big data drives (mostly because I don’t really care if i have to re-download my linux iso collection, so snapraid plus mergerfs is like, sufficient for that data).
Also using Ubuntu instead of Debian, but that’s mostly due to it being first built six years ago, and I’d 100% go with Debian if I was doing it now.
Yes, as the other people pointed out, that’s what I mean. The standard Linux software RAID (also called MD RAID)
It’s proven, battle-tested, pretty robust and you don’t rely on any specific vendor formats or any hardware for that matter. The main point would be to keep it simple. You could use BTRFS or ZFS or all kinds of things. But it only introduces additional complexity and points of failure. And has no benefits over a plain mirror (what the RAID1 does) if we’re talking about just 2 devices. At least it served me well in the past. Contrary to cheap hardware RAID controllers and also BTRFS which also let me down once. But a lot of development went in to that since then and the situation might have changed. But mdraid is reliable anyways.
How about bitrot?
That is indeed a good question. Is this something RAID is bothered with at levels 0 and 1? I think in this case it’s the job of the filesystem to care for that. But you should probably let the periodic task run that does scrubbing like once per week. You could also experience other issues than just bitrot. For example bad sectors and one of the hdds slowly degrading.
In the end I don’t think a RAID1 can do much about bitrot and other RAID woes. There are no checksums or anything to correct for that. You’d probably need some other technology for that. But it’s probably the same for a ZFS mirror. And everything better than that needs more than 2 hdds.
I think ZFS does some advanced stuff which makes it better than just relying on hardware checksums (which have been shown to not be so great)
I’d suggest lvmraid which is just mdraid wrapped in LVM. It’s a tad simpler to setup and you get the flexibility of LVM, plus the ability to convert from linear to mirror and back as needed. That is you could do a standard install on LVM, then add another disk to LVM and convert the volumes to RAID1. It’s all documented under
man lvmraid
.