Anyone an expert in Synology here?

Synology’s Hybrid Raid (SHR) is a funky little system, especially since it’s built on standard Linux tools.

What I’m wondering though, is how data is distributed when you change the disks in the system.

Imagine I have 2x1TB drives and 2x4TB drives in a system.

  • First it creates a 4x1TB “chunk” which is essentially RAID5. (3TB available)
  • Next it creates a 2x3TB chunk which acts like RAID1 (although internally may be calculated like a RAID5 parity.) (3TB available from this)

Now let’s say I replace those two 1TB drives with 4TBs (safely, preserving data, etc.), and tell SHR to expand to use the new drives. I can see a number of scenarios from this point:

  • It mirrors the two new blocks into another 3TB chunk, giving me 9TB total. (3 from RAID5, 3 from first mirror pair, 3 from second mirror pair)
  • It expands the 3TB mirror into a second RAID5 group, giving 12TB total. (3 initial plus 9 in the second group)
  • It does the same thing and also rewrites the data on the (former) 3TB mirror pair to be striped across all four disks
  • It expands the 3TB mirror to RAID5, *and merges it with the original 3TB RAID group, giving a single 12TB RAID5.
  • Again it does the same thing but with rewriting of the data that was formerly just mirrored.

This isn’t likely to be a huge deal, but I’d like to know how it works under the covers.

  • SwordgeekOP
    link
    fedilink
    22 months ago

    Well, I’ve found some of the answer.

    /volume1 is a single LV on a single VG - no surprise there. There are two PVs comprising it, each of which is a RAID5 group across an extended partition on the disks.

    pv0 is /dev/sd[abcd]5 and pv1 is /dev/sd[abcd]6

    Now what I find most interesting right now is that SHR supposedly required btrfs to operate - and yet, /volume01 is an ext4 filesystem.

    Part of me would like to convert to btrfs, but I’d need a spare 10TB of storage just to back up to, before starting down that odyssey.

    More digging, more questions.

    • @Bookmeat
      link
      22 months ago

      I’m not sure why SHR would require any file system, it’s an abstraction that sits below that layer.

    • @[email protected]
      link
      fedilink
      12 months ago

      The filesystem is stored on the volume(s) in the storage pool. Its advisible to create a seperate smaller volume for the packages because if a volume becomes corrupted you cant use things like active backup. It can happen because ive just went through that with my ds1821÷. Data was fine but the volume was unrecoverable and readonly. SHR is great but you need to start with the smallest drives as you can’t add a 10tb drive and then a smaller one.