2. OpenNebula LXD Support
What is LXD
Containers in OpenNebula
LXD/LXC Containers
● Infrastructure containers
● High density linux based appliances
● Leverage all the upper orchestration functionality including:
○ Authorization & Authentication
○ Scheduling
○ Provisioning schemes
○ Other subsystems, networking & storage
○ Tools (Context, Flow, etc…)
3. OpenNebula LXD Support
OpenNebula & LXD
Storage
LXD node (OpenNebula Host)
Storage Mappers
File: raw & qcow2
RBD: ceph
Container
LXD service (REST API)
Container Container Container
OpenNebula
VMM drivers
rootfs maps disk.i maps
System
Datastore
Image
Datastore
Linuxcontainers.org
MarketPlace
KVM disk images
Container images
● Any OpenNebula TM/DM driver.
● Follow Image semantics
● Disk Operations
4. OpenNebula LXD Support
OpenNebula & LXD
Networking
LXD node (OpenNebula Host)
Container
LXD service (REST API)
Container Container Container
OpenNebula VNET
VXLAN, 802.1Q,...
Bridge
tun/tap
NIC
● Linux Bridge Drivers
● 802.1Q, VXLAN, Bridged
● Security Groups
● Context support
5. OpenNebula LXD Support
OpenNebula & LXD
Virtualization
LXD node (OpenNebula Host)
Container
LXD service (REST API)
Container Container Container
VNC control daemon
● Handles incoming connections
● Creates VNC terminals on connection
Supported Actions
attach/detach disk
attach/detach NIC
cancel
deploy
poll
reboot/reset
shutdown
Not Supported in 5.8
migrate
save/restore
snapshot_*
resize_disk
VNC
terminal
VNC
terminal
VNC
terminal
VNC
terminal
6. OpenNebula LXD Support
Future Plans
The Good Stuff ™
● Moar mappers
● Further Sunstone integration
● Stabilize code base, wide array of combinations
● … docker, can run inside LXD
$ onevm list
ID USER GROUP NAME STAT UCPU UMEM HOST TIME
5 oneadmin oneadmin bionic-lxd runn 0.0 0K lxd1 0d 00h24
2 oneadmin oneadmin lxd1 runn 1.0 1G server 0d 01h41
root@lxd1:~# lxc list
+-------+---------+----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-------+---------+----------------------+------+------------+-----------+
| one-5 | RUNNING | 172.17.0.1 (docker0) | | PERSISTENT | 0 |
| | | 10.3.3.200 (eth0) | | | |
+-------+---------+----------------------+------+------------+-----------+
root@bionic-lxd:~# docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6bab5e640190 nginx "nginx -g 'daemon of…" 7 minutes ago Up 7 minutes http
BARE METAL
KVM
LXD
Docker