Weekly status #240


Weekly status for the week of the 14th March to the 20th March.

Introduction

This past week we have been focussing on finishing our roadmap items and preparing for the LXD 5.0 LTS release.

LXD

Improvements:

  • The ipv{n}.routes* settings on bridged NICs are now taken into account when using security.ipv{n}_filtering so that packets from source addresses within the routes delegated to the NIC are allowed (where previously they were not).
  • Extend the output of the lxc network info command to show more info about the specific network (if available).
  • Add --target-project flag to lxc image copy to allow copying an image into a specific project.
  • Add compact table format to lxc.
  • Switching to UUID based cloud-init instance-id that changes when an instance is renamed, when an instance NIC is renamed or the cloud-init config from the instance’s config changes to allow cloud-init to re-apply on next start.
  • Prevent concurrent snapshots taking place and temporarily skip auto expiring a snapshot if one is already taking place (to avoid go routine build ups if the underlying storage subsystem is slow/blocked).
  • Use random authentication credentials by default for the local SSH SFTP listener used with lxc file mount when not using sshfs mode. Also support the ability to specify a specific username to use.
  • Don’t mask lack of cluster member heartbeat response in lxc cluster ls output in certain scenarios.
  • Introduce the concept of device pre-start checks and run them before starting any instance device to avoid having to revert all successfully started devices (a potentially expensive operation) should one device fail its pre-start check .

Bug fixes:

  • Prevent white space in storage pool names.
  • Fix SFTP connection authentication cookie usage.
  • Create instance log directory if needed before starting forkfile to allow file operations on an instance that has never been started previously.
  • Fixed an issue that prevented forkfile from starting when the combined project and instance name was long enough to mean that the forkfile unix socket path would be over 108 characters long.
  • Ensure that the HTTP upgrade headers in responses used for SFTP and DQLITE connections comply fully with the HTTP standard to allow easier third party integration.
  • Only enable VM io_uring support on kernels >= 5.13.0 as before that io_uring support in the kernel was not sufficient for use by LXD (problems with many storage drivers in stacked storage layer environments).

Dqlite (Go bindings)

Improvements:

  • Export SnapshotParams.

YouTube videos

The LXD team is running a YouTube channel with live streams covering LXD releases and weekly videos on different aspects of LXD. You may want to give it a watch and/or subscribe for more content in the coming weeks.

Contribute to LXD

Ever wanted to contribute to LXD but not sure where to start?
We’ve recently gone through some effort to properly tag issues suitable for new contributors on Github: Easy issues for new contributors

Upcoming events

  • Nothing planned currently.

Ongoing projects

The list below is feature or refactoring work which will span several weeks/months and can’t be tied directly to a single Github issue or pull request.

  • Prometheus & grafana integration with the LXD charm
  • Various kernel work
  • Stable release work for LXC, LXCFS and LXD

Upstream changes

The items listed below are highlights of the work which happened upstream over the past week and which will be included in the next release.

LXD

LXC

  • Nothing to report this week

LXCFS

  • Nothing to report this week

Distrobuilder

  • Nothing to report this week

Dqlite (RAFT library)

  • Nothing to report this week

Dqlite (database)

  • Nothing to report this week

Dqlite (Go bindings)

LXD Charm

  • Nothing to report this week

Distribution work

This section is used to track the work done in downstream Linux distributions to ship the latest LXC, LXD and LXCFS as well as work to get various software to work properly inside containers.

Ubuntu

  • Uploaded LXCFS 5.0.0 to Ubuntu 22.04

Snap

  • sshfs: Handling improvement
  • hooks: Better cleanup of LXCFS
  • lxd: Cherry-pick upstream bugfixes
1 Like