Define SDC model to configure VXLAN tunnel 43/16143/1
authorMichael Lando <ml636r@att.com>
Wed, 27 Sep 2017 23:24:45 +0000 (02:24 +0300)
committerMichael Lando <ml636r@att.com>
Wed, 27 Sep 2017 23:30:40 +0000 (02:30 +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.

Change-Id: Idff16d823abb103b1a6df268d69dd81d7fe92f56
Issue-Id: SDC-342
Signed-off-by: Michael Lando <ml636r@att.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]