Sync mechanism between Neutron and Nuage VSD

This spec describes in brief the mechanism to sync state
between Neutron and Nuage VSD

Change-Id: I1ba823d15ef42c85165e5831e7d4b28dcd3fc6b9
This commit is contained in:
Sayaji 2014-07-09 14:43:15 -07:00
parent 9efb2b5fa9
commit 749fc1f25b
1 changed files with 118 additions and 0 deletions

View File

@ -0,0 +1,118 @@
=====================================================================
Add the functionality to sync resources between Neutron and Nuage VSD
=====================================================================
https://blueprints.launchpad.net/neutron/+spec/nuage-neutron-sync
The purpose of this blueprint is to add functionality to sync resources
between Neutron and Nuage VSD(Virtualized Services Directory).
Problem description
===================
If there is any inconsistency in the state of neutron and the VSD
database, there is no way to sync the resources between them.
Proposed change
===============
The proposed change is to introduce support for state synchronization between
neutron and VSD in the Nuage plugin
In case Nuage VSD loses its database or the database is restored using a backup
copy, there is a possibility that the resources in Neutron and VSD are not in sync
and this can lead to unexpected behavior. The sync will run as part of Nuage plugin
at regular intervals.
Neutron is considered as the master. The sync logic will get the state from Neutron and will
send it to VSD. VSD will compare this state with its own state and if there are less resources
in VSD as compared to Neutron, the resources will be created in VSD. In case there are more
resources in VSD, they will be deleted from VSD.
Sync will be controlled by two config parameters "enable_sync" and "sync_interval".
If the "enable_sync" parameter is set to true, the sync will start when Neutron
server starts and will try to sync resources. The sync will run periodically at an
interval specified for the "sync_interval" parameter.
Assumption:
1. If the resource exists in VSD, all of its attributes are in sync with the corresponding
Neutron resource.
Alternatives
------------
None
Data model impact
-----------------
None
REST API impact
---------------
None
Security impact
---------------
None
Notifications impact
--------------------
None
Other end user impact
---------------------
None
Performance Impact
------------------
None
Other deployer impact
---------------------
None
Developer impact
----------------
None
Implementation
==============
Assignee(s)
-----------
Primary assignee:
sayaji15
Work Items
----------
* Modify the nuage plugin to add sync logic
Dependencies
============
None
Testing
=======
Unit tests will be provided.
Documentation Impact
====================
None
References
==========
None