Stories
Slash Boxes
Comments

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 15 submissions in the queue.
posted by CoolHand on Tuesday September 11 2018, @03:29PM   Printer-friendly
from the zed-eff-ess-or-zee-eff-ess dept.

John Paul Wohlscheid over at It's FOSS takes a look at the ZFS file system and its capabilities. He mainly covers OpenZFS which is the fork made since Oracle bought and shut down Solaris which was the original host of ZFS. It features pooled storage with RAID-like capabilities, copy-on-write with snapshots, data integrity verification and automatic repair, and it can handle files up to 16 exabytes in size, with file systems of up to 256 quadrillion zettabytes in size should you have enough electricity to pull that off. Because it started development under a deliberately incompatible license, ZFS cannot be directly integrated in Linux. However, several distros work around that and provide packages for it. It has been ported to FreeBSD since 2008.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by pendorbound on Tuesday September 11 2018, @07:46PM (6 children)

    by pendorbound (2688) on Tuesday September 11 2018, @07:46PM (#733277) Homepage

    FWIW, I started with ZFS on FreeBSD in 2008 and jumped (back) to Gentoo in about 2010. I've been running ZFS for rootfs and storage on Gentoo since then over a variety of kernel & userland upgrades. Linux has feature parity with the BSD implementation for ZFS. It's been too long since I've used it on BSD (and too many hardware upgrades) to really compare them on a performance basis.

    Kernel/system updates on Gentoo haven't always been the smoothest with ZFS. Unquestionably that's Gentoo's fault. Having your rootfs driver in an initramfs just complicates that & excitement ensues sometimes. Grub had some issues originally where it failed to read valid pools that the ZFS drivers in both Linux & BSD could import successfully. I submitted a few Grub patches around 2013 that corrected those issues, and I think those have been integrated in most distributions at this point. If you wanted to use ZFS for large storage arrays and used ext4 or something in mainline kernel for rootfs, that would all but remove the upgrade and bootloader issues and still give you the benefits of ZFS for data. I like being able to snapshot the OS drive though...

    I suspect that running ZFS on Ubuntu would make the upgrade story a bit less fraught with excitement, but I have no experience with Ubuntu's implementation at this point. Overall though, ZFS is completely solid on Linux for day to day use. I also run with ZFS on top of LUKS to get encrypted storage which works flawlessly.

    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 1) by pTamok on Tuesday September 11 2018, @08:29PM

    by pTamok (3042) on Tuesday September 11 2018, @08:29PM (#733292)

    If you wanted to use ZFS for large storage arrays and used ext4 or something in mainline kernel for rootfs, that would all but remove the upgrade and bootloader issues and still give you the benefits of ZFS for data. I like being able to snapshot the OS drive though...

    If you don't mind something slightly funky, also without an fsck, use NILFS2 [wikipedia.org] for your rootfs. So long as you remember to ensure the NILFS2 module is included in GRUB2, it works fine. You probably will need to install via chrooting though, as I don't know of any installers that support NILFS2 natively.

    NILFS supports continuous snapshotting. In addition to versioning capability of the entire file system, users can even restore files mistakenly overwritten or destroyed just a few seconds ago. Since NILFS can keep consistency like conventional LFS, it achieves quick recovery after system crashes.

    NILFS creates a number of checkpoints every few seconds or per synchronous write basis (unless there is no change). Users can select significant versions among continuously created checkpoints, and can change them into snapshots which will be preserved until they are changed back to checkpoints.

    There is no limit on the number of snapshots until the volume gets full. Each snapshot is mountable as a read-only file system. It is mountable concurrently with a writable mount and other snapshots, and this feature is convenient to make consistent backups during use.

    Snapshot administration is easy and quickly performable. NILFS will make snapshotting or versioning of the POSIX filesystem much familiar to you. The possible use of NILFS includes, versioning, tamper detection, SOX compliance logging, and so forth. It can serve as an alternative filesystem for Linux desktop environment, or as a basis of advanced storage appliances.

    Alternatively, run your rootfs on its own LVM volume, sized to allow LVM snapshotting.

  • (Score: 1) by soylentnewsinator on Tuesday September 11 2018, @10:35PM (2 children)

    by soylentnewsinator (7102) on Tuesday September 11 2018, @10:35PM (#733374)

    I finally had to create an account. Gentoo was my primary OS back in 2004-2007. I later transitioned to Ubuntu as I found fewer things broke. (I'm not sure if that's the nature of a rolling release distro versus 6 months or 2 years depending on if you used LTS.) On and off, I've been using FreeBSD for various servers until a couple of years ago where I transitioned all my servers to FreeBSD due to ZFS support (and partially jails).

    I see that Gentoo finally updated their web design. I recall they held a contest over 10 years ago, and despite a winner being selected, they cancelled the idea due to 'reasons'. That was a big red flag to me if their management would hold the contest and then change their mind as soon as a winner was selected.

    Since I left Gentoo around the time you started using it, according to your experience, has the stability noticeably increased? Is there a recommendation of how frequently to upgrade if there's no security reason to do so? Is there a decent tool to update config files to new versions? (That hurt me numerous times in the past.) How often do packages break on you?

    • (Score: 2) by hendrikboom on Wednesday September 12 2018, @12:53PM

      by hendrikboom (1125) Subscriber Badge on Wednesday September 12 2018, @12:53PM (#733574) Homepage Journal

      Breakage of config files? I've often thought config files should be checked into revision control with a vendor branch and a local branch, and that the installer should set this up. After installation it's too late, because the installer has already modified them. Maybe also an installer branch, intermediate between these two.

    • (Score: 2) by pendorbound on Wednesday September 12 2018, @03:10PM

      by pendorbound (2688) on Wednesday September 12 2018, @03:10PM (#733641) Homepage

      I wouldn't say Gentoo has "improved" much in the intervening time. It's definitely the nature of the rolling release beast. Benefit is bleeding edge latest packages. Draw back is the blood on the edge is frequently your own...

      The recommendation for upgrade frequency is, "early and often..."

      The thing about updating Gentoo is it's uncomfortable, but the longer you go between updates, the more it hurts. If you hold off for security related only updates, there's a good chance major chunks of core system will have changed their structure since your last update. You'll have multiple conflicting packages you need to upgrade, big filesystem layout or config format changes, and your life's gonna suck for the next couple of days. If you're lucky, you can manually set version masks to upgrade in stages (assuming the intervening versions are still in the Portage tree). If not, you're manually fixing stuff, forcing versions to get around slot conflicts, etc. If you suck it up and do the updates regularly, you usually get the benefit of migration scripts to fix that stuff. The scripts are seldom maintained for more than a few version updates though. If you wait too long, you're on the wrong side of the gulf between the old & new way with no migration process to automate moving across.

      It's been a while since I've left myself with an unbootable system & had to shove a recovery disc in, but it's happened... Especially with ZFS root, if you munge the ZFS driver in your initramfs, you're cooked. Keeping your previous kernel / initramfs images as alternates in GRUB is usually enough to get back to a usable system and clean up. Usually...

      Configuration file changes are handled with dispatch-conf which is so-so. It gives you a diff of your original versus the proposed changes. The changes are always clobber-jobs. They don't attempt to apply only changes on top of your customizations, just replace whole files. Usually I end up either ignoring the changes and keeping my own or dropping into an editor (which dispatch-conf will facilitate) and hand-merge the changes. I'd love them to use something like Augeas for config migrations, but....

      To be honest, I wouldn't use Gentoo with Portage in production. It's okay for my home stuff. Having latest versions of stuff that I don't have to `./configure && make && make install` is handy. For enterprise level reliability, I wouldn't recommend Gentoo/Portage. The only case I could see using Gentoo "for real" would be in an immutable VM situation where "upgrades" mean canning a new gold template and individualizing it into your various apps using Puppet or something. In that case, I wouldn't even include Portage or the portage tree. Just a super cut-down Linux install with the bare minimum for the app.

  • (Score: 2) by hendrikboom on Wednesday September 12 2018, @01:00PM (1 child)

    by hendrikboom (1125) Subscriber Badge on Wednesday September 12 2018, @01:00PM (#733578) Homepage Journal

    Just wondering: How much RAM did you have on that BSD system using ZFS way back in 2008? Machines were a lot smaller then.

    • (Score: 2) by pendorbound on Wednesday September 12 2018, @03:15PM

      by pendorbound (2688) on Wednesday September 12 2018, @03:15PM (#733647) Homepage

      My 2008 dedupe near-disaster happened with 8GB of RAM (max the motherboard could handle...) for a 3TB pool (4x750GB, RAIDZ-1), SATA attached WD consumer class drives.

      Two ebay surplus MB updates later and a ton of "pulled" DIMMs on the cheap, and I'm at 96GB for 43TB total storage across 4 pools and 18 spindles of various makes and models. Still no dedupe enabled though...