[one-dev] proof of concept implementation of EXTERNAL leases

Steven Armstrong steven-opennebula at armstrong.cc
Thu Dec 12 06:24:35 PST 2013


Hi

I hacked together a new type of virtual network which delegates the 
allocation of ip addresses to an external command [1].

The use case is that we want to handle virtual machines exactly the same 
as physical ones.

For physical hosts our bootstrap process looks something like this:
- get a new machine, vendor gives us mac address
- create dns/dhcp entries for the machine using an internal API
- boot machine, install through dhcp/pxe
- configure using cdist

With the new vnet type, we can have the mostly same work flow for 
opennebula managed vms:
- opennebula creates vm, generates mac address
- the EXTERNAL network type runs a script that create dns/dhcp entries 
for the machine using an internal API
- boot machine, install through dhcp/pxe
- configure using cdist

Together with the openvswitch backend and vlan tagging we have all we 
need to mix and match virtual and physical machines in all our subnets 
however we need to.

If all this makes some sense to you it would be nice to get some 
feedback on [1].

Please note that I am no C++ developer. I just copy/pasted try/error to 
get it to work ;-)

Cheers,
Steven

[1] https://github.com/OpenNebula/one/pull/15


More information about the Dev mailing list