A hypervisor for LXC containers
LXD is a hypervisor for managing Linux Containers; it provides a simple RESTful API for creation and management of containers. This charm is currently specific to LXD's use with nova-lxd, but that's only by usage, rather than specific design.
Usage with nova-compute and nova-lxd
While the lxd charm can be used with any charm to enable use of LXD, its primary use is
with the nova-compute Openstack charm, for provisioning LXD based OpenStack Nova
juju deploy nova-compute juju set nova-compute virt-type=lxd juju deploy lxd juju set lxd block-devices=/dev/sdb storage-type=lvm juju add-relation lxd nova-compute
The caveat is that nova-compute is part of a greater ecosystem of many OpenStack service
charms. For a full OpenStack Mitaka deployment using LXD, please
refer to the OpenStack LXD bundle.
At this time, nova-lxd is only supported on Ubuntu 16.04 or above, with OpenStack Mitaka
(provided as part of Ubuntu 16.04).
Report bugs on Launchpad
- (string) LXD container storage type: btrfs, zfs, or lvm
- (string) A space-separated list of devices to use to back the LXD storage. Items in this list should be valid block device paths. Entries that are not found will be ignored. . Currently, only the the first block device in the list will be considered.
- (string) Repository from which to install LXD. May be one of the following: distro (default), ppa:somecustom/ppa, a deb url sources entry, or a supported release pocket
- (boolean) Use LXD source from github.
- (boolean) Enable use of EXT4 in LXD containers for block storage support.
- (boolean) If enabled, the charm will attempt to overwrite block devices containing previous filesystems or LVM, assuming it is not in use.
- (string) Cloud instances provide ephemeral storage which is normally mounted on /mnt. . Providing this option will force an unmount of the ephemeral device so that it can be used for LXD container storage. This is useful for testing purposes (cloud deployment is not a typical use case).