Support for Extensions in ML2
This patch adds more detail to describe extension driver and how it works. Change-Id: Ice45fab7a462fec02be17bb87d5fd5a2b82b31f8
This commit is contained in:
@@ -27,8 +27,28 @@ monolithic plugin.
|
|||||||
Proposed change
|
Proposed change
|
||||||
===============
|
===============
|
||||||
|
|
||||||
The following changes can be considered as a solution to support extensions in
|
This proposal adds support to ML2 for extension drivers, which manage extended
|
||||||
mechanism driver:
|
attributes on the neutron core resources implemented by the ML2 plugin:
|
||||||
|
network, subnet and port.
|
||||||
|
|
||||||
|
The extension drivers are completely orthogonal to mechanism drivers. An
|
||||||
|
operator configures some set of extension drivers and configures some other set
|
||||||
|
of mechanism drivers. The set of extension drivers configured determines what
|
||||||
|
extended attributes are present on the core resources. These extension drivers
|
||||||
|
manage setting, defaulting, updating and returning persistent values for these
|
||||||
|
extended attributes. The values of these extended attributes are then available
|
||||||
|
to all the configured mechanism drivers and they do not vary depending on which
|
||||||
|
mechanism driver is using the extended attributes.
|
||||||
|
If a mechanism driver understands an extension, it can enforce its semantics.
|
||||||
|
If not, it just ignores those extended attributes.
|
||||||
|
|
||||||
|
Each mechanism driver that requires a vendor-specific extension would have its
|
||||||
|
own extension driver. There may also be "community" extension drivers, where
|
||||||
|
several different mechanism drivers might be able to enforce the extension's
|
||||||
|
semantics.
|
||||||
|
|
||||||
|
What follows describe changes in ML2 to define extension drivers and provide
|
||||||
|
support for extensions in ML2 mechanism drivers:
|
||||||
|
|
||||||
1. Introduce ExtensionDriver API and ExtensionManager (similar to
|
1. Introduce ExtensionDriver API and ExtensionManager (similar to
|
||||||
MechanismDriver and MechanismManager).
|
MechanismDriver and MechanismManager).
|
||||||
|
Reference in New Issue
Block a user