OpenNebula
public and private cloud management	

!

Martin Alfke	

<martin.alfke@buero20.org>

© Martin Alfke - 2014
OpenNebula	

- general •

management of virtualization
servers	


•

management of network
interfaces	


•

management of VM’s

© Martin Alfke - 2014
OpenNebula	

- general -

© Martin Alfke - 2014
OpenNebula	

- backends •
•
•

virtualization	

storage	

image

© Martin Alfke - 2014
OpenNebula	

- virtualization backends •

supported virtualization backends	


•
•
•
•

KVM	

VMware	

Xen	

public clouds (AWS/Rackspace/…)

© Martin Alfke - 2014
OpenNebula	

- storage backends •

supported storage backends	


•
•
•
•

local storage	

NFS	

iSCSI	

Ceph

© Martin Alfke - 2014
OpenNebula	

- image backends •

supported image backends	


•
•
•

LVM	

qcow2	

ceph blocks	


© Martin Alfke - 2014
OpenNebula	

- components •
•

management node	

compute server

© Martin Alfke - 2014
OpenNebula	

- components •

management node	


•
•

opennebula (required)	


•
•
•

vnc proxy (optional)	


apache + passenger (sunstone web gui optional)	

mysql db (required)	

user: oneadmin + ssh key (required)
© Martin Alfke - 2014
OpenNebula	

- components •

compute server	


•
•
•
•

libvirtd	

user: oneadmin + authorized key file	

sudoers (bridgectl, …)	

policykit (RH) / user permissions for /dev/qemu
(Debian)

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	

vm	

hooks

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	

vm	


•
•
•
•

802.1q	

ebtables	

open vswitch	

dummy (nat)

hooks

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	

vm	

hooks

•
•

has to be created in advance	


•

copy large images directly
from management node, not
from your workstation

needs one-context package
or cloud-init (v0.7.3 or
newer)	


© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	


•

changes the defaults from
the image (hostname,
network settings, ssh pub
key, …	


•

can be extended by own
scripts	


•

vm gets a carom device with
contextualisation
information

image	

contextualization	

template	

vm	

hooks

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	


•

combines network, image
and hardware (cpu, ram)

vm	

hooks

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	


•

vm is started by selecting a
desired template

vm	

hooks

© Martin Alfke - 2014
OpenNebula	

- workflow •
•
•
•
•
•

network	

image	

contextualization	

template	


•

on create or on delete
hooks: dns management,
puppet cert management

vm	

hooks

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI •
•

CLI	


•
•

user needs auth token in ~/.one_auth.conf	

one* commands	


GUI	


•
•

sunstone webinterface	

can be connected to LDAP

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
OpenNebula	

- GUI / CLI -

© Martin Alfke - 2014
Kontextualisierung
# Context variables generated by OpenNebula	

DISK_ID='1'	

ETH0_DNS='10.175.4.11'	

ETH0_GATEWAY='10.175.16.1'	

ETH0_IP='10.175.24.1'	

ETH0_MASK='255.255.240.0'	

ETH0_NETWORK='10.175.16.0'	

FILES_DS='/var/lib/one/datastores/2/
ef48a35be2d8723ef7788175be6087eb:'''init.sh''' '	

HOSTNAME='martin.xxxxxxxxx'	

NETWORK='YES'	

TARGET='hdb'
© Martin Alfke - 2014
OpenNebula

•

VirtualBox Demo

© Martin Alfke - 2014

One