Weekly status for the week of the 7th October to the 13th of October.
Introduction
This past week the focus has been on moving parts of LXD into their own Go packages so that they can be accessible from both the existing container implementation and the future virtual machine instance type. The storage layer is also being reworked to support VMs.
LXD now supports creating storage pools on a Ceph erasure encoded pool. This is achieved using the new config parameter ceph.osd.data_pool_name
. Also Ceph related, container restoration when using projects with Ceph now works.
Support for compressing container backup exports was added to LXD. You are now able to specify the compression algorithm that will be used to compress the exported backup with the --compression
flag. Also backup related, a bug was fixed related to backup expiry not working.
Several other reliability improvements have been made relating to storage I/O limits, cluster database upgrades and IP filtering when launching containers concurrently.
On the LXC side, several documentation improvements have been added.
LXCFS has seen an improvement to the way CPUs are counted when using CPU sets in LXC.
Distrobuilder has also seen several documentation additions this week and Centos 8 and Linux Mint images are now available from our image server.
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: https://github.com/lxc/lxd/labels/Easy
You can also find a slightly longer, more detailed list here: LXD Contribution
FOSDEM 2020 - containers devroom
We will once again be running the containers devroom at the upcoming FOSDEM conference in Brussels, Belgium. This year it’s going to be over the weekend of the 1st and 2nd of February.
The detailed call for papers can be found here: FOSDEM 2020 containers devroom: Call for papers
Upcoming events
- Open Source Summit - Europe - Lyon
- Linux Security Summit - Europe - Lyon
- FOSDEM
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.
- Virtual machine support
- Rework of internal LXD storage handling
- Distrobuilder 1.0 release
- 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
- Move backup to separate package
- Allow local direct /internal access during startup
- test: Adds host-side MTU veth checks
- lxd/device/disk: Improvements in disk limits
- Fix backup expiry
- Implements support for
--compression
inlxc export
- Fix container restore with projects in Ceph
- Rsync package
- lxd/storage/ceph: Implement --data-pool argument.
- doc: Add commit structure to contributing.md
- Fix cluster upgrade deadlocks
- lxd/storage/ceph: Fix to work on older releases
- lxd/device/nic: Pass --concurrent to ebtables
- fix debugging.md rendering
- lxd/sys: Enforce directory permissions
- lxd/daemon: Bump NOFILE to max on startup
LXC
- doc: Add more info about ‘lxc.start.order’
- Send successful output messages to log info instead of error
- Update Japanese lxc.container.conf(5)
- Bad sgml/man translation
- Update lxc.containers.conf(5) in Japanese
LXCFS
Distrobuilder
- doc: Update examples
- sources: Support CentOS DVD
- sources: Fix CentOS checksum file
- doc: Mention creating a container with LXC
- Update getChecksum function
- doc: Add schema.yaml
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
- LXC 3.0.4 is now included in the Ubuntu 19.10 archive.
Snap
- Cherry-picked upstream LXD fixes
- Added snap version in startup message
- Re-ordered path creation during startup
- Setup mount propagation logic on startup to workaround zfs issues
- Improved error messages during early startup failures
- Added support for custom vimrc to built-in vim