[FFe] Let's get LXD 2.0 final in Xenial

Bug #1548489 reported by Stéphane Graber
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lxd (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Hello,

LXD is currently at version 2.0.0 beta3 in the archive, our current release plan is:
 - beta4 tomorrow (includes feature work)
 - rc1 next week or the week after (includes feature work)

The main features we're talking about are:
 - Replacement of lxcbr0 by lxdbr0
 - Replacement of the standalone lxd-images script by a native simplestreams client
 - Addition of container resource consumption reporting to the API

All of that should be done and landed by mid-March at the latest. Our goal is to have Xenial release with a current upstream bugfix release of LXD 2.0 so we have a good stable experience at release time.

A quick word on the other bits. LXC is currently at 2.0.0 rc2 and so hit upstream feature freeze ahead of the Ubuntu feature freeze. We don't expect needing any FFe for it. We're just holding off its final release until we know that LXD is good to go.

LXCFS is currently at version 2.0.0 beta2 but an rc should be very near as we don't expect any feature addition to it for the LTS.

The combination of LXC 2.0.0 and LXCFS 2.0.0 should mean that cgmanager will no longer be required in Xenial and so we will not be tagging a long term support release for it, we'll instead let it be demoted to universe for those users who use it directly for uses outside of lxc containers.

In summary, the LXD team would like to get a feature freeze exception to be able to land LXD 2.0.0 final in the Xenial archive.

Revision history for this message
Martin Pitt (pitti) wrote :

Thanks for the heads-up, this sounds mostly fine. I take it that this is being coordinated with nova-compute-lxd and juju (whose local provider is also moving to LXD)?

> Replacement of lxcbr0 by lxdbr0

What's the rationale for this? This sounds a bit like change for change's sake -- lxcbr0 has been around for a long time including LTS releases, and by now third-party software or admins might depend on the name and use it to communicate with containers. Will the "lxc" package go away? Is this meant to not provide direct networking between "plain" LXC and LXD containers any more?

Changed in lxd (Ubuntu):
status: New → Confirmed
status: Confirmed → Incomplete
Revision history for this message
Stéphane Graber (stgraber) wrote :

lxc will still provide lxcbr0 just as it always did, so there won't be a regression for any normal LXC user.

For LXD, the lxd package itself will provide a separate bridge specifically for LXD called lxdbr0. That bridges comes configured with IPv6 link-local only and LXD acts as a basic http proxy on it by default.
That means that containers can be started out of the box and will be able to reach http hosts but will not themselves have a global IPv4 or IPv6 address.

This is to avoid a current issue we've got with lxcbr0 where the 10.0.3.x/24 subnet we use may be used somewhere else on the user's network, therefore masking the real subnet and preventing any connection to it. That's been a serious problem ever since we added lxd to all cloud images and something we absolutely need to address.

With our solution, any pure LXD user will only have lxdbr0 on their system which by default will only use IPv6 link local addresses so cannot possibly conflict with anything. It's then up to the user to run "dpkg-reconfigure lxd" and setup IPv4 or IPv6 connectivity on the bridge the way they want (and since we're using debconf, preseeding is also possible).

Existing users of LXC will not see any difference as the lxc1 package where all the lxc-* tools are, will keep providing the lxcbr0 bridge as it always did with the same configuration it always did.

Revision history for this message
Stéphane Graber (stgraber) wrote :

As for the other packages, the lxc package as of earlier today is now a transitional meta package to lxc1, the lxc1 package provides all the lxc-* tools as well as the lxc init scripts, which includes lxc-net and therefore lxcbr0.
The bits that LXD need are now entirely contained in liblxc1 and lxc-common, both of which can be installed without pulling lxc1.

LXD provides a lxc2 meta package which installs lxd and lxd-client, we will not be switching lxc to point to lxc2 with 16.04 as that would be way too big a change and we need people to start migrating on their own.

Revision history for this message
Stéphane Graber (stgraber) wrote :

And yes, the nova-lxd team is aware of the upcoming changes (in fact the resource limit part was at their request) and the Tycho on the LXD team is the one working on the JuJu LXD port so that part's covered too.

Revision history for this message
Martin Pitt (pitti) wrote :

Thanks for the clarifications! FF approved.

Changed in lxd (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Tycho Andersen (tycho-s) wrote : Re: [Bug 1548489] Re: [FFe] Let's get LXD 2.0 final in Xenial

On Mon, Feb 22, 2016 at 09:02:53PM -0000, Stéphane Graber wrote:
> And yes, the nova-lxd team is aware of the upcoming changes (in fact the
> resource limit part was at their request) and the Tycho on the LXD team
> is the one working on the JuJu LXD port so that part's covered too.

Indeed, I will work with juju to make sure that things work with 2.0.0
final.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lxd - 2.0.0-0ubuntu1

---------------
lxd (2.0.0-0ubuntu1) xenial; urgency=medium

  * New upstream release (2.0.0) (LP: #1548489):
    - client: Add a json format option to "lxc list".
    - client: Recommend running lxd init
    - lxd: Allow setting security.privileged when nested
    - client: Filter on expanded config rather than local config
    - client: Fix wrong mode being passed by file push
    - client: Show the snapshot name instead of the path
    - client: Tweak help messages
    - client: Update Japanese translation
    - core: Don't let umask mess with modes
    - core: Fix uid, gid and mode of retrieved files
    - core: zfs: Clean any leftover snapshot
    - core: zfs: Ignore non-LXD paths in user count
    - doc: Mark API as stable for release
  * lxd-bridge: Don't fail on missing /etc/default/lxd-bridge

 -- Stéphane Graber <email address hidden> Mon, 11 Apr 2016 15:31:52 -0400

Changed in lxd (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.