LXD 3.2 has been released

Introduction

This month’s LXD release comes with a lot of bugfixes and performance improvements, especially for those using LXD clustering.

Feature wise, this release has a lot of improvements for those using the proxy device type first introduced in LXD 3.0, foundation work for image download improvements in nested environments and closes a big gap in our storage story by allowing containers to be copied and moved between pools.

The changes in this release include

Features:

  • Added a new API to /dev/lxd allowing for direct download of public
    and cached images from the host (requires security.devlxd.images)
  • Added support for copying and moving containers between storage pools
  • Big improvements to the proxy device:
    • Unix socket support (including OOB packets)
    • UDP support
    • Port ranges for UDP and TCP
  • New simplified cluster join API

Bugfixes:

  • client: Enable TCP KeepAlive
  • doc: Add links to REST API
  • doc: Fix typo in api-extensions.md
  • i18n: Update translations from weblate
  • i18n: Update translation templates
  • lxc: Properly handle --target in copy and move
  • lxc/{import,export}: Deal with snap paths
  • lxc/move: Support config and profile overrides
  • lxd: Cleanup logging
  • lxd: Drop manual GC calls
  • lxd: Fix some format strings
  • lxd: Improve error messages
  • lxd/cluster: Broadcast profile changes to other cluster nodes
  • lxd/cluster: Fix bad database query when updating storage pools
  • lxd/cluster: Improve error on bad target
  • lxd/cluster: Improve errors and docs for member-specific config keys
  • lxd/cluster: Redirect container/snapshost publish to the relevant member
  • lxd/cluster: Serialize reads to the cluster database
  • lxd/containers: Assume device node for older NVIDIA GPUs
  • lxd/containers: Don’t update MAAS for snapshots
  • lxd/containers: Fix fd leak in metadata
  • lxd/containers: Manually release the liblxc structs
  • lxd/forkmount: Ignore ENOENT and EINVAL on umount2()
  • lxd/maas: Allow starting with MAAS offline
  • lxd/maas: Make errors more readable
  • lxd/migrate: Remove debug residuals
  • lxd/migration: Don’t pass -vP to a hidden rsync
  • lxd/nsexec: Prevent fd leak
  • lxd/nsexec: Simplify attach_userns()
  • lxd/storage/lvm: Fix mixup between pool name and VG name
  • lxd/storage/lvm: Rename default thinpool to LXDThinPool
  • lxd/storage/zfs: Improve defaults
  • lxc-to-lxd: Respect LXD_SOCKET environment variable
  • lxd-p2c: Add rsync version check
  • lxd-p2c: Allow overriding rsync args
  • lxd-p2c: Better report rsync errors
  • lxd-p2c: Delete containers on failure
  • lxd-p2c: Handle target URL smarter
  • lxd-p2c: Ignore missing arg errors
  • lxd-p2c: Send rsync output to stderr
  • shared: Add abstract unix socket helpers
  • shared/eagain: Handle EINTR
  • shared/idmap: Allow uidmaps to be parsed from alternate roots
  • tests: Fix broken alternate TLS server cert in integration tests
  • tests: Reduce ceph pg_num down to 1

Try it for yourself

This new LXD release is already available for you to try on our demo service.

Downloads

The release tarballs can be found on our download page.

4 Likes