2

I have a NAS (Synology DS214 with DSM 5.0) where I don't have a possibility to create and manage partitions (maybe I could with some hacks that I don't want to make). What ways to setup multiple ZFS pools with one partition each (for starters - just want to use deduplication) exist? The setup should work with the NAS, i.e. over network (I'd mount the images via NFS or cifs).

My ideas and associated issues so far:

  • sparse files mounted over loop device (specifying sparse file directly as ZFS vdev doesn't work, see Can I choose a sparse file as vdev for a zfs pool?): problem that the name/number of the assigned loop device is anything but constant, not sure how increasing the number loop device with kernel parameter affects performance (there has to be a reason to limit it to 8 in the default value, right?)
  • If the device where the data is stored is only (mis)used to hold the data in form of bytes in files and everything else is managed from another device (necessary if there's no possibility to create partitions), it's necessary to save all data the ZFS system or the pool needs to run (at least the name of the pool and the list of attached vdevs) on the device as well in order to make the pool survive a failure of the controlling device. This ZFS related data has to be backed up externally. How to tell ZFS where to store its data? I guess, mounting directories (/etc/zfs, etc.) is a worse solution than tell ZFS where to save data at pool creation.
3
  • What type of NAS is this?
    – ewwhite
    Aug 20, 2014 at 12:01
  • @ewwhite edited, I remember reading an quite endless, but high quality discussion about how easy it is to setup partitions on Synology devices in general, but as I explained , impossibility of managing partitions should be a prerequisite of the question and answers. Aug 20, 2014 at 12:07
  • You actually don't use partitions in ZFS either... You use the entire disks.
    – ewwhite
    Aug 20, 2014 at 12:09

2 Answers 2

1

You state that you're interested in using ZFS deduplication. ZFS dedupe requires a good amount of planning, as it has an impact on system RAM resources. If this is a consumer NAS device (e.g. Synology), it's likely not configured with enough RAM to use ZFS deduplication well.

As far as the disk situation, you really just want a hardware RAID controller or real disks as the foundation of your storage device.

0

If you using Linux and you want to increase the maximum number of loop device:

[root@localhost ~]# modprobe loop max_loop=1024
[root@localhost ~]# ls -l /dev/loop* | wc -l
1025
5
  • I kind of sketched this solution already in my question. Problem of non-constant values for number used loop device persists, though. If creating 1024 loop device doesn't have an impact on performance, I guess my problem can be considered to be reduced to a question of elegance (it would be much nicer to be able to map sparse file image to unique names instead of a number out of a sequence - catch my drift?) Aug 20, 2014 at 11:22
  • 1
    why you don't use zfs directly on the sparses files?
    – c4f4t0r
    Aug 20, 2014 at 11:30
  • You mean that "A ZFS dataset of type filesystem can be mounted within the standard system namespace and behaves like other file systems." (man zfs). That should do it, didn't know that this is possible, thanks! Aug 20, 2014 at 12:04
  • Useful link, thanks. I'll also use it for serverfault.com/questions/622566/… which is quite strongly related to this question. Aug 20, 2014 at 12:41

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .