|
|
|
@ -6,7 +6,7 @@
|
|
|
|
|
This document describes the REST API extensions integrated with the
|
|
|
|
|
VMware [NSX OpenStack neutron plugins](https://wiki.openstack.org/wiki/Neutron/VMware_NSX_plugins).
|
|
|
|
|
The intent of this document is to supplement the
|
|
|
|
|
[OpenStack neutron REST API guide](http://developer.openstack.org/api-ref/networking/v2) by describing
|
|
|
|
|
[OpenStack neutron REST API guide](https://developer.openstack.org/api-ref/networking/v2) by describing
|
|
|
|
|
the extensions implemented by the VMware NSX neutron plugins.
|
|
|
|
|
|
|
|
|
|
The VMware NSX neutron plugins implement
|
|
|
|
@ -14,7 +14,7 @@ The VMware NSX neutron plugins implement
|
|
|
|
|
by defining new top-level REST resources, operations (e.g. verbs) and attribute extensions
|
|
|
|
|
to existing neutron REST API entities (depending on the extension). As all extensions apply
|
|
|
|
|
to the neutron REST API, the
|
|
|
|
|
[general information](http://developer.openstack.org/api-ref/networking/v2/#general-information)
|
|
|
|
|
[general information](https://developer.openstack.org/api-ref/networking/v2/#general-information)
|
|
|
|
|
for the neutron API applies here as well.
|
|
|
|
|
|
|
|
|
|
The VMware NSX neutron extensions supported by your plugin will depend on the version
|
|
|
|
@ -44,7 +44,7 @@ of VMware NSX used. Two versions described herein are:
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
This resource attribute extensions adds the `advanced_service_providers`
|
|
|
|
|
attribute to neutron [subnets](http://developer.openstack.org/api-ref/networking/v2/#subnets).
|
|
|
|
|
attribute to neutron [subnets](https://developer.openstack.org/api-ref/networking/v2/#subnets).
|
|
|
|
|
This read-only attribute is a list of NSX advanced service provider IDs associated on a per-subnet
|
|
|
|
|
basis. The advanced service provider IDs are populated by the plugin automatically
|
|
|
|
|
when interfacing with the NSX manager backend.
|
|
|
|
@ -59,7 +59,7 @@ NSX-v.
|
|
|
|
|
None (read-only).
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[subnet](http://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
[subnet](https://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `advanced_service_providers`: A list of NSX advanced service provider IDs (in `string` format)
|
|
|
|
@ -108,7 +108,7 @@ None (read-only).
|
|
|
|
|
### [DHCP MTU](#dhcp-mtu)
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron [subnets](http://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
Extends neutron [subnets](https://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
providing the ability to specify per-subnet DHCP MTU via the
|
|
|
|
|
`dhcp_mtu` attribute.
|
|
|
|
|
|
|
|
|
@ -122,7 +122,7 @@ NSX-v.
|
|
|
|
|
POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[subnet](http://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
[subnet](https://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `dhcp_mtu`: The DHCP MTU to use for the associated subnet. Must be a valid DHCP
|
|
|
|
@ -171,7 +171,7 @@ POST, PUT
|
|
|
|
|
### [DNS Search Domain](#dns-search-domain)
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron [subnets](http://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
Extends neutron [subnets](https://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
providing the ability to specify per-subnet DNS search via the
|
|
|
|
|
`dns_search_domain` attribute.
|
|
|
|
|
|
|
|
|
@ -185,7 +185,7 @@ NSX-v.
|
|
|
|
|
POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[subnet](http://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
[subnet](https://developer.openstack.org/api-ref/networking/v2/#subnets)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `dns_search_domain`: The DNS search domain to use for networking on the associated
|
|
|
|
@ -234,7 +234,7 @@ POST, PUT
|
|
|
|
|
### [MAC Learning](#mac-learning)
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron [ports](http://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
Extends neutron [ports](https://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
providing the ability to enable MAC learning on the associated port via the
|
|
|
|
|
`mac_learning_enabled` attribute.
|
|
|
|
|
|
|
|
|
@ -248,7 +248,7 @@ NSX-v3.
|
|
|
|
|
POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[ports](http://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
[ports](https://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `mac_learning_enabled`: A boolean value that indicates if MAC Learning is enabled
|
|
|
|
@ -310,9 +310,9 @@ POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
The VMware NSX neutron plugins also support the
|
|
|
|
|
[neutron provider networks extension](http://docs.openstack.org/admin-guide/networking-adv-features.html#provider-networks).
|
|
|
|
|
Provider network extensions add [attributes](http://docs.openstack.org/admin-guide/networking-adv-features.html#provider-attributes)
|
|
|
|
|
to neutron [networks](http://developer.openstack.org/api-ref/networking/v2/#networks)
|
|
|
|
|
[neutron provider networks extension](https://docs.openstack.org/admin-guide/networking-adv-features.html#provider-networks).
|
|
|
|
|
Provider network extensions add [attributes](https://docs.openstack.org/admin-guide/networking-adv-features.html#provider-attributes)
|
|
|
|
|
to neutron [networks](https://developer.openstack.org/api-ref/networking/v2/#networks)
|
|
|
|
|
enabling providers to map virtual networks onto physical networks, or in this case
|
|
|
|
|
onto physical networks in NSX.
|
|
|
|
|
|
|
|
|
@ -324,11 +324,11 @@ NSX-v3, NSX-v.
|
|
|
|
|
|
|
|
|
|
###### Supported Verbs
|
|
|
|
|
See the
|
|
|
|
|
[neutron provider networks extension](http://developer.openstack.org/api-ref/networking/v2/#networks-provider-extended-attributes-networks)
|
|
|
|
|
[neutron provider networks extension](https://developer.openstack.org/api-ref/networking/v2/#networks-provider-extended-attributes-networks)
|
|
|
|
|
API reference documentation.
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
* [networks](http://developer.openstack.org/api-ref/networking/v2/#networks)
|
|
|
|
|
* [networks](https://developer.openstack.org/api-ref/networking/v2/#networks)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `provider:network_type`: For the NSX plugins valid values are `flat` or `vlan`.
|
|
|
|
@ -368,10 +368,10 @@ API reference documentation.
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
This extension enables support for provider-only created/managed neutron
|
|
|
|
|
[security groups](http://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups).
|
|
|
|
|
[security groups](https://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups).
|
|
|
|
|
To enable this support a `provider` boolean attribute is added to neutron security
|
|
|
|
|
groups indicating if the group is a provider-only group. Additionally, neutron
|
|
|
|
|
[ports](http://developer.openstack.org/api-ref/networking/v2/#ports) are extended with
|
|
|
|
|
[ports](https://developer.openstack.org/api-ref/networking/v2/#ports) are extended with
|
|
|
|
|
a `provider_security_groups` attribute that indicates a list of provider-only
|
|
|
|
|
security groups belonging to the said port.
|
|
|
|
|
|
|
|
|
@ -386,8 +386,8 @@ The `provider` attribute on neutron security groups is only settable during crea
|
|
|
|
|
However the `provider_security_groups` attribute on ports supports both POST and PUT.
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
* [ports](http://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
* [security groups](http://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
* [ports](https://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
* [security groups](https://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `provider`: A boolean indicating if the security group is provider-only.
|
|
|
|
@ -543,7 +543,7 @@ GET port
|
|
|
|
|
### [Router Size](#router-size)
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron [routers](http://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
Extends neutron [routers](https://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
by adding the `router_size` attribute to support configuration of NSX-v
|
|
|
|
|
edge size.
|
|
|
|
|
|
|
|
|
@ -557,7 +557,7 @@ NSX-v.
|
|
|
|
|
POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[routers](http://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
[routers](https://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `router_size`: The NSX-v edge size to use.
|
|
|
|
@ -607,7 +607,7 @@ POST, PUT
|
|
|
|
|
### [Router Type](#router-type)
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron [routers](http://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
Extends neutron [routers](https://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
by adding the `router_type` attribute to support configuration of NSX-v
|
|
|
|
|
router type.
|
|
|
|
|
|
|
|
|
@ -621,7 +621,7 @@ NSX-v.
|
|
|
|
|
POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[routers](http://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
[routers](https://developer.openstack.org/api-ref/networking/v2/#routers-routers)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `router_type`: The NSX-v router type. Must be either `shared` or `exclusive`.
|
|
|
|
@ -673,7 +673,7 @@ POST, PUT
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron
|
|
|
|
|
[security group rules](http://developer.openstack.org/api-ref/networking/v2/#security-group-rules-security-group-rules)
|
|
|
|
|
[security group rules](https://developer.openstack.org/api-ref/networking/v2/#security-group-rules-security-group-rules)
|
|
|
|
|
by adding a `local_ip_prefix` attribute allowing rules to be created with IP prefixes.
|
|
|
|
|
|
|
|
|
|
###### Extension Type
|
|
|
|
@ -686,7 +686,7 @@ NSX-v3, NSXv.
|
|
|
|
|
POST; using an IP prefix on a rule can only be done when creating the rule.
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[security group rules](http://developer.openstack.org/api-ref/networking/v2/#security-group-rules-security-group-rules)
|
|
|
|
|
[security group rules](https://developer.openstack.org/api-ref/networking/v2/#security-group-rules-security-group-rules)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `local_ip_prefix`: The local IP prefix used for the rule.
|
|
|
|
@ -714,7 +714,7 @@ POST; using an IP prefix on a rule can only be done when creating the rule.
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron
|
|
|
|
|
[security groups](http://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
[security groups](https://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
with a boolean attribute `logging` to enable per security group logging on NSX.
|
|
|
|
|
|
|
|
|
|
###### Extension Type
|
|
|
|
@ -727,7 +727,7 @@ NSX-v3, NSX-v.
|
|
|
|
|
POST, PUT.
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[security groups](http://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
[security groups](https://developer.openstack.org/api-ref/networking/v2/#security-groups-security-groups)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `logging`: A boolean attribute indicating if logging is enabled for the group.
|
|
|
|
@ -802,7 +802,7 @@ POST, PUT.
|
|
|
|
|
|
|
|
|
|
###### Description
|
|
|
|
|
Extends neutron
|
|
|
|
|
[ports](http://developer.openstack.org/api-ref/networking/v2/#ports) by adding
|
|
|
|
|
[ports](https://developer.openstack.org/api-ref/networking/v2/#ports) by adding
|
|
|
|
|
the `vnic_index` attribute enabling per-port assignment of a VNIC index.
|
|
|
|
|
|
|
|
|
|
###### Extension Type
|
|
|
|
@ -815,7 +815,7 @@ NSX-v.
|
|
|
|
|
POST, PUT.
|
|
|
|
|
|
|
|
|
|
###### Extended Resource
|
|
|
|
|
[ports](http://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
[ports](https://developer.openstack.org/api-ref/networking/v2/#ports)
|
|
|
|
|
|
|
|
|
|
###### Extension Attribute(s)
|
|
|
|
|
* `vnic_index`: The VNIC index (integer value) assigned to the port.
|
|
|
|
|