16 ms·
ZFS v0.8.2
- kbumsik 7y agoMaybe change the title? It's not ZFS v0.8.2, it's ZFS on Linux v0.8.2.
- organsnyder 7y agoFreeBSD is migrating to ZoL: https://papers.freebsd.org/2019/bsdcan/jude-the_future_of_openzfs_and_freebsd/ https://papers.freebsd.org/2019/bsdcan/jude-the_future_of_op...
- severino 7y agoYes, but even if they won't call it ZoL anymore, it's not ZFS either, right? ZFS itself is a closed source product by Oracle which doesn't share the same codebase.
- vetinari 7y agoThe issue is, that they do share codebase, however old it is, otherwise there would not be the licensing problem.
- kbumsik 7y agoI didn't know that, but this is much bigger news to me. I have been always told that the biggest reason to use FreeBSD is ZFS a long time ago. Things has been changed that much since then.
- vermaden 7y agoOn FreeBSD 11.x and 12.x (and older ones) the currently by default remains the old (not ZFS on Linux) ZFS implementation that has lots of FreeBSD additions like TRIM that was lacked on Linux. FreeBSD forked ZFS on Linux GitHub repo and now its called ZFS on FreeBSD. You can try it already by installing these two ports: - sysutils/zol - sysutils/openzfs-kmod Regards, vermaden
- ksec 7y ago>FreeBSD forked ZFS on Linux GitHub repo and now its called ZFS on FreeBSD. You can try it already by installing these two ports: Correct me if I am wrong, So we now have Oracle ZFS, FreeBSD ZFS, ZFS on Linux and ZFS on FreeBSD?
- JackMcMack 7y agoDamn, I could've used this a few weeks ago. I moved my NAS from bare Ubuntu + ZoL to FreeNAS, and got stuck on a read-only pool because of unsupported features such as userobj_accounting (1). I had to zfs send/receive to external drives and back again to work around this, which was annoying, to say the least. [1] http://open-zfs.org/wiki/Feature_Flags http://open-zfs.org/wiki/Feature_Flags
- danudey 7y agoThis is kind of standard faire though. I did a `zpool upgrade` on my root pool once and broke GRUB's ability to boot my system, since there were features enabled that it didn't understand (wouldn't have hurt anything to ignore, but GRUB wants to play it safe obviously).
- morning_gelato 7y agoI think FreeBSD still offers a more cohesive (and native) out of the box ZFS experience. For example, you do not need to worry about kernel upgrades/DKMS going sideways and breaking ZFS.
- danieldk 7y agoI didn't have any problems on NixOS thus far. Of course, it doesn't use or need DKMS. Also, doing a root on ZFS install was as simple as installing root on brtfs.
- equalunique 7y agoMind sharing what guide(s) you used? ZoL has always seemed like a moving target for me. The nice thing about Nix is it helps to manage problems like those.
- danieldk 7y agoThe wiki page: https://nixos.wiki/wiki/NixOS_on_ZFS https://nixos.wiki/wiki/NixOS_on_ZFS
- rsync 7y ago"FreeBSD is migrating to ZoL" This is correct - and good news - but there should be a reality check involved with regard to timelines ... ZoL code is most likely not going to be part of any 12-RELEASE distributions, which means that: IF you only run -RELEASE in production (a good policy) AND if you do not put a x.0 release into production (historically, a good policy) then you are 2-3 years away from running this ZoL code: http://freebsd.1045724.x6.nabble.com/How-many-quot-production-quot-releases-will-FreeBSD-have-when-the-ZoL-merge-comes-in-td6338360.html#a6338480 http://freebsd.1045724.x6.nabble.com/How-many-quot-productio... As it stands now, our customers want encryption and raw send which we provide to them using ZoL, on 12, in ports form, in a VM. This is how people zfs-send encrypted snapshots to rsync.net. Our base ZFS platform, however, will most likely not run a ZFS version that doesn't come with a -RELEASE version of FreeBSD with a x.0 version number. Not a big deal when everyone is using borg and restic anyway, but I digress...
- agapon 7y agoRegardless, plain ZFS should be used for Oracle ZFS. What we have is OpenZFS and various flavors of it like ZFS-on-Linux, ZFS/illumos, ZFS/FreeBSD. The things are going towards ZoL getting proclaimed as the OpenZFS.
- chousuke 7y agoSeems like there are no RHEL 8 packages yet, but I think this release fixes the build issues, so they'll probably happen soon.
- vetinari 7y agoThey are using CentOS for builds, which was released only this week, and also build on AMI, which doesn't have 8 yet.
- vermaden 7y agoZFS being available since 2005 ... BTRFS is developed since 2007 ... ... and Red Hat decides to reimplement this kind of pooled storage filesystem again with XFS on LVM now called Stratis ... not very bright.
- mkesper 7y agoZFS will probably never able to be integrated into the proper Linux kernel. So trying to implement something without this license fiasco shouldn't really be surprising.
- chousuke 7y agoI think Red Hat ultimately decided btrfs is not going to go anywhere, and ZFS is unfortunately a non-starter for licensing reasons, so from their perspective it really doesn't matter how good it is. I suppose the benefit of using XFS and LVM is that they're both very well understood and widely used technologies. Sometimes incremental evolution is all you need. I'm following the development with interest, because I think the approach has merits. Dave Chinner's talk about teaching XFS how to do snapshots and subvolumes was particularly interesting. The gist of it, as far as I understand, is that XFS can pretty much do those things already, but it needs better integration for performance and usability.
- cmurf 7y agoRed Hat doesn't have developers to support Btrfs, and it takes a lot of support if you're going to depend on constant backporting of fixes and features. All the major work on Btrfs happens upstream and RHEL kernels just aren't anywhere close to that. So to support this in an enterprise context with support plans, you'd have to have many knowledgable Btrfs developer and support staff. Obviously it is going somewhere, upstream is very active, and SUSE uses it by default everywhere both enterprise and openSUSE. And they have the developers to support it. Facebook uses Btrfs quite a lot in production both servers and desktops.
- nilsb 7y agoI contributed a few patches to ZFS on Linux about 8 years ago - at a time when it was still very much in its infancy and panic'd when you looked at it in the wrong way. It's incredible how far they've come. We're using ZFS on Linux on about 120 servers at work and it's rock solid. Snapshots are a life saver in our day-to-day ops.
- pletnes 7y agoWould you know how it compares to btrfs? I found btrfs easy to set up but with hard-to-debug rough edges.
- nilsb 7y agoUnfortunately I don't have much experience with btrfs, however I've found the CLI commands for ZFS to be much more intuitive to use - both in terms of how they're invoked and their output. There's one command for handling storage pools (zpool, https://manpages.debian.org/unstable/zfsutils-linux/zpool.8.en.html https://manpages.debian.org/unstable/zfsutils-linux/zpool.8....), e.g. adding/replacing disks, monitoring I/O utilization, etc. And then there's another command for dealing with ZFS datasets (zfs, https://manpages.debian.org/unstable/zfsutils-linux/zfs.8.en.html https://manpages.debian.org/unstable/zfsutils-linux/zfs.8.en...), e.g. setting properties for datasets (quotas, compression, delegation of privileges to non-root users), managing snapshots. Both CLI commands are scriptable (e.g. -H can be used to suppress human-readable headers and -p turns off "friendly" formatting for numbers) and there are libraries (libzfs, libzpool) which can be used to access their functionality (e.g. for managing snapshots) in your own programs. I don't think I can do ZFS on Linux (or btrfs for that matter) justice in a (short) comment on HN. There's just so much to it (e.g. SSDs as cache/log devices, sending/receiving snapshots over the network, compression, etc.) There are some rough edges, of course. Until a few years ago ZFS on Linux had massive problems with resource management, i.e. it would regularly panic in low-memory situations. These appear to be fixed though - at least I haven't seen any panics in the past two or so years. Due to its license ZFS on Linux will probably never be part of the upstream kernel. We use it on Debian which means we get to compile the ZFS kernel modules on each box when there's a kernel update (with DKMS). Plus there are some pitfalls when using ZFS as your root filesystem (on Debian stretch without systemd services would start before /var/log was mounted). We've had plenty of disk failures which ZFS detected well before SMART did because we run monthly scrubs for our ZFS pools (i.e. basically ZFS verifies its checksums for all the data that's stored in a pool). Recovery is as easy as popping in a new disk and running "zpool replace". Ok, this ended up much longer than I had planned. This has to suffice for now.
- atonse 7y agoAlways admired ZFS since when it came out. The talks by the creators were so enlightening. The license for this is CDDL? Wasn't that the license for the original ZFS, which was the whole reason people had to port it? (apart from kernel sys calls, etc)
- beatgammit 7y agoThey didn't rewrite ZFS for Linux support, they did the syscall stuff in such a way that it's reasonably compatible license-wise. I don't know the specifics, I just know it's a forked codebase that improves compatibility with Linux. FreeBSD moved to this new codebase because it is getting a lot of attention and better support.
- p_l 7y agoThe CDDL code is not derivative of GPL code, and as such doesn't have to be compliant with GPL. There is a glue layer which implements enough of Solaris kernel calls to allow CDDL code to operate, and this layer is dual licensed AFAIK.
- nabla9 7y agoZFS 0.8 has native encryption. Maybe v0.8.2 is close to the point where 0.8 is stable enough to upgrade?
- pizza234 7y agoI can't say about the specific version, but ZFS has a history of great stability, with very few isolated cases of data loss. 0.8 also has trim support :-)
- paulmd 7y agoZFS on BSD has that track record. ZFS on Linux already has had a couple incidents in a relatively short track record. The incident where updating your Ubuntu kernel resulted in data loss probably could not have occurred under the BSD model due to close coupling between the kernel and the filesystem.
- rincebrain 7y agoTo be fair to ZoL, at least the nastiest data loss bug I can think of (hole_birth) was cross-platform, so FBSD, ZoL, illumos, and everyone else in the OpenZFS family was equally affected.
- paulmd 7y agoI was thinking of this one. https://news.ycombinator.com/item?id=16797919 https://news.ycombinator.com/item?id=16797919 The whole downstream/upstream model with different parts of the OS kernel / filesystem / userland moving out of sync with each other through multiple levels of backporting is not a positive one for reliability. FreeBSD is FreeBSD and the buck stops there. Responsibility is too diffuse in the Linux model to get the kind of reliability that FreeBSD has enjoyed. I realize that I'm being a bit of a fuddy-duddy but it really didn't take too long at all for the ZoL team to start making dumb mistakes that cause data loss. Hopefully it's a learning experience and didn't happen again. I myself have a dataset that I can't send from a FreeBSD system to my Ubuntu 16.04/ZoL backup server. It worked at one point, as of about a year ago it no longer does. When the send is finished, the client machine just spins forever. I've tried everything short of formatting and reinstalling the backup server. I tried incremental sends, I tried re-sending the whole thing, I tried killing the pool, updating everything and re-creating the pool, I tried messing with microcode in case it was a wayward regression from Spectre, etc etc. ZoL just won't receive that dataset anymore. Best of luck to the ZoL guys but I guess FreeBSD is working well enough as a data storage layer for me. Too much weird shit going on with ZoL.
- jordanbeiber 7y agoImo ZFS is just awesome, as many things sprung from sun/solaris. I first came in contact with it through solaris, and looking back at that stack with zfs, zones & software defined networking it just seems like such a contemporary fit. Recently I’ve looked a bit at smartos and joyents offering that kind of takes it the way I thought it would take, back in the day, pre-oracle. Been using ZoL for years now, both for private filers but also professionally as of late for things like physical docker/container hosts. Just rock solid!
- trollied 7y agoAgree. Just a shame that Solaris wasn't Open Sourced sooner, as if it'd grown more traction we'd be in a different world now. I think Linux kind of creeped up on them, and in the meantime Oracle got its grubby its on Sun, then embraced Linux itself. Zones are /amazing/.
- jordanbeiber 7y agoYeah, but it has taken like... forever, in a sense. It was in many ways quite the head start they had. DTrace for example, that stuff is proper. Great to see whats happening with BPF on Linux these days. I guess it speaks to the engineering efforts behind it all. Not an easy feat to integrate or bolt on. And not to mention the inertia of eco-systems of tooling on a well established platform such as Linux. Interesting times ahead and great work, my favorite community! :)
- pjmlp 7y agoOracle only got its grubby on Sun, because no one else saw any value doing a counter offer, including Google after doing their Java curved ball to Sun's licensing.
- Lutzb 7y agoIBM actually offered $7b, but was outbid by Oracle back then.
- 7y ago
- rkwasny 7y agoAnyone from Cannonical here? When can we get official backports for LTS version of Ubuntu? Cannot really upgrade servers to 19.10
- pizza234 7y agoYou don't strictly need a backport (which I think will never happen, as the ZFS packages are locked to v0.7 on 18.04) - there's a PPA for it: https://launchpad.net/~jonathonf/+archive/ubuntu/zfs https://launchpad.net/~jonathonf/+archive/ubuntu/zfs.
- danudey 7y agoNote that this PPA doesn't have 0.8.2 yet!
- aidenn0 7y agoStill no block-pointer rewrite? :P
- nialv7 7y agoNo, but it's becoming less relevant now. Certain things thought to require bp rewrite (e.g. vdev removal) are now implemented without it.
- aidenn0 7y agoI'd like to see background dedupe. Dedupe is not useful in many real-world situations because of ARC space requirements, but a COW filesystem ought to be able to find duplicated blocks and rewrite pointers at some point after the data is written; after all snapshots are a very specific type of deduplication, so most of the machinery is there to handle it. I have a data store (nightly build archive) that gets almost 3x reduction in space used with dedupe, but the performance hit is just too big for us to use it.
- rincebrain 7y agoThey've implemented subsets of the general bprewrite functionality for things like vdev evacuation, but it does still require that functionality, they didn't come up with a clever way to avoid needing it.