How to enable the Nicira NVP integration.
When configuring a zone create a new physical network for "Guest" traffic and
select "STT" as the isolation type. Set the Xen traffic label for "Guest"
traffic to the label of the integration bridge (refer to the Nicira
Documentation for setting up the integration bridge). Note that this requires
all traffic types to have their traffic labels set.
These steps are specified by the API calls as there is currently no GUI
id=<id from step1>,
physicalnetworkid=<see step 1>,
hostname=<hostname or IP of the controller>
transportzoneuuid=<transport zone uuid>
New API Calls
The following API calls are added to CloudStack to support the integrations with
the Nicira NVP platform. Please see the API documentation of CloudStack for
parameters and return values.
How to use the Nicira integration
When creating a guest network make sure it is created in the physical network
with the isolation type set to "STT". When the first virtual machine is
launched in this network the NiciraNvpNetworkGuru will configure a logical
switch on the NVP Controller. During the startup of a virtual machine the
NiciraNvpElement will create a logical port for any NICs in the guest networks
and attach the port to the existing logical swith.
All elements created on the NVP controller have tags with the name of the
account, this can be used to search the items using the NVP manager. The NVP
uuid of the logical switch is also stored in the BroadcastUri of the
corresponding Guest network in an lswitch uri scheme. The CloudStack uuid of
the NIC is used to make the Vif attachement on the logical switchport.
The following classes should be set to log level debug when troubleshooting.
com.cloud.network; Most NiciraNvp related objects live in this package and subpackages
org.apache.commons.httpclient; used by NiciraNvpApi to make calls to the SDN Controller
httpclient.wire; wirelevel http tracing of httpclient
Please report any findings to the developer mailing list.
- Phase 2
- Integrate L3 support
- Integration with NetworkOfferings
- Phase 3
Regarding the changes made to CitrixResourceBase for the NiciraNvp integration:
Since there in no flexibility to tag VIF's as Nicira integration would want, we can leave the changes you done in the CitrixResourceBase for now.
But we may need to get rid of custom handling and make it more generic in the long run. One of the idea Alex & Chiradeep suggested as a solution is to have NicTO handler function which takes in NicTo and returns VIF object. So this handler needs to be implemented as CloudStack adapter, and be implemented in the Nicira integration plug-in. CitrixResoucebase needs to be changed to load the handler adapters if there is any configured adapter.