Public bug reported:

`lxd init` does not currently set any options for ZFS. It really should
set compression=lz4.

LZ4 compression is so fast that it is almost always a win. The general
upstream ZFS guidance is that unless you are sure most/all of your data
is uncompressible, you should always enable lz4 compression. The *only*
reason that the default in ZFS is still compression=off is for backwards
compatibility.

Unless LXC/LXD require atime updates, you should also set atime=off.
This is the same as "noatime", and like that option, avoids turning
reads into writes.

Basically, replace this:
zfs create POOLNAME/containers
zfs create POOLNAME/images
with this:
zfs create -o compression=lz4 -o atime=off POOLNAME/containers
zfs create -o compression=lz4 -o atime=off POOLNAME/images

Alternatively, you could set it at the pool level, but setting it at
your "containers" & "images" level means you use the same codepath for a
dedicated pool as for using an existing pool.

** Affects: lxd (Ubuntu)
     Importance: Undecided
         Status: New

** Description changed:

  `lxd init` does not currently set any options for ZFS. It really should
  set compression=lz4.
  
  LZ4 compression is so fast that it is almost always a win. The general
  upstream ZFS guidance is that unless you are sure most/all of your data
  is uncompressible, you should always enable lz4 compression. The *only*
  reason that the default in ZFS is still compression=off is for backwards
  compatibility.
  
  Unless LXC/LXD require atime updates, you should also set atime=off.
  This is the same as "noatime", and like that option, avoids turning
  reads into writes.
  
  Basically, replace this:
  zfs create POOLNAME/containers
+ zfs create POOLNAME/images
  with this:
  zfs create -o compression=lz4 -o atime=off POOLNAME/containers
+ zfs create -o compression=lz4 -o atime=off POOLNAME/images
  
  Alternatively, you could set it at the pool level, but setting it at
- your "containers" level means you use the same codepath for a dedicated
- pool as for using an existing pool.
+ your "containers" & "images" level means you use the same codepath for a
+ dedicated pool as for using an existing pool.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1629118

Title:
  lxd init should set compression=lz4 on ZFS

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/lxd/+bug/1629118/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to