Next tuesday is my birthday. Since it's been a while since I last celebrated that, and since it's been a while since I last made some waffles, I decided to combine those two issues and do a waffle party next sunday (may 11th), at my apartment in Mechelen, between 12:00 and 17:00.
If you can read this, and you have reason to assume I'll recognize you on sight, you're hereby invited.
Please do let me know if you're coming though, and around what time, so I can prepare enough dough etc.
See you there?
I slightly forgot about this, but I just put the slides for my talk at LOADays 2014 online. I'm not entirely happy about the moiré-effect that slideshare adds to the slides, but ah well, it won't kill you.
There's no video, but other than that, enjoy it. Questions are always welcome, of course.
This is wrong in so many ways...
mvn clean
[...]
Downloading <foo>...
At one particular customer, increasing storage needs require that we add a large file server which should be as fast as possible. In that context, I'm currently evaluating using Debian GNU/kFreeBSD ("Debian," from now on) on ZFS. Not being hampered by a large degree of knowledge on the subject, here's a blog post with things I've learned so far.
For context, the system on which we'll be installing will have 64 gigs of RAM, about two dozen SAS disks connected to a RAID controller of which I'm reasonably sure (though not 100% so) that it supports JBOD mode, and a PCIe-attached solid state storage device of several terabytes. If it turns out the RAID controller doesn't support JBOD mode, I'll probably create as many RAID0 devices as possible and hand those over to ZFS as "hard disks", instead; this wouldn't be an ideal solution, but I don't have much of a choice of hard disk attachment, unfortunately.
That being said, the system on which I'm testing right now is the latest incantation of samba, an HP ProLiant ML115 server. A system with far more modest hardware specifications, it has 2G of RAM (which isn't really enough for ZFS), a single 160G SATA hard disk, and a dual-core AMD processor of about half a decade ago. And oh yes, no SSD. So for evaluating ZFS performance it's not ideal, but for evaluating Debian and ZFS features, it will do.
Anyway, what I've found so far on samba:
partman-zfs (that is, the ZFS support in the installer) works, but could use some improvements.
- It allows me to create a system that boots off a ZFS filesystem, but does not allow me to create nested ZFS filesystems; i.e., if I create a ZFS filesystem for / and one for /home, the /home filesystem won't be a child of the / filesystem, which would be the way you'd usually set this up. Workaround: "zfs rename".
- I can't set random ZFS options at filesystem creation time. I would like to be able to do things like set the "compression" and/or the "dedup" property for certain filesystems, but that isn't possible from the installer. Workaround: create the filesystem layout in partman, and when choosing the "finish partitioning and continue" option, switch to a shell and issue "zfs set" commands to change things. You'll miss the first few files that way, but this shouldn't matter all that much.
Given that I've only got one hard disk in this machine, I can't test whether partman-zfs supports many options for creating vdevs. I'll have to see whether that's the case when the actual server arrives.
- ZFS has a "sharenfs" property that's supposed to transparently and
automatically share filesystems via NFS. However, this isn't supported
in Debian, with the zfs binary issueing a warning to that extent.
Digging a bit deeper in how things work, people
have told me that setting the "sharenfs" property should simply
produce a file "/etc/zfs/exports" that I can pass on to mountd, which
should be restarted after every change to that file. I'm not sure why
the zfs binary doesn't just do that; after all, it's perfectly
possible to hand two
exports
configuration files to the FreeBSDmountd
binary... - Somewhat disappointingly, NFSv4 is not supported on Debian (it is on
vanilla FreeBSD, but a necessary component for NFSv4,
nfsuserd
, isn't packaged). For my environment, this isn't a showstopper, but it would've been nice had this worked. - The "sharesmb" property, which also exists, seems to be not supported at all. But that's okay, the environment in which we're working doesn't need SMB, only NFS.
- ZFS seems to have no soft quota, only hard quota. Workaround, valid for our environment (but not necessarily for everyone's environment): use reservations (plus daily warning mails) in place of soft quota, and place the ZFS quota on the level of what would've been the hard quota on ext4 (might be a little higher than what we use on the current fileserver).
We'll see what else I learn.