OpenZFS 2.0?

Hi,

Yes, we plan to include it in Proxmox VE 6.4, which is due in the first half of 2021, if I had to extrapolate from past releases.
At least if no general issues comes up and the upgrade path is straight forward. But even though it's a big increase of version number, it's a rather sensible sized release code-wise, so it should not pose bigger problems (knocks wood).

It'll trickle into the package repositories a bit earlier after passing through testing here (2021/Q1), we'll post an update in the forum once available.
 
Last edited:
Thank you!

So keeping risks in mind, there is no point in using Debian package and better wait for yours package release, right?
 
So keeping risks in mind, there is no point in using Debian package and better wait for yours package release, right?

Yes, that'd ensure a better fit of kernel and user space packages and I'd recommend waiting on updates from our repositories.

(as edited in my original reply, initial updates will be available earlier than Proxmox VE 6.4 release in the test and no-subscription repos)
 
Yes, that'd ensure a better fit of kernel and user space packages and I'd recommend waiting on updates from our repositories.

(as edited in my original reply, initial updates will be available earlier than Proxmox VE 6.4 release in the test and no-subscription repos)
How about those of us using the non-subscription repository with root on ZFS currently? Should we be on the lookout and not reflexively install them too early.
 
How about those of us using the non-subscription repository with root on ZFS currently? Should we be on the lookout and not reflexively install them too early.

On my workstation I compile kernel and zfs myself and from 0.6.4 to 2.0 never had any problems.

zfs is very stable, no reason to not upgrade.
 
On my workstation I compile kernel and zfs myself and from 0.6.4 to 2.0 never had any problems.

zfs is very stable, no reason to not upgrade.
So I am clear, you boot off your ZFS drive and upgraded without issue?
 
You can switch back just fine, the updates are moved between test, no-subscription and enterprise repositories in a cascading manner, so yes, switching back to no-subscription will work just fine.

As general information, possibly helpful for other: if there's only a small set of package one wants to update you could even do something like
  1. setup to test repo
  2. run apt update
  3. run apt install PACKAGE which will pull in that package and dependencies. In this case the following should work:
    apt install pve-kernel-5.4 zfsutils-linux
  4. disable the test repo again
 
  • Like
Reactions: x86txt
You can switch back just fine, the updates are moved between test, no-subscription and enterprise repositories in a cascading manner, so yes, switching back to no-subscription will work just fine.

As general information, possibly helpful for other: if there's only a small set of package one wants to update you could even do something like
  1. setup to test repo
  2. run apt update
  3. run apt install PACKAGE which will pull in that package and dependencies. In this case the following should work:
    apt install pve-kernel-5.4 zfsutils-linux
  4. disable the test repo again
Very cool, thanks for the quick reply!
 
It looks like zfs 2.0.3 in now in the stable proxmox repo :)
Yes, it is available in no-subscription since about an hour (which, while normally pretty stable, is not intended for production systems).

Is there anything published about this upgrade ?
No, not really (besides package changelog). The update should be unproblematic, all working before should work after.
We use it since weeks on quite a few test systems, workstations and also some production systems (not all run with ZFS, so...).
The few small things we found got ironed out, and as you can see ZFS is not packaged in 2.0 but the third stable release of the 2.0.x series, so also there some smaller stuff got fixed.

I'd wait with doing zpool upgrade to relevant pools for a bit, to ensure one can still boot an older kernel with ZFS 0.8.x, if something specific to their setup breaks with this update (not that that is expected).

Or what information would you like to be seen published?
 
Last edited:
Yay persistent l2arc.

Time to buy some more nvme drives.
 
Last edited:
  • Like
Reactions: Feni
Just upgraded on a small cluster. One of my nodes is a ZFS boot and storage with a raid-1 mirror and the other uses ZFS for storage. no issues with either on reboot. Will report back if anything goes awry.

EDIT: So we need to follow up the proxmox GUI update with a CLI zfs upgrade to fully be using 2.0.3?

EDIT2: after doing some reading it seems we could set zpool upgrade -o compatibility=zol-0.8 pool vdev... to be safe or zpool upgrade -o compatibility=openzfs-2.0-linux pool vdev... to go all in for linux?

https://github.com/openzfs/zfs/commit/658fb8020f0501435516baeea7004575d640649b
 
Last edited:
EDIT: So we need to follow up the proxmox GUI update with a CLI zfs upgrade to fully be using 2.0.3?
First note, I wrote the wrong thing, it's actually zpool upgrade (edited my post above to avoid misguiding people).
Then note that just running that command without a pool ID or the -a (all pools) argument does not change anything, it only lists if there are outstanding "feature upgrades".

And yes, the ZFS 2.0 release introduces a few new pool features, to be specific they are:
Code:
      redaction_bookmarks
      redacted_datasets
      bookmark_written
      log_spacemap
      livelist
      device_rebuild
      zstd_compress

Check the zfs-features man page or the (safe to run) zpool upgrade -v command for details about those features.

Basically, new features or changes have to be activated explicitly, after that activation an older ZFS version won't be able to mount/use that pool as it does not understand that feature. Upgrades can normally not be reversed, i.e., once a pool is upgraded there's no way back.

NOTE: If you boot from a ZFS root pool and use GRUB legacy boot (not UEFI+systemd-boot) then you must NOT upgrade to the 2.0 feature set. So avoid executing a zpool upgrade on the rpool in that case, that may break booting!

To upgrade all pools to all current features you can use:
Bash:
# first check current state, are there any upgrades:
zpool upgrade

# now upgrade all pools
zpool upgrade -a

# we could also update only a specific pool, here called TANK
zpool upgrade TANK
 
EDIT2: after doing some reading it seems we could set zpool upgrade -o compatibility=zol-0.8 pool vdev... to be safe or zpool upgrade -o compatibility=openzfs-2.0-linux pool vdev... to go all in for linux?
That patch is only applied to the master development branch, so not yet available in the 2.0 stable release, FWICT.
 
  • Like
Reactions: vesalius
man zpool-features mentions under zstd-compress:

Booting off of zstd-compressed root pools is not yet supported.

Is this currently accurate / applicable? Do you have any particular guidance on what we should do about our root pools?
 
man zpool-features mentions under zstd-compress:

Booting off of zstd-compressed root pools is not yet supported.

Is this currently accurate / applicable? Do you have any particular guidance on what we should do about our root pools?

You are probably not using zstd but lz4 instead.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!