[Openstack] Integrating with a network provisioning service.

Dimitris Theodorou dtheodor at nikhef.nl
Thu Mar 15 14:25:32 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