[one-ecosystem] Integrating with a network provisioning service.
Dimitris Theodorou
dtheodor at nikhef.nl
Thu Mar 15 04:50:22 PDT 2012
Hi,
I am working on a cloud network resource provisioning service, which
will accomodate networking among virtual machines by configuring the
network hardware(switches) that lies between the hosts. The goal of
the service is 1) to undo the "vlan clean" requirement that you have
in OpenNebula and other cloud stacks, 2) to be able to provide
bandwidth requests and 3) to take decisions on how the network will be
allocated based on the current switching and network infrastructure of
the cluster that hosts the cloud service. The service should also
easily support any switch model.
The simplest functionality of the system (let's call it NRS) is that
it receives a request containing a network id, as well as the VM hosts
that should be connected to it. It then chooses a suitable vlan (if
not given), and configures host bridges and switches involved so that
the network is realized.
I am using OpenNebula to build a prototype of the system. To interface
with it, the idea is that I need a single point during OpenNebula
execution after VMs are assigned to hosts but before the VMs are
launched. The Vm-host info is to be sent to NRS, which will respond
whether OpenNebula can proceed with launching VMs.
Currently, the opennebula scheduler assigns a limited amount of VMs
per host in each cycle, and the decision process is restarted for
every cycle. This creates a problem (for NRS) because there is no
single point during execution where you have all VM-to-host
assignments before VMs are launched. In order to work around this, I
modified the scheduler to assign all hosts to VMs at once, and defer
the actual deployment to following scheduler cycles.
Now my question is:
Is the above solution the proper way to go, or is there is a better
way to address this that I am missing? Also if you have any
comments/criticism on the project and how it fits with OpenNebula I
would be happy to hear them.
Dimitris
More information about the Ecosystem
mailing list