Friday August 08, at 16:57
Subject: A month of ZFS under Linux
Keywords:
Linux, Technical, ZFS
Posted by: Sean Reifschneider
Related entries:ZFS Under Linux: A User Report by Sean Reifschneider, Saturday July 05, at 15:00
Putting it all together: The Ultimate Storage Box by Sean Reifschneider, Monday July 07, at 02:44
It's been a month since I set up and started heavily using ZFS under
Linux on my storage box, It's been working quite well. So well in fact
that I set up a new machine to migrate 3TB worth of ZFS snapshots from an
OpenSolaris system that we've been having problems with. That didn't go at
all well. Read on for more details.
The storage box has been running without any problems. I have around
10 ZFS file-systems (under one pool) which I use for backups. Those pools
have snapshots created every day on them, and old snapshots deleted after 7
days for daily snapshots, 6 weeks for weekly, etc... So I've only really
hit the daily removals so far. Also note that every one of those snapshots
I'm creating a clone of, which is the only way you can access the snapshots
under Linux. There is no ".zfs" directory.
I also have another "storage" file-system which stores just a whole
pile of other information, like copies of my photographs, misc data that we
don't really need on our laptops, etc...
Every Sunday I run a "zpool scrub" on the pool. It's taking just
under 4 hours to run with 2.5TB used on 14 500GB drives.
The storage server has really been quite solid. The only problem I've
had was related to a power outage. We had a brief power outage (which we
often do at our house), and it seems that somehow that made it past the UPS
the system was on and freaked out either the drives or the SATA port
multiplier. Once I did a reboot of the external SATA enclosure and the
server, everything came back up and was happy. A "zpool scrub" resolved
some checksum issues and everything was happy.
So I decided to set up a 8x500GB system to mirror this and copy over a
bunch of snapshots from an existing backup server at our facility. That
server is a system that was use for backing up the client machines that we
host on the hosting branch of our company.
I was using "zfs send" and "zfs recv" to copy the existing data,
around 3TB worth of it, from the existing system to the new system. Things
were going along quite smoothly for a day or two, and I managed to copy
over around 2TB of the data...
Then, the zfs-fuse daemon died during one of the sends. Possibly in
relation to me attempting to kill a "zfs send" that was in progress...
Something that's never been a problem with the OpenSolaris systems before.
It just goes down-hill from there... I restarted zfs-fuse, but the
majority of the devices were showing up as being corrupted, I think one or
two were showing ONLINE and the others were just toast. The "zpool status"
message said "time to recover from backups"...
So something about how zfs-fuse was writing the data resulted in the
majority of the volumes being trashed. I was running a pair of 4-drive
RAID-Z1 volumes, FYI.
So, there definitely seems to be an issue related to zfs send/recv,
and the failure mode is pretty dramatic.
I checked to see if there are any newer versions of zfs-fuse
available, because when I started testing the storage box there was recent
activity. Sadly, that recent activity is still the most recent activity,
so this problem definitely hasn't been fixed in a newer release.
So, I've had some mixed results. The more typical use case is
working very well, but my attempted deployment on another machine just
completely fell over. Of course, you always should have backups, even if
you aren't playing with fairly experimental technology, so this failure
mode may not be a big deal in real use. I'm leaving my storage server as
is, but am definitely making sure I have backups. :-)
(Post Reply)
(Post Reply)
| Comment |
Steve Webb Subject: I'd like to hear more |
I'm looking at running a ZFS filesystem based on a large number of drives all software-raided using ZFS on top and would like to hear more about your ZFS experiences.
- Steve
| Comment |
Steve Webb Subject: ZFS on OpenSolaris versus Linux |
Hey. So, I'm venturing into ZFS for the first time now and I've settled on using ZFS on OpenSolaris instead of using it on top of Linux purely for the warm/fuzzy feeling that running a Sun-made FS on OpenSolaris would be more stable than the Linux version of it.
So-far, it's nice and easy to administer and I'm testing it to see if the performance is same/better/worse than ReiserFS on Linux for the "lots of small files" case. I'll chime-in when I have more benchmark info.
Q: Any comments on stability of ZFS on linux versus OpenSolaris Sean?
- Steve
| Comment |
Author:
Sean Reifschneider Subject: Open Solaris versus Linux ZFS stability. |
It's really hard to say about the reliability of ZFS under OpenSolaris
versus Linux. I have much more experience with it under Nexenta, the
OpenSolaris distro I use, than under Linux. But I wouldn't really call the
OpenSolaris side stable. I've had a lot of problems with it. It's
certainly not been as stable as ext3 under Linux, for example.
On the other hand, while my storage server has been really stable
under Linux+FUSE+ZFS, the other server I was trying to set up totally fell
over and lost all the data on the ZFS. That's never happened under
OpenSolaris.
So, I don't have a lot of data, but it seems like the average case is
better under Linux, but the worst case is much worse.
Sean
| Comment |
Larry Hastings Subject: Encrypted ZFS? |
I'm following in your footsteps and installing my machine using the Ubuntu alternate installer so I can have an encrypted root partition. But how did you create your encrypted ZFS RAIDZ2? If I use the Ubuntu alternate installer to create all the ZFS partitions as encrypted partitions, I have to type in a password for each one. It boggles my mind to consider having to type in fifteen passwords each time I reboot.
| Comment |
Author:
Sean Reifschneider Subject: I am typing it 15 times... |
I am typing my passphrase 15 times. It's not like I'm rebooting very frequently, so it's not a big deal... However, the cryptsetup command can take the key via the --key-file option. Obviously, if you are saving the key on your disc, you'd better make sure that disc is encrypted. So, you could reasonably have the key-file saved to your encrypted root, and use that to automate the boot process. I just haven't felt the need yet.
Sean