Merge "Specification for GBP driver for Nuage networks"
This commit is contained in:
commit
4c6f215d88
121
specs/juno/nuage-group-policy-driver.rst
Normal file
121
specs/juno/nuage-group-policy-driver.rst
Normal file
@ -0,0 +1,121 @@
|
||||
===================================================
|
||||
Group Based Policy Driver for Nuage Networks
|
||||
===================================================
|
||||
|
||||
Launchpad blueprint:
|
||||
https://blueprints.launchpad.net/group-based-policy/+spec/nuage-gbp
|
||||
|
||||
Group based policy driver for Nuage Networks
|
||||
|
||||
Problem description
|
||||
===================
|
||||
|
||||
Nuage's Virtualized Services Platform(VSP) [1] supports
|
||||
policy based orchestration which fits well with
|
||||
newly defined group based policy framework in openstack.
|
||||
It will enrich the VSP solution by extending its usage through openstack.
|
||||
And also allow openstack user to take advantage of Nuage's
|
||||
fully baked policy driven, application centric service architecture.
|
||||
|
||||
Proposed change
|
||||
===============
|
||||
|
||||
We propose the addition of a new GBP driver to support Nuage.
|
||||
It will implement the PolicyDriver interface as defined in the
|
||||
abstract base class services.group_policy_driver_api.PolicyDriver:
|
||||
|
||||
We will support CRUD operation on policy-target, policy-target-group,
|
||||
policy-classifier, policy-action and policy-rule resources.
|
||||
|
||||
The proposed GBP driver will interface with the Nuage's VSD using ReST
|
||||
channel similar to how its done in Nuage's monolithic plugin. Library will
|
||||
be re-used to avoid code duplication.
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
|
||||
None
|
||||
|
||||
Data model impact
|
||||
-----------------
|
||||
|
||||
None (existing GBP model should suffice)
|
||||
|
||||
REST API impact
|
||||
---------------
|
||||
|
||||
None
|
||||
|
||||
Security impact
|
||||
---------------
|
||||
|
||||
None
|
||||
|
||||
Notifications impact
|
||||
--------------------
|
||||
|
||||
None
|
||||
|
||||
Other end user impact
|
||||
---------------------
|
||||
|
||||
None
|
||||
|
||||
Performance Impact
|
||||
------------------
|
||||
|
||||
This driver should allow for more efficient and scalable solution
|
||||
for group based policy control of deployments using Nuage's VSP.
|
||||
|
||||
Other deployer impact
|
||||
---------------------
|
||||
|
||||
None
|
||||
|
||||
Developer impact
|
||||
----------------
|
||||
|
||||
None
|
||||
|
||||
|
||||
Implementation
|
||||
==============
|
||||
Nuage's VSD has an inbuilt application centric APIs which will fit nicely with
|
||||
GBP. The driver will act as a proxy for managing coresponding objects on VSD.
|
||||
Nuagenetlib (private python library) will be used to make this call. This is inline
|
||||
with implementation model for nuage's core plugin and ml2 driver. The supported
|
||||
list of resources are mentioned in "Proposed change" section.
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
|
||||
Ronak Shah (ronak-malav-shah)
|
||||
|
||||
Work Items
|
||||
----------
|
||||
|
||||
1. Developing the Nuage GBP driver
|
||||
2. Writing corresponding Unit and functional tests
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
Group Based Policy Plugin
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
Unit tests will be provided.
|
||||
Nuage CI may need to be enhanced to support this feature.
|
||||
|
||||
Documentation Impact
|
||||
====================
|
||||
|
||||
Documentation needs to be updated to reflect the addition of a new
|
||||
GBP driver and its configuration parameters.
|
||||
|
||||
References
|
||||
==========
|
||||
|
||||
[1] http://www.nuagenetworks.net/products/
|
||||
|
Loading…
Reference in New Issue
Block a user