DragonFly committer Joris Giovannangeli has a Google Summer of Code project. He’s bringing Hammer2 to OpenBSD, in single-node form. It’s a very difficult project, but Joris is a very talented worker.
Tomohiro Kusumi has been quietly making a lot of commits to Hammer. I haven’t been linking them because they don’t necessarily equate to new features, but here’s an recent exception: the -A argument will make your Hammer command run on every PFS. It only affects reblocking/rebalancing – for now.
You can now export Hammer slave volumes as NFS mounts – but since slave volumes are updated from master, you’re mounting a snapshot of that point in time. That may actually be an advantage.
I haven’t been drawing enough attention to it, but there’s been a bunch of HAMMER filesystem activity lately: First, Tomohiro Kusumi has been working on HAMMER – these posts are a small subset of his commits. Second, Matthew Dillon has been working full steam ahead on HAMMER2. The HAMMER2 design document has been updated (read this!), and he’s already accomplished master->slave disk syncing.
It’s not ready for production, of course, which you may already realize, so don’t install it unless you want to work on the code.
If you’re monitoring your DragonFly systems with Nagios, here’s a way to check the health of your Hammer mirror-streams. Thanks, Mike!
Here’s a number of DragonFly links to clear out my backlog:
There’s a FreeBSD Forums thread about ZFS and Hammer, as several people have pointed out to me. It’s interesting to see, but there isn’t a lot of quantitative discussion. (It’s a forum post, not a white paper, though.)
John Marino has created something very useful: a graphical tool for Hammer file history. It’s called ‘Slider’, and it uses curses to work in a terminal. It shows historic versions of files and can restore those old versions as needed. This was already possible in Hammer, of course, but it required a sequence of commands that were not straight-forward. I’ve been slow enough posting it that version 2.0 is already out, offering a way to see files that no longer exist, but are still in history. (i.e. deleted some time ago) ‘Time Machine’ sounds like the best name, but that seems to be taken.
One way to keep file history on an very active Hammer disk from eating up all the space: more snapshots. This may seem counterproductive, but disk pruning eliminates historical data between snapshots, so you can keep older data at the cost of some temporal accuracy.
Not the first time that pun has been deployed, of course, but: BSDNow 053 has a Hammer tutorial, along with an interview of Reyk Floeter about OpenBSD’s httpd, along with the usual recent news and some links to some things I haven’t seen, like pfSense tricks.
A frequent question people ask when trying Hammer is “How can I do software RAID to cover a disk failure?” Hammer provides for streaming one volume to another, so you can duplicate drives, but there isn’t an automatic failover mechanism as there is with a RAID setup. The first answer is usually “get hardware RAID“; my preferred solution. The remaining software solutions are vinum, ccd, and lvm for DragonFly.
A note for everyone: use Hammer default on a very busy filesystem, and you will eat a lot of disk space since all file changes are recorded. (I’ve done this to myself a few times.) Francois Tigeot has a list of tips on how to keep that from happening.
The May BSD Magazine is out, and Siju George has written an article about using Hammer on DragonFly. It’s a free download to read.
The March issue of BSD Magazine is out, and this month has an article written by Siju George about how his company is using DragonFly and Hammer for backups.