[openstack-dev] [Quantum/Nova] Improving VIF plugin

Gary Kotton gkotton at redhat.com
Tue Nov 6 12:09:25 UTC 2012


Hi,
In order to move forward with the blueprint vif-plugging-improvements 
<https://blueprints.launchpad.net/quantum/+spec/vif-plugging-improvements> 
(https://blueprints.launchpad.net/quantum/+spec/vif-plugging-improvements). 
A description of the problem can be seen at 
https://docs.google.com/presentation/d/1vD2bc2WyqQzOLODjFrfLgg661WU0nteY7NEaVS4pv5g/edit.

A precursor to the blueprint is the following patches (which improve the 
way in which libvirt manages the linux bridge plugin - improved security 
and performance) [it would be nice if they could both land at the same 
time :)]:
     Nova - https://review.openstack.org/#/c/14830/
     Quantum - https://review.openstack.org/#/c/14961/

The goals of the blueprint are:
     - remove configuration variables from the nova.conf for the 
specific quantum plugin and have nova learn the networking 
"implementation" from quantum
     - simplify the hypervisor drivers (when using quantum)
     - more robust interface for the VIF plugins

I would first like to tackle the first two items. Prior to doing this I 
would like to get input regarding the interfaces. The goal here is to 
have minimal changes in Nova and to have Quantum provide the necessary 
support and infrastructure.

The third item has been very nicely described by Ian (aka ijw) - 
http://wiki.openstack.org/VifPlugging. This can be addressed once we 
have the building blocks and ready.

I would like to get some input regarding the *Quantum API*. In order for 
Quantum to be able provide the necessary network "implementation" the 
proposal will be to have the following API:
GET /network-implementation-details/<net-id>. The plugin will be 
responsible for filling in the relevant details. These details will be 
used by Nova compute to create/manage/configure the vNic (depending on 
the underlying technology). This will initially be done as part of a 
generic Quantum VIF plugin. In the future this can have extensions to 
indicate if a host is on a specific network (in the event that Quantum 
can support more than one plugin or networking technology for a logical 
network)

Open issues:
- permissions - can any user access this information or should it be an 
admin user? Will Nova need some privileged access to get this information?
- will this need to be extended to ports? For example if the hypervisor 
enables the guest to access a paravirtualized network adapter. If so 
then the API
GET /port-implementation-details/<port-id> can be added. Is this relevant?

Thanks
Gary
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20121106/b8f8185c/attachment.html>


More information about the OpenStack-dev mailing list