[ https://issues.apache.org/jira/browse/CLOUDSTACK-9074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15071921#comment-15071921 ]
ASF GitHub Bot commented on CLOUDSTACK-9074: -------------------------------------------- GitHub user nvazquez reopened a pull request: https://github.com/apache/cloudstack/pull/1094 CLOUDSTACK-9074: Support shared networking in NiciraNVP Plugin JIRA TICKET: https://issues.apache.org/jira/browse/CLOUDSTACK-9074 Design Document: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Support+shared+networking+in+NiciraNVP+Plugin You can merge this pull request into a Git repository by running: $ git pull https://github.com/nvazquez/cloudstack sharedNiciraNVP Alternatively you can review and apply these changes as the patch at: https://github.com/apache/cloudstack/pull/1094.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1094 ---- commit 46f9fbabdf2fdb3aa7ca92fd8a54a9a0a9443f4d Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-01T19:46:22Z CLOUDSTACK-9074: API Changes: Add l2gatewayserviceuuid to NVP devices commit 8149081658738a2d4d9ee088241310460b2d9077 Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-01T19:48:27Z CLOUDSTACK-9074: API Changes: Add nsxLogicalSwitch and nsxLogicalSwitchPort to listNics commit 06d5b46e538ba4d1a88995bff4aef5fe2e5275e7 Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-01T19:50:52Z CLOUDSTACK-9074: New NiciraNVP classes to support Shared Networks commit c67637180f9d7be627a4fe36fd2709c58c952e94 Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-01T19:54:27Z CLOUDSTACK-9074: Support Shared Networks in NiciraNVP Plugin commit 55f460772e5e9872115947b47fa40579c9026dfe Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-04T18:20:44Z CLOUDSTACK-9074: New NiciraNVP classes for FindLRouterPort and DeleteLRouterPort API methods commit eb889c0c49313184609d31d4492c58eb0ff19f31 Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-09T18:55:30Z CLOUDSTACK-9074: API add Gateway Service Find method commit 07264204f55ccf5ccf724c539ec1f477dc88a190 Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-09T18:57:12Z CLOUDSTACK-9074: Drop nicira_nvp_router_map unique index on logicalrouter_uuid commit 4ac2737754a20c0ff8ccb3f1b9622e0651fe1b8b Author: nvazquez <nicolas.m.vazq...@gmail.com> Date: 2015-12-09T18:58:02Z CLOUDSTACK-9074: Marvin tests for NSX Shared Networks Support commit 88774a93e88d83bdf2868b382f66ecfae441a69a Author: Miguel Ferreira <miguelferre...@me.com> Date: 2015-12-24T10:08:42Z Only set L2 Gateway in NSX device if defined commit 3dba689f31a89f6b17b3018dfb2dc6f689698812 Author: Miguel Ferreira <miguelferre...@me.com> Date: 2015-12-24T10:08:59Z Add helper method to migrate router vms commit f804c9756d07fcff70aa18a9c50bc30841374f92 Author: Miguel Ferreira <miguelferre...@me.com> Date: 2015-12-24T10:10:18Z Use helper method to migrate router vm commit acdc42cb48f66e76f6337844f3409460da7631b1 Author: Miguel Ferreira <miguelferre...@me.com> Date: 2015-12-24T10:11:00Z Fix method call bugs when accessign non defined variables commit c285d6cfb4f7aaf53bd317cfd80382a5894dfcec Author: Miguel Ferreira <miguelferre...@me.com> Date: 2015-12-24T10:12:41Z Use NSX specific config values instead of zone config values commit 0b20ed4074484113973d8f447b8b8a79c778210d Author: nvazquez <nicovazque...@gmail.com> Date: 2015-12-24T14:33:06Z CLOUDSTACK-9074: Add NetworkGuruAdditionalFunctions license commit de23c94f33c51cb3c72ceb801e86f3888cfb8604 Author: nvazquez <nicovazque...@gmail.com> Date: 2015-12-24T19:12:01Z CLOUDSTACK-9074: Move sql to 4.8.0 schema ---- > Support shared networking in NiciraNVP Plugin > --------------------------------------------- > > Key: CLOUDSTACK-9074 > URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9074 > Project: CloudStack > Issue Type: Improvement > Security Level: Public(Anyone can view this level - this is the > default.) > Affects Versions: 4.7.0 > Reporter: Nicolas Vazquez > Fix For: 4.7.0 > > > h3. Introduction > Currently NiciraNVP plugin supports only Isolated networking. In this mode of > operations networks are assigned to individual Cloudstack accounts and on NSX > side are completely isolated on the L3 level. Many use cases especially in > corporate environment call for shared networking mode support. In some > circumstances there also may be a need to translate shared NSX network over > to a physical VLAN via L2 NSX gateway. > Features that will be introduced to support Cloudstack shared networks in two > modes of NiciraNVP plugin: > * Shared networks mapped to a physical VLAN with L2 NSX gateway > * Shared networks within the same L3 NSX domain. Multiple L3 NSX domains will > be supported. > h3. Features > h4. 1) Shared networking model support > # Support native Cloudstack shared network in NiciraNVP plugin. > # Current code that implements isolated networking mode support will stay > intact. > # Designate network service offering by configuring VirtualNetworking > provider with NiciraNVP. > # Static/Source NAT is not used and ignored if defined in the network > offering. > # Nicira_vvp_router_map table will support non-unique logical routers to > implement L3 NSX routing domains where multiple Cloudstack networks are > attached to the same logical router. > # Shared network with NSX based Virtual networking will go through the > following states: > ## Allocated > ## Implementing > ## Implemented > ## Destroy > h4. 2) Support NSX L2 gateways for L2 based VLANs mapped to a physical network > # Optional L2gatewayserviceuuid parameter for NiciraNVP controller > # VLAN ID of a Shared network represents VLAN to pass through L2 gateway > similar to native Cloudstack shared networking > # NSX workflow for network allocation > ## Check if l2gatewayservice defined > ## Create record in networks table > ### NiciraNvpGuestNetworkGuru as Guru_name > ### Lswitch as broadcast_doamin > ### Vlan://vlan_id as broadcast_uri > ## Create record in VLAN table > # NSX workflow for network implementation > ## Check if l2gatewayservice defined and valid > ## Create logical switch > ## Map logical switch to L2gateway service assigning shared network VLAN ID > # NSX workflow for NIC management and/or hypervisor support > ## No changes from current implementation > h4. 3) Support NSX L3 multiple routing domains > # VLAN ID of a Shared network represents an UUID of a NSX virtual router of a > particular routing domain. We will support UUID style notation for VLAN ID. > l3gatewayservice option is not used in shared networking > # It is assumed that if connectivity to the physical networking is required > then logical router is configured and connected to the physical network in > advance. NiciraNVP plugin will not perform any task beyond basic connectivity > to the logical router > # Support NSX L3 multiple routing domains > # NSX workflow for network allocation > ## Create record in networks table > ### NiciraNvpGuestNetworkGuru as Guru_name > ### Lswitch as broadcast_domain > ### NULL as broadcast_uri > ## Create record in VLAN table > ## Create record in nicira_nvp_router_map table > # NSX workflow for network implementation > ## Check if logical router exists on NSX side which UUID matches the one > defined during shared network creation. This mode is activated if VLAN ID > supplied in UUID style notation > ## Create logical switch > ## Attach logical switch to the logical router > ## Assign shared network default gateway to the inside port of the logical > router > # NSX workflow for NIC management and/or hypervisor support > ## No changes from current implementation > h4. 4) API Changes > # Existing API addNiciraNvpDevices will be updated > ## Adding 1 new optional parameter – l2gatewayserviceuuid > ## Adding 1 new response tag – l2gatewayserviceuuid > # Existing API listNiciraNvpDevices will be updated > ## Adding 1 new response tag – l2gatewayserviceuuid > # Existing API listNics will be updated > ## Adding 2 new optional response tag – nsxlogicalswitch, nsxlogicalswitchport -- This message was sent by Atlassian JIRA (v6.3.4#6332)