Referencing: https://lemmy.world/post/17588348
I want to make a NAS with a 500GB boot drive and 2x16TB HDDs. Based on my previous post, btrfs is a good option. It also looks easy to get started. My plan for the NAS would be to purchase several 16TB drives, and only use 2 of them.
My first question is about different drives. Could I purchase two different brand drives and use them with btrfs? (I assume yes)
2nd question: how does the replacement process go? Like if drive A died, so I remove it, and put a brand new replacement in. What do I have to do with btrfs to get the raid 1 back going? Any links or guides would be amazing.
This is a good guide: https://wiki.tnonline.net/w/Btrfs/Replacing_a_disk
Usually you want to replace drives before they fail (SMART monitoring will give you ample warning in most cases). The it is better to have an additional free SATA port to turn the failing raid temporarily into a three-way raid and use the btrfs built-in function to replace the disk in situ.
My first question is about different drives. Could I purchase two different brand drives and use them with btrfs? (I assume yes)
You can.
2nd question: how does the replacement process go? Like if drive A died, so I remove it, and put a brand new replacement in. What do I have to do with btrfs to get the raid 1 back going? Any links or guides would be amazing.
Depends on what NAS/Software you have. If your NAS supports hot-swaps you can just pull out the defective drive and plug in another. Otherwise you’ll have to shut it down, swap the drive and turn it back on.
If you have already have the spare drive ready and you have slots availible, you can run a “hot spare”. This way you can even start the raid rebuild if you’re not physically near your NAS (like when a drive fails while you’re on holiday or sm).
Hm okay. I was thinking of using Debian and likely a 4 bay case.
So the process for a dead HDD: Power off. Pull out dead drive and replace. Power on. Now what? Does Debian/a specific motherboard support auto rebuilding the raid 1? Or what are the commands to rebuild?
I’m using Synology/DMS and there you have a pretty neat GUI that lists newly detected drives and let’s you assign them to your storage pool and rebuild the raid. I’d expect it to be quite similar on software like
TrueNASRockstor.TrueNAS uses ZFS
Ah, my bad.
Btrfs has it’s own build-in raid. From what I understand you should mount the filesystem with -o degraded and then use btrfs replace to switch to the new drive. I’ve never had to do that myself yet though.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters NAS Network-Attached Storage RAID Redundant Array of Independent Disks for mass storage SATA Serial AT Attachment interface for mass storage ZFS Solaris/Linux filesystem focusing on data integrity
4 acronyms in this thread; the most compressed thread commented on today has 18 acronyms.
[Thread #873 for this sub, first seen 16th Jul 2024, 15:35] [FAQ] [Full list] [Contact] [Source code]
Could I purchase two different brand drives and use them with btrfs?
I don’t quite remember the source for this, but I believe I read some time ago that it’s actually a good thing to have separate drives. The reasoning is, if you buy two identical drives (at the same time), the likelyhood of both drives failing around the same time is severely higher.
This is then amplified by the fact that rebuilding a RAID puts a lot of strain on the non-dead drive, so if ie. drive 1 dies and drive 2 is about to die, the strain you put on drive 2 in order to rebuild your RAID onto drive 3 might kill drive 2 before you even finish rebuilding your RAID.
Again, this is just from my memory, it might be worth doing some more research on.
Is btrfs RAID stable yet? This article is three years old, so maybe things have improved, but it contains some pretty strong warnings about the dangers of btrfs RAID:
https://arstechnica.com/gadgets/2021/09/examining-btrfs-linuxs-perpetually-half-finished-filesystem/
To summarize, the article argues that btrfs is great for single-disk usage but its RAID implementations are idiosyncratic and unreliable.
(I use btrfs daily on several single-disk computers and it has been great, but I have never tried its RAID.)
I believe it’s only RAID 5 and 6 that are unstable, https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices
Mirror (raid1) btrfs raids are fine and are more convenient anyways.
Been using it for over a year on two 8tb SSDs in strip and 14tb as mirror. This is on Debian and its flawless and wonderful. I run btrkbk hourly for snapshots, backups to remote locations and house keeping with 6 months of hourly snaps. Life is great.
In days past some drive vendors had different sector layouts for drives and would cause issues with raid. Pretty sure most nowadays are all the same layout and you won’t run into any issues. I still look to get the same drive model anyways just to be perfectly sure that there are no issues.
Even then you may run into weird issues like one of my 1.2 TB enterprise ssd drives was reporting 1.12 TiB rather than 1.09 TiB the other 7 drives had. TrueNas refused to build a vdev with that drive and I had to return it to get a new one.
It is better to have more drives and less apares. However, btrfs is only stable in raid 1. With data that big I would go ZFS raidz2 as you can lose up to 2 drives.
From a btrfs perspective it is pretty easy as you just can run btrfs replace with the path of the new drive. Btrfs also has the benefit of being native
BTRFS is stable for all RAID levels except for RAID 5 and 6 (because of the write hole). I’m using it with RAID 10.