Would ZFS and gmirror work well together in a two-node failover
mvolaski at aecom.yu.edu
Sun Jul 13 23:51:38 UTC 2008
I am looking to put together a two-node high-availability cluster
where each node has identical data storage consisting of a set of
internal data drives (separate from the boot drive). I want ZFS to
manage the drives as a JDBOD in a RAIDZ2 configuration. Thus, if an
individual drive misbehaves or fails, ZFS detects and handles the
But I'm also looking to mirror this entire setup in real time to a
second identical server.
Basically, my question is can this work well on FreeBSD while taking
full advantage of ZFS?
Specifically, my understanding is that the only way to handle the
real time mirror is with gmirror and ggated, but it's not clear how
gmirror would interact with ZFS.
I am assuming that gmirror operates only on individual drives, so if
I had a set of 24 drives on each server, there would be 24 mirrored
One concern I have is that this setup could run into trouble with
gmirror's potentially sabotaging ZFS's RAIDZ2. For example, when a
drive starts failing, won't gmirror see it before ZFS does and take
the unfavorable action of substituting the corresponding drive in the
failover server in subsequent I/O, leaving ZFS's RAIDZ2 out of the
This is just one particular scenario, but in general, it's not
entirely clear that it's possible to have fine-grained control of
when, how much and in what direction gmirror manages synchronization
among drive pairs.
Maurice Volaski, mvolaski at aecom.yu.edu
Computing Support, Rose F. Kennedy Center
Albert Einstein College of Medicine of Yeshiva University
More information about the freebsd-questions