[Openstack] Integrating Nova with a network provisioning service.

Dimitris Theodorou dtheodor at nikhef.nl
Thu Mar 15 14:19:51 UTC 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 Nova 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, 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 realised. (the latter part may have some association  
with Nova's Network controller, however I have not looked into Nova  
implementation details yet).

To interface with Nova to receive the request, the idea is that I need  
a single point during its execution when all VMs that belong to a  
network are assigned to hosts, but before the VMs are actually  
launched. The host-vm info is to be sent to NRS, which will respond  
with whether Nova can proceed with launching VMs. However I do not  
know how Nova's Scheduler assigns hosts and if it allows for such a  
concept, or it has to be modifed.

My question is:

Is there such a point during Nova execution where I can easily insert  
the NRS functionality, or are things more complicated? Also if you  
have any comments/criticism on the project and how it fits with  
OpenStack I would be happy to hear them.

Dimitris






More information about the Openstack mailing list