[lxc-users] lxc1 Vs lxc2 vs lxd and libvirt

St├ęphane Graber stgraber at ubuntu.com
Sun Apr 2 17:49:31 UTC 2017

On Sun, Apr 02, 2017 at 05:37:49PM +0000, Spike wrote:
> Dear all,
> when I started to look into containers LXD was "the thing" so I picked that
> up and ran with it.
> however after a few months and a few more users who would like to use
> containers + the need for some kvm machines, has brought me to reconsider
> that decision.
> First off, I'm not really sure where you draw the line between lxd and lxc.
> From this:
> https://insights.ubuntu.com/2016/03/14/lxd-2-0-introduction-to-lxd/
> it's almost like lxd is a wrapper API and a saner set of defaults around
> lxc. However as I looked to try "lxc" I ran into more questions.
> First off, this page (https://linuxcontainers.org/lxc/introduction/) talks
> about lxc1 and lxc2 release. It sounds like I should go with 2 as it's
> supported through 2021, however if I look at apt-get'ing lxc2 you can see:
> apt-cache show lxc2
> Description-en: Container hypervisor based on LXC - metapackage
> LXD offers a REST API to remotely manage containers over the network,
> using an image based workflow and with support for live migration.
> .
> This is a dummy metapackage to install LXD and its client.
> So from this it doesn't even look like there's a lxc2, there's just lxc1
> and lxd. Is that the case? If sow what's the LXC2 listed on that page? I
> want to avoid to use stuff that will be dropped in the near future.

Hey there,

The packaging in Ubuntu is a bit confusing unfortunately...

"lxc1" is the "LXC 1.0 user experience" which is what normal people call LXC
"lxc2" is the "LXC 2.0 user experience" which is what normal people call LXD

So if you install "lxc1", you'll get the usual LXC tools
"lxc-create/lxc-start/..." and all of those will be at version 2.0.7,
getting all the bugfix and security updates and supported through 2021.

> Eventually I'd like to integrate lxc with libvirt because through
> virt-manager it makes it really nice and easy for less cli savvy users to
> manage all kinds of virtualization and it's not as intrusive as say proxmox
> which on ubuntu doesn't even seem to work (their installation process is
> broken and I don't want to install their iso).

So unfortunately libvirt doesn't actually support interfacing with LXC or LXD.

There is something called "libvirt-lxc" but it's not based on LXC at all
and is its own standalone thing. It was pretty actively maintained for a
while with Red Hat offering support for it, but this has changed a
little while back with it just being community maintained and I'm not
sure where they are as far as feature parity with LXC nowadays.

One other option you may want to consider would be to allow your users
to run virtual machines inside their LXD containers. You can do so with:

    lxc config device add CONTAINER kvm unix-char path=/dev/kvm

St├ęphane Graber
Ubuntu developer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20170402/3faf0db9/attachment.sig>

More information about the lxc-users mailing list