CORD-2183 Remove SDN Controller service from Spirent profile
Change-Id: I9d0807ead51783a66b20861576edfb8b8099339e
diff --git a/roles/cord-profile/templates/mcord-spirent-services.yml.j2 b/roles/cord-profile/templates/mcord-spirent-services.yml.j2
index 0b257b1..1392c20 100644
--- a/roles/cord-profile/templates/mcord-spirent-services.yml.j2
+++ b/roles/cord-profile/templates/mcord-spirent-services.yml.j2
@@ -31,6 +31,12 @@
- custom_types/networkslice.yaml
- custom_types/venbservice.yaml
- custom_types/venbserviceinstance.yaml
+ - custom_types/vspgwcservice.yaml
+ - custom_types/vspgwcvendor.yaml
+ - custom_types/vspgwctenant.yaml
+ - custom_types/vspgwuservice.yaml
+ - custom_types/vspgwuvendor.yaml
+ - custom_types/vspgwutenant.yaml
topology_template:
node_templates:
@@ -113,6 +119,12 @@
properties:
must-exist: true
name: sgi_network
+# spgw_network is for connectivity between VMs, fully created in sgi-net.yaml
+ spgw_network:
+ type: tosca.nodes.Network
+ properties:
+ must-exist: true
+ name: spgw_network
# ONOS_CORD, fully created in vtn.yaml
service#ONOS_CORD:
@@ -128,7 +140,7 @@
must-exist: true
name: ONOS_Fabric
-# CORD Services
+# vENB Service
service#venb:
type: tosca.nodes.VENBService
properties:
@@ -139,7 +151,6 @@
artifacts:
pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
-# CORD Slices
{{ site_name }}_venb:
description: vENB Service Slice
type: tosca.nodes.Slice
@@ -209,3 +220,183 @@
- slice:
node: {{ site_name }}_venb
relationship: tosca.relationships.BelongsToOne
+
+#vSPGWC Service
+ service#vspgwc:
+ type: tosca.nodes.VSPGWCService
+ properties:
+ name: vspgwc
+ public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
+ private_key_fn: /opt/xos/services/vspgwc/keys/mcord_rsa
+ artifacts:
+ pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
+
+ {{ site_name }}_vspgwc:
+ description: SDN controller slice
+ type: tosca.nodes.Slice
+ properties:
+ name: {{ site_name }}_vspgwc
+ default_isolation: vm
+ network: noauto
+ requirements:
+ - site:
+ node: mysite
+ relationship: tosca.relationships.BelongsToOne
+ - service:
+ node: service#vspgwc
+ relationship: tosca.relationships.BelongsToOne
+ - default_image:
+ node: trusty-server-multi-nic
+ relationship: tosca.relationships.BelongsToOne
+ - default_flavor:
+ node: m1.small
+ relationship: tosca.relationships.BelongsToOne
+
+ intel_vspgwc:
+ type: tosca.nodes.VSPGWCVendor
+ properties:
+ name: intel_vspgwc
+ requirements:
+ - image:
+ node: trusty-server-multi-nic
+ relationship: tosca.relationships.BelongsToOne
+ - flavor:
+ node: m1.small
+ relationship: tosca.relationships.BelongsToOne
+
+ serviceinstance#vspgwc_instance:
+ type: tosca.nodes.VSPGWCTenant
+ properties:
+ name: vspgwc_instance1
+ requirements:
+ - vspgwc_vendor:
+ node: intel_vspgwc
+ relationship: tosca.relationships.BelongsToOne
+ - owner:
+ node: service#vspgwc
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwc_slice_management_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: management
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwc
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwc_slice_s11_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: s11_network
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwc
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwc_slice_spgw_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: spgw_network
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwc
+ relationship: tosca.relationships.BelongsToOne
+
+#vSPGWU Service
+ service#vspgwu:
+ type: tosca.nodes.VSPGWUService
+ properties:
+ name: vspgwu
+ public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
+ private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
+ artifacts:
+ pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
+
+ {{ site_name }}_vspgwu:
+ description: SDN controller slice
+ type: tosca.nodes.Slice
+ properties:
+ name: {{ site_name }}_vspgwu
+ default_isolation: vm
+ network: noauto
+ requirements:
+ - site:
+ node: mysite
+ relationship: tosca.relationships.BelongsToOne
+ - service:
+ node: service#vspgwu
+ relationship: tosca.relationships.BelongsToOne
+ - default_image:
+ node: trusty-server-multi-nic
+ relationship: tosca.relationships.BelongsToOne
+ - default_flavor:
+ node: m1.small
+ relationship: tosca.relationships.BelongsToOne
+
+ intel_vspgwu:
+ type: tosca.nodes.VSPGWUVendor
+ properties:
+ name: intel_vspgwu
+ requirements:
+ - image:
+ node: trusty-server-multi-nic
+ relationship: tosca.relationships.BelongsToOne
+ - flavor:
+ node: m1.small
+ relationship: tosca.relationships.BelongsToOne
+
+ serviceinstance#vspgwu_instance:
+ type: tosca.nodes.VSPGWUTenant
+ properties:
+ name: vspgwu_instance1
+ requirements:
+ - vspgwu_vendor:
+ node: intel_vspgwu
+ relationship: tosca.relationships.BelongsToOne
+ - owner:
+ node: service#vspgwu
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwu_slice_management_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: management
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwu
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwu_slice_sgi_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: sgi_network
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwu
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwu_slice_spgw_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: spgw_network
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwu
+ relationship: tosca.relationships.BelongsToOne
+
+ vspgwu_slice_s1u_network:
+ type: tosca.nodes.NetworkSlice
+ requirements:
+ - network:
+ node: s1u_network
+ relationship: tosca.relationships.BelongsToOne
+ - slice:
+ node: {{ site_name }}_vspgwu
+ relationship: tosca.relationships.BelongsToOne
diff --git a/roles/cord-profile/templates/spgw-net.yaml.j2 b/roles/cord-profile/templates/spgw-net.yaml.j2
new file mode 100644
index 0000000..0f4739a
--- /dev/null
+++ b/roles/cord-profile/templates/spgw-net.yaml.j2
@@ -0,0 +1,56 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+imports:
+ - custom_types/xos.yaml
+ - custom_types/site.yaml
+ - custom_types/slice.yaml
+ - custom_types/flavor.yaml
+ - custom_types/network.yaml
+ - custom_types/networktemplate.yaml
+
+description: network for direct communication between SPGW-C and SPGW-U
+
+topology_template:
+ node_templates:
+
+# site, fully created in deployment.yaml
+ {{ site_name }}:
+ type: tosca.nodes.Site
+ properties:
+ name: {{ site_name }}
+
+# spgw network
+ spgw_template:
+ type: tosca.nodes.NetworkTemplate
+ properties:
+ name: spgw_template
+ visibility: private
+ translation: none
+ vtn_kind: PRIVATE
+
+ spgw_network:
+ type: tosca.nodes.Network
+ properties:
+ name: spgw_network
+ subnet: 117.0.0.0/24
+ permit_all_slices: true
+ requirements:
+ - template:
+ node: spgw_template
+ relationship: tosca.relationships.BelongsToOne
+ - owner:
+ node: {{ site_name }}_spgw
+ relationship: tosca.relationships.BelongsToOne
+
+ {{ site_name }}_spgw:
+ description: This slice exists solely to own the private network
+ type: tosca.nodes.Slice
+ properties:
+ name: {{ site_name }}_spgw
+ default_isolation: vm
+ network: noauto
+ requirements:
+ - site:
+ node: {{ site_name }}
+ relationship: tosca.relationships.BelongsToOne
+