[lug] ZFS for backup?

Rob Nagler nagler at bivio.biz
Wed Jul 11 10:53:03 MDT 2012

I am looking at ZFS for my new backup server, and I have lots of
questions.  Also, please let me know if any of my choices are sub

I have three types of files:

    Mirror: files rsynced from other systems, big, small, and
        inbetween sizes, written and snapshots taken daily.  Snapshots
        pruned daily.

    Weekly: 1M-10G tarballs, written and pruned weekly.

    Archive: 1M-100M files, written regularly, never deleted.

Reads are almost zero, but when they are, they read across the entire
file system to tar up all the files or to copy the tarballs to an
offline disk.

I'm using a Dell PowerEdge 2950 2 x quad 2.3G, 8 x 8GB, 6 x WD2003FYYS

After reading on the net, I decided to configure the PERC5 as a JBOD,
but there are two complications.  First is that PERC5 doesn't do JBOD
so you have to decide on things like stripe size, read ahead, and write
back.  I chose 8K stripes, because that seems to match ZFS's "natural"
block size.  The disks are setup for read ahead and write back.
Please let me know if this doesn't make sense.

zfs-fuse-0.6.9_p1-6.20100709git.el5.1 is installed at init levels
2 to 5.

The root partition is 50GB ext3 md0.  In order to use ZFS across all
six disks, I created 50GB partitions on all disks so I can two pools:
4 x 50GB and 6 x ~2TB.

The 50GB pool is for scratch so I created a raidz pool with one fs.

The 2TB pool is for the three types of files: mirror, weekly,
and archive.  Here's the start of the questions:

* Do I create multiple pools on the 2TB drives?  I can partition the
  disks any old way.  The three use cases seem to imply that I should,
  but maybe ZFS's garbage collection algorithm is so perfect that it
  doesn't matter.

* If I have one pool, I do need a separate fs for Mirror, because I
  don't want to snapshot Weekly or Archive.  However, should Weekly
  and Archive be two separate file systems?

* If Archive and Weekly are sharing a fs, do quotas help with
  anything? I don't have a space management problem so quotas actually
  make things worse from that viewpoint.

* Mirror contains ordinary files so should I turn on compression?
  There is enough disk space for a reasonable number of snapshots, but
  if compression is "free" then why not?  There are 8 cores on the box
  doing nothing so if compression is parallelized in ZFS, I would
  be "free" for all intents and purposes.

* If compression is on, what algorithm (lzjb, gzip-1, gzip-9, bzip)?

Once the system is configured and in production, I won't want to
adjust any of the params so your feedback now will be greatly
appreciated.  I'm not on a tight time schedule.


More information about the LUG mailing list