On 21/12/2022 06:19, Frank Steinmetzger wrote:
Am Wed, Dec 21, 2022 at 05:53:03AM +0000 schrieb Wols Lists:

On 21/12/2022 02:47, Dale wrote:
I think if I can hold out a little while, something really nice is going
to come along.  It seems there is a good bit of interest in having a
Raspberry Pi NAS that gives really good performance.  I'm talking a NAS
that is about the same speed as a internal drive.  Plus the ability to
use RAID and such.  I'd like to have a 6 bay with 6 drives setup in
pairs for redundancy.  I can't recall what number RAID that is.
Basically, if one drive fails, another copy still exists.  Of course,
two independent NASs would be better in my opinion.  Still, any of this
is progress.

That's called either Raid-10 (linux), or Raid-1+0 (elsewhere). Note that 1+0
is often called 10, but linux-10 is slightly different.

In layman’s term, a stripe of mirrors. Raid-1 is the mirror, Raid-0 a (JBOD)
pool. So mirror + pool = mirrorpool, hence the 1+0 → 10.

Except raid-10 is not a stripe of mirrors. It's each block is saved to two different drives. (Or 3, or more, so long as you have more drives than mirrors.)

Linux will happily give you a 2-copy mirror across 3 drives - 3x6TB drives will give you 9TB useful storage ...

I'd personally be inclined to go for raid-6. That's 4 data drives, 2 parity
(so you could have an "any two" drive failure and still recover).
A two-copy 10 or 1+0 is vulnerable to a two-drive failure. A three-copy is
vulnerable to a three-drive failure.

At first, I had only two drives in my 4-bay NAS, which were of course set up
as a mirror. After a year, when it became full, I bought the second pair of
drives and had long deliberations by then, what to choose. I went for raid-6
(or RaidZ2 in ZFS parlance). With only four disks, it has the same net
capacity as a pair of mirrors, but at the advantage that *any* two drives
may fail, not just two particular ones. A raid of mirrors has performance
benefits over a parity raid, but who cares for a simple Gbit storage device.

With increasing number of disks, a mirror setup is at a disadvantage with
storage efficiency – it’s always 50 % or less, if you mirror over more than
two disks. But with only four disks, that was irrelevant in my case. On the
plus-side, each mirror can have a different physical disk size, so you can
more easily mix’n’match what you got lying around, or do upgrades in smaller
increments.

If I wanted to increase my capacity, I’d have to replace *all* drives with
bigger ones. With a mirror, only the drives in one of the mirrors need
replacing. And the rebuild process would be quicker and less painful, as
each drive will only be read once to rebuild its partner, and there is no
parity calculation involved. In a RAID, each drive is replaced one by one,
and each replacement requires a full read of all drives’ payload.

If you've got a spare SATA connection or whatever, each replacement does not need a full read of all drives. "mdadm --add /dev/sdx --replace /dev/sdy". That'll stream sdy on to sdx, and only hammer the other drives if sdy complains ...

With older
drives, this is cause for some concern whether the disks may survive that.
That’s why, with increasing disk capacities, raid-5 is said to be obsolete.
Because if another drive fails during rebuild, you are officially screwed.

Fun, innit?

They've always said that. Just make sure you don't have multiple drives from the same batch, then they're less likely statistically to fail at the same time. I'm running raid-5 over 3TB partitions ...

Cheers,
Wol

Reply via email to