Weekly status for the week of 6th February to 12th February.
Introduction
This past week we have landed some of the prerequisite changes for the forthcoming ZFS block mode feature. Additionally LXD can now use the newer and cleaner kernel mount API for passing mounts into containers. And there were some changes to the soon-to-be-released instance placement scriptlet API in order to allow project name to be passed to the scriptlet. Finally, support for newer BTRFS tooling has been added after upstream changes to the tool’s output format.
Additionally @stgraber has also started a new video series on LXD Instance Devices; the first of which is covering the disk
device type:
https://www.youtube.com/watch?v=JhRw2OYTgtg
Job openings
Canonical Ltd. strengthens its investment into LXD and is looking at building multiple squads under the technical leadership of @stgraber.
As such, we are looking for first line managers (highly technical) and individual contributors to grow the team and pursue our efforts around scalability and clustering.
All positions are 100% remote with some travel for internal events and conferences.
For more info please see LXD related openings at Canonical Ltd (2022-2023)
LXD
Improvements:
- Updated the instance placement scriptlet feature to change the
request
argument to a new data type that includesreason
andproject
fields. Previously it was not possible to ascertain the project for the new instance. - Use newer kernel mount API for moving a mount into a container.
- Use volume config when renaming instances and custom volumes. This is required for the forthcoming ZFS block mode feature so the underlying storage driver will be able to generate the underlying volume names correctly.
- Improve user facing error when checking if a volume exists on a cluster member target.
- Extended optimized instance transfer documentation to provide more detail on how it works.
Bug fixes:
- Further fixes to support
btrfs-progs
>= 6.0 for BTRFS storage pools. - Use volume config from backup index file when restoring instances/volumes from backups. This will allow restores of volumes that require a volume config in order to mount the volume (in order to unpack the backup into it).
- Fixed bug in
--destination-target
flag when copying/moving storage volumes between remotes. - Removed needless semi-colons in queries, which works around a temporary regression in dqlite.
LXC
Bug fixes:
- Fixed
strlcat
return value checks.
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.
https://www.youtube.com/lxd-videos
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 to report this week
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.
- 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
- doc/storage: explain how optimized instance transfer works
- Instance: Updates instance_placement scriptlet function to accept both project and reason as part of
request
- Storage: Only check for minimum number of columns in
btrfs qgroup show
command - Small doc fixes
- lxd: hotplug mounts
- Terminology fixes
- storage: Various changes
- Fix usage of --destination-server flag when copying/moving storage volumes between remotes
- Makefile: Immediately fail on lint errors
- lxd: User friendly error for missing volume.
- lxd/db: Remove needless semi-colons in queries
LXC
LXCFS
- Nothing to report this week
Distrobuilder
- Nothing to report this week
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
- Nothing to report this week
Snap
- Nothing to report this week