Define SDC model to configure VXLAN tunnel 33/12933/4
authorArun S. Yerra <arun.yerra@huawei.com>
Sun, 17 Sep 2017 23:01:54 +0000 (16:01 -0700)
committerMichael Lando <ml636r@att.com>
Wed, 27 Sep 2017 23:19:23 +0000 (02:19 +0300)
VoLTE use case contains a VXLAN tunnel between edge and core datacenters.
This patch defines TOSCA template that enables user to input configuration
parameters required to associate local network within dataceter to a VXLAN
tunnel between data centers. Local network within data center is created
dynamically while provisioning either vIMS or vEPC services and this SDC
model enables configuration of VXLAN gateways to forward local network
traffic through inter-DC VXLAN tunnel.

Issue-Id: SDC-342

Change-Id: I1b3b8bdcff60128223d47f3bfafe50766017d2de
Signed-off-by: Arun S. Yerra <arun.yerra@huawei.com>
catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.json [new file with mode: 0644]
catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.yml [new file with mode: 0644]
catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.zip [new file with mode: 0644]
catalog-be/src/main/resources/scripts/import/tosca/importHeatTypes.py

diff --git a/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.json b/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.json
new file mode 100644 (file)
index 0000000..8c556b9
--- /dev/null
@@ -0,0 +1,21 @@
+{
+  "payloadName": "overlayTunnel.yml",
+  "contactId": "jh0003",
+  "name": "VL OVERLAYTUNNEL",
+  "description": "The node represents a overlay tunnel entity.",
+  "resourceIconPath": "network",
+  "resourceType": "VL",
+  "categories": [
+    {
+      "name": "Network Connectivity",
+      "subcategories": [
+        {
+          "name": "Virtual Links"
+        }
+      ]
+    }
+  ],
+  "tags": [
+    "VL OVERLAYTUNNEL"
+  ]
+}
diff --git a/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.yml b/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.yml
new file mode 100644 (file)
index 0000000..eb6dfae
--- /dev/null
@@ -0,0 +1,143 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: overlay L3 vpn type definitions
+
+# *****************************************************************************
+# overlay tunnel type definitions
+# *****************************************************************************
+
+metadata:
+    id: : overlayTunnelDefinition
+    version: 0.1
+    vendor: ONAP
+    template_author: ONAP
+
+# *****************************************************************************
+# node types
+# *****************************************************************************
+
+node_types:
+
+    # *****************************************************************************
+    #            Overlay tunnel service
+    # *****************************************************************************
+
+    org.openecomp.resource.vl.overlaytunnel:
+        derived_from: tosca.nodes.Root
+        description: >-
+            This entity represents abstract overlay tunnel end point.
+        properties:
+            id:
+                type: string
+                description: Identifier of the Tunnel Endpoint node.
+                required: false
+            template_name:
+                type: string
+                required: false
+            version:
+                type: string
+                required: false
+            name:
+                type: string
+                description: Overlay tunnel name used by for reference by the administrator.
+                required: false
+            description:
+                type: string
+                description: Additional comments/information about overlay tunnel.
+                required: false
+            tunnelType:
+                type: string
+                constraints:
+                      - valid_values: ['L3-DCI','L2-DCI']
+                description: type defines if the overlay tunnel is L3-DCI tunnel or L2-DCI tunnel.
+                required: true
+            site1_id:
+                type: string
+                description: Identifier of first DCI overlay tunnel endpoint. This could be IP address of domain controller.
+                required: true
+            site1_description:
+                type: string
+                description: Additional comments/information about overlay tunnel. Description can also be used to identify domain controller.
+                required: false
+            site1_networkName:
+                type: string
+                description: Name of the network that is being associated with overlay tunnel.
+                required: true
+            site1_routerId:
+                type: string
+                description: Identifier of router connected to L3 tunnel end point, while configuring L3-DCI tunnel.
+                required: false
+            site1_importRT1:
+                type: string
+                description: List of Route targets imported by the local router.
+                required: false
+            site1_exportRT1:
+                type: string
+                description: List of Route targets exported by the local router.
+                required: false
+            site1_vni:
+                type: integer
+                description: VXLAN ID
+                required: false
+            site1_fireWallEnable:
+                type: boolean
+                required: false
+                description: Identifies if a firewall exists in the path of overlay tunnel.
+                default: false
+            site1_fireWallId:
+                type: string
+                description: Identifier of Firewall that is in overlay tunnel path
+                required: false
+            site1_localNetworkAll:
+                type: boolean
+                description: Identifies whether all the local networks associate with the tunnel or not.
+                required: false
+                default: 'false'
+            site2_id:
+                type: string
+                description: Identifier of second DCI overlay tunnel endpoint. This could be IP address of domain controller.
+                required: true
+            site2_description:
+                type: string
+                description: Additional comments/information about overlay tunnel. Description can also be used to identify domain controller.
+                required: false
+            site2_networkName:
+                type: string
+                description: Name of the network that is being associated with overlay tunnel.
+                required: true
+            site2_routerId:
+                type: string
+                description: Identifier of router connected to L3 tunnel end point, while configuring L3-DCI tunnel.
+                required: false
+            site2_importRT1:
+                type: string
+                description: List of Route targets imported by the local router.
+                required: false
+            site2_exportRT1:
+                type: string
+                description: List of Route targets exported by the local router.
+                required: false
+            site2_vni:
+                type: integer
+                description: VXLAN ID
+                required: false
+            site2_fireWallEnable:
+                type: boolean
+                required: false
+                description: Identifies if a firewall exists in the path of overlay tunnel.
+                default: false
+            site2_fireWallId:
+                type: string
+                description: Identifier of Firewall that is in overlay tunnel path
+                required: false
+            site2_localNetworkAll:
+                type: boolean
+                description: Identifies whether all the local networks associate with the tunnel or not.
+                required: false
+                default: 'false'
+        requirements:
+            - virtualLink:
+                capability: tosca.capabilities.network.Linkable
+                relationship: tosca.relationships.network.LinksTo
+        capabilities:
+            virtual_linkable:
+            type: tosca.capabilities.network.Linkable
diff --git a/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.zip b/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.zip
new file mode 100644 (file)
index 0000000..99ddf49
Binary files /dev/null and b/catalog-be/src/main/resources/import/tosca/heat-types/overlayTunnel/overlayTunnel.zip differ
index 0530502..78b257d 100644 (file)
@@ -52,7 +52,8 @@ def importHeatTypes(beHost, bePort, adminUser, fileDir, updateversion):
                                  "contrailV2VLANSubInterface",
                                  "multiFlavorVFC",
                                  "vnfConfiguration",
-                                 "underlayVpn"
+                                 "underlayVpn",
+                                 "overlayTunnel"
                                  ]
                
        responseCodes = [200, 201]