NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.

Forum Discussion

Sandshark's avatar
Sandshark
Sensei
Apr 02, 2023

ReadyNAS BTRFS oddities

OK, so I'm messing with a new-to-me RN3220 and have found (or re-discovered in one case) some oddities in it's use of BTRFS.  Most here will not understand or care, but with support from Netgear waning, I'm trying to understand as much as I can about how stuff works.  Maybe somebody here is knowledgeable enough about BTRFS to help me.

 

The first thing, which I already knew, is that a multi-layer volume, even one created that way initially, not by vertical expansion, has no metadata assigned to anything but the first group.  You have to run a balance to get that.

 

After completion of factory default volume sync with two drive sizes to force two groups, but before balance:

root@RN3220A:~# btrfs filesystem usage /data
Overall:
    Device size:                   6.36TiB
    Device allocated:            138.02GiB
    Device unallocated:            6.22TiB
    Device missing:                  0.00B
    Used:                        135.41GiB
    Free (estimated):              6.22TiB      (min: 3.11TiB)
    Data ratio:                       1.00
    Metadata ratio:                   2.00
    Global reserve:               16.00MiB      (used: 0.00B)

Data,single: Size:136.01GiB, Used:135.34GiB
   /dev/md127    136.01GiB

Metadata,DUP: Size:1.00GiB, Used:36.75MiB
   /dev/md127      2.00GiB

System,DUP: Size:8.00MiB, Used:32.00KiB
   /dev/md127     16.00MiB

Unallocated:
   /dev/md126    931.38GiB
   /dev/md127      5.31TiB

 

After balance:

root@RN3220A:~# btrfs filesystem usage /data
Overall:
    Device size:                   6.36TiB
    Device allocated:            140.09GiB
    Device unallocated:            6.22TiB
    Device missing:                  0.00B
    Used:                        135.41GiB
    Free (estimated):              6.22TiB      (min: 3.11TiB)
    Data ratio:                       1.00
    Metadata ratio:                   2.00
    Global reserve:               16.00MiB      (used: 0.00B)

Data,single: Size:136.01GiB, Used:135.34GiB
   /dev/md127    136.01GiB

Metadata,RAID1: Size:1.00GiB, Used:576.00KiB
   /dev/md126      1.00GiB
   /dev/md127      1.00GiB

Metadata,DUP: Size:1.00GiB, Used:36.25MiB
   /dev/md127      2.00GiB

System,RAID1: Size:32.00MiB, Used:32.00KiB
   /dev/md126     32.00MiB
   /dev/md127     32.00MiB

System,DUP: Size:8.00MiB, Used:0.00B
   /dev/md127     16.00MiB

Unallocated:
   /dev/md126    930.35GiB
   /dev/md127      5.31TiB

Note that Data,single is because ReadyNAS uses MDADM RAID, not BTRFS RAID, so it's a single BTRFS volume.  md126 simply doesn't show any use yet because there is so little on the NAS.  But the System and Metadata are now shown on both md126 and md127.  Lesson learned:  Always do a balance after a vertical expansion.

 

But what's really odd is that it shows both RAID and DUP Metadata and System on md127. My other NAS of similar size and also using XRAID (RN4200V2 converted to OS6) are inconsistent.  One has only RAID for both while the other has both RAID and DUP for metadata for one group by only RAID for system.  Both of those units have been vertically expanded with less than the full complement of drives upsized, so that's not the difference.  My main RD5200 converted to OS6 has been manually partly vertically expanded while in FlexRAID (per procedure documented in another thread), so everything on it is as I have set them: Metadata and System as RAID only.

 

I did a btrfs balance start -mconvert=raid1 /data and it cleaned things up:

root@RN3220A:~# btrfs filesystem usage /data
Overall:
    Device size:                   6.36TiB
    Device allocated:            140.13GiB
    Device unallocated:            6.22TiB
    Device missing:                  0.00B
    Used:                        135.41GiB
    Free (estimated):              6.22TiB      (min: 3.11TiB)
    Data ratio:                       1.00
    Metadata ratio:                   2.00
    Global reserve:               16.00MiB      (used: 0.00B)

Data,single: Size:136.01GiB, Used:135.34GiB
   /dev/md127    136.01GiB

Metadata,RAID1: Size:2.00GiB, Used:36.78MiB
   /dev/md126      2.00GiB
   /dev/md127      2.00GiB

System,RAID1: Size:64.00MiB, Used:32.00KiB
   /dev/md126     64.00MiB
   /dev/md127     64.00MiB

Unallocated:
   /dev/md126    929.31GiB
   /dev/md127      5.31TiB

 

But what's going on with the default condition, and does it have any impact to performance and/or volume reliability/recoverability?

No RepliesBe the first to reply

NETGEAR Academy

Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology! 

Join Us!

ProSupport for Business

Comprehensive support plans for maximum network uptime and business peace of mind.

 

Learn More