Just move implemented specs to the right place. Change-Id: Ia09ed6aceb9e9874e07c740d2fe94ce1b88af9f7
156 lines
2.9 KiB
ReStructuredText
156 lines
2.9 KiB
ReStructuredText
==========================================
|
|
Nova Plugin for OpenContrail
|
|
==========================================
|
|
|
|
https://blueprints.launchpad.net/nova/+spec/opencontrail-nova-vif-driver-plugin
|
|
|
|
This blueprint is to add plugin for OpenContrail in existing Nova
|
|
VIF driver to support OpenContrail based network virtualization
|
|
for Openstack.
|
|
|
|
The OpenContrail APIs will cover following:
|
|
|
|
* Create Interface
|
|
* Delete Interface
|
|
* Get Interface Config
|
|
|
|
|
|
Problem description
|
|
===================
|
|
|
|
OpenContrail is open source network virtualization solution. It uses standards
|
|
based BGP L3VPN closed user groups to implement virtual networks.
|
|
The link http://OpenContrail.org/OpenContrail-architecture-documentation/
|
|
explains the architecture of OpenContrail plugin
|
|
OpenContrail plugin get merged to neutron on Juno timeframe.
|
|
|
|
OpenContrail is loading its VIF driver via openstack-config command
|
|
using option libvirt_vif_driver. In Juno this option is no longer supported
|
|
and same needs to be implemented under Nova VIF driver.
|
|
|
|
Use Cases
|
|
---------
|
|
|
|
Use Nova with Neutron + OpenContrail
|
|
For more details, please take a look this link
|
|
http://www.opencontrail.org/opencontrail-architecture-documentation/#section1_1
|
|
|
|
Project Priority
|
|
----------------
|
|
|
|
Not applicable
|
|
|
|
|
|
Proposed change
|
|
===============
|
|
|
|
Add OpenContrail APIs to handle the Creation/Deletion/Get of
|
|
interfaces in Nova VIF driver. There are no changes to the Nova common code.
|
|
|
|
|
|
Alternatives
|
|
------------
|
|
|
|
None.
|
|
|
|
Data model impact
|
|
-----------------
|
|
|
|
None.
|
|
|
|
REST API impact
|
|
---------------
|
|
|
|
None.
|
|
There are no new API added to Nova. For above listed API all features
|
|
will be supported by the plugin.
|
|
|
|
Security impact
|
|
---------------
|
|
The communication channel to the backend is not secure.
|
|
We will support secure channel in the future.
|
|
|
|
Notifications impact
|
|
--------------------
|
|
None.
|
|
|
|
Other end user impact
|
|
---------------------
|
|
|
|
None.
|
|
|
|
Performance Impact
|
|
------------------
|
|
|
|
None.
|
|
|
|
Other deployer impact
|
|
---------------------
|
|
|
|
None.
|
|
|
|
Developer impact
|
|
----------------
|
|
|
|
None.
|
|
|
|
Other Developers wont be effected by this change.
|
|
|
|
Implementation
|
|
==============
|
|
|
|
Model - VIF_TYPE_VROUTER
|
|
|
|
Following APIs will be implemented:
|
|
|
|
def get_config_vrouter(self, instance, vif, image_meta, inst_type, virt_type)
|
|
|
|
def plug_vrouter(self, instance, vif)
|
|
|
|
def unplug_vrouter(self, instance, vif)
|
|
|
|
|
|
Assignee(s)
|
|
-----------
|
|
|
|
Primary assignee:
|
|
manishs
|
|
|
|
Other contributors:
|
|
hajay
|
|
|
|
Work Items
|
|
----------
|
|
|
|
1. OpenContrail API implementation
|
|
2. OpenContrail mocks for unit-tests
|
|
|
|
Dependencies
|
|
============
|
|
|
|
None.
|
|
|
|
Testing
|
|
=======
|
|
|
|
Existing and new Nova unit tests will be used.
|
|
|
|
Existing and new tempest testing for Nova will be used.
|
|
|
|
|
|
Documentation Impact
|
|
====================
|
|
|
|
None.
|
|
|
|
The link below explains setup of OpenContrail using devstack.
|
|
|
|
http://pedrormarques.wordpress.com/2013/11/14/using-devstack-plus-OpenContrail/
|
|
|
|
References
|
|
==========
|
|
|
|
http://www.OpenContrail.org
|
|
|
|
https://github.com/Juniper/contrail-controller
|