Weekly status for the week of the 1st of June to the 7th of June.
Introduction
The highlight of the past week was the release of LXD 4.2 which is the second feature release since our 4.0 LTS series.
LXD
On the LXD side, this past week has seen the addition of a new feature to allow LXD to make use of the VLAN filtering options available in both Linux native bridges and Openvswitch bridges.
When using bridged
NIC types, you can now specify that the NIC port belongs to an untagged VLAN using vlan=<VLAN ID>
and/or specify that the NIC port belongs to one or more tagged VLANs using vlan.tagged=<VLAN ID list>
.
e.g.
lxc config device set c1 eth0 vlan=2 vlan.tagged=3,4094
You can also use a special value of “none” with the vlan
option, which will prevent any untagged frames from being transmitted.
We have also added bridge and bond information to the /1.0/networks/NAME/state
route in the API.
An issue with Openvswitch ports not being cleanly removed from an Openvswitch bridge has also been fixed. And we have fixed an issue with veth device cleanup not occurring when a container fails to start properly.
On the storage front, the mount options parsing used when mounting LVM and Ceph volumes have been unified, and in doing so an issue that prevented the volume’s block.mount_options
setting from being applied for LVM volumes has been fixed.
On the VM front, we have added a GPU and spice socket to the Qemu config as part of laying the groundwork for supporting display output.
LXCFS
Improvements were added to LXCFS to better emulate /proc/stat
when using various CPU profiles.
There were also several memory leaks fixed and a general code cleanup.
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
- Open Source Summit - North America
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
- Distrobuilder Windows support
- 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
- use the coreos fork of boltdb
- NIC: Bridged VLAN support
- Fix regression in GetImageFromAnyProject
- doc/security: Adds notes about IPv6 router advertisement security
- NIC: Bridged device fix openvswitch port leak
- NIC: Bridged Openvswitch VLAN support
- MAAS tweaks
- Remove incorrect statement about supported network devices with virtual machines
- lxd/rbac: Fix auth for non-RBAC trusted clients
- global: Add riscv64 to build tags
- Stop using Driver.SetContextTimeout() which is a no-op
- Export bridge/bond details
- Storage: Unifies LVM and Ceph filesystem mount option logic
- Instance: Device cleanup on failed start
- lxd/rbac: Don’t close body when missing
- Storage doc and init tweaks
- Add GPU & spice socket
- client: Expand snap path in ConnectLXDUnix
LXC
- lxc-test-usernsexec: If user is root, then create and use non-root user.
- .gitignore: Ignores COPYING file created by make
LXCFS
Distrobuilder
- 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
- Updated the UEFI firmware to the latest version
- Enabled IPv6 netboot support in the UEFI firmware
- Tweaked DHCPv6 address logic in UEFI firmware
- Customized the boot logo in the UEFI firmware
- Cherry-picked lxc bugfixes
- Cherry-picked lxcfs bugfixes
- Updated to LXD 4.2
- Cherry-pick lxd bugfixes