summaryrefslogtreecommitdiffstats
path: root/nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml')
-rw-r--r--nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml593
1 files changed, 593 insertions, 0 deletions
diff --git a/nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml b/nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml
new file mode 100644
index 00000000..76ed67ce
--- /dev/null
+++ b/nokiav2/driver/src/test/resources/unittests/maria.vnfd.scalable.tosca.nated.yaml
@@ -0,0 +1,593 @@
+tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0_nokia
+
+topology_template:
+ substitution_mappings:
+ node_type: tosca.nodes.nfv.VNF
+ properties:
+ descriptor_id: Nokia~Maria DB~1.0~1.0
+ descriptor_version: '1.0'
+ provider: Nokia
+ product_name: Maria DB
+ software_version: '1.0'
+ product_info_name: Maria DB
+ product_info_description: Relational database, non-scalable
+ vnfm_info:
+ - CBAM
+ requirements:
+ - virtual_link: [ dbBackendIpv4, external_virtual_link ] # IPv4 for SQL
+ - virtual_link: [ dbBackendIpv6, external_virtual_link ] # IPv6 for SQL
+ - virtual_link: [ serviceNodeIpv4, external_virtual_link ] # IPv4 for SSH
+ - virtual_link: [ loadBalancer, external_virtual_link ] # IPv4 for SQL (load balanced)
+ capabilities:
+ deployment_flavour:
+ properties:
+ flavour_id: scalable
+ description: ..
+ scaling_aspects:
+ dbBackendAspect:
+ name: ..
+ description: ..
+ associated_group: dbBackendScalingGroup
+ max_scale_level: 8
+ serviceNodeAspect:
+ name: ..
+ description: ..
+ associated_group: serviceNodeScalingGroup
+ max_scale_level: 3
+ instantiation_levels:
+ small:
+ description: ..
+ vdu_levels:
+ dbBackend:
+ number_of_instances: 3
+ serviceNode:
+ number_of_instances: 2
+ scale_info:
+ dbBackendAspect:
+ scale_level: 0
+ serviceNodeAspect:
+ scale_level: 1
+ medium:
+ description: ..
+ vdu_levels:
+ dbBackend:
+ number_of_instances: 4
+ serviceNode:
+ number_of_instances: 2
+ scale_info:
+ dbBackendAspect:
+ scale_level: 1
+ serviceNodeAspect:
+ scale_level: 1
+ large:
+ description: ..
+ vdu_levels:
+ dbBackend:
+ number_of_instances: 5
+ serviceNode:
+ number_of_instances: 4
+ scale_info:
+ dbBackendAspect:
+ scale_level: 2
+ serviceNodeAspect:
+ scale_level: 2
+ default_instantiation_level_id: small
+ vdu_profile:
+ dbBackend:
+ min_number_of_instances: 3
+ max_number_of_instances: 11
+ serviceNode:
+ min_number_of_instances: 0
+ max_number_of_instances: 6
+ vnf:
+ properties:
+ modifiable_attributes:
+ extensions:
+ http_proxy:
+ default: "http://87.254.212.120:8080"
+ https_proxy:
+ default: "https://87.254.212.120:8080"
+ no_proxy:
+ default: "10.41.49.231,10.41.49.5"
+ mysqlPassword:
+ default: "password"
+ mysqlUsername:
+ default: "mysql"
+ loginUsername:
+ default: "ubuntu"
+ rhel_yum_repository_host:
+ default: "http://10.41.49.231/mirror/rhel-7-server-rpms/"
+ ubuntu_repository_host:
+ default: "deb [arch=amd64] http://10.41.49.5/cobbler/repo_mirror/ubuntu-16.04-x86_64/ xenial main universe"
+ mariadb_rhel_repo_host:
+# default: "http://yum.mariadb.org/10.0/rhel7-amd64"
+ default: "http://10.41.49.5/cobbler/repo_mirror/mariadb-10.0-el7-x86_64/"
+ mariadb_ubuntu_repo_host:
+# default: "deb http://mirror.netinch.com/pub/mariadb/repo/10.0/ubuntu trusty main"
+ default: "deb [arch=amd64] http://10.41.49.5/cobbler/repo_mirror/ubuntu-mariadb-10.0-x86_64/ xenial main"
+ custom_backend_root_volume_size:
+ default: "10"
+ dry_run:
+ default: "false"
+ interfaces:
+ Basic:
+ instantiate:
+ inputs:
+ extensions:
+ pre_actions:
+ - javascript: javascript/scalable_instantiate_hot_params.js
+ include:
+ - javascript/scalable_prepare_cbam_include.js
+ output: stack_parameters
+ - javascript: javascript/cbam.pre.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ post_actions:
+ - javascript: javascript/workaround_inventory_on_kilo.js
+ output: ansible_inventory
+ - ansible: ansible/playbook-scalable.yml
+ - javascript: javascript/cbam.post.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ additional_parameters:
+ jobId: onapJobId
+ terminate:
+ inputs:
+ extensions:
+ pre_actions:
+ - javascript: javascript/cbam.pre.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ post_actions:
+ - javascript: javascript/cbam.post.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ additional_parameters:
+ jobId: onapJobId
+ Scalable:
+ scale:
+ inputs:
+ extensions:
+ pre_actions:
+ - javascript: javascript/scalable_instantiate_hot_params.js
+ include:
+ - javascript/scalable_prepare_cbam_include.js
+ output: stack_parameters
+ - ansible: ansible/playbook-scalable-scale-in.yml
+ - javascript: javascript/cbam.pre.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ post_actions:
+ - javascript: javascript/workaround_inventory_on_kilo.js
+ output: ansible_inventory
+ - ansible: ansible/playbook-scalable.yml
+ - javascript: javascript/cbam.post.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ additional_parameters:
+ jobId: onapJobId
+ Healable:
+ heal:
+ implementation: mistral-workbooks/heal_workbook.yaml
+ inputs:
+ extensions:
+ pre_actions:
+ - javascript: javascript/cbam.pre.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ post_actions:
+ - javascript: javascript/cbam.post.collectConnectionPoints.js
+ include:
+ - javascript/cbam.collectConnectionPoints.js
+ output: operation_result
+ additional_parameters:
+ vmName: null
+ action: null
+ jobId: onapJobId
+ Custom:
+ upgrade:
+ implementation: mistral-workbooks/upgrade_workbook.yaml
+ inputs:
+ additional_parameters:
+ imageId: ubuntu.16.04
+ jobId: onapJobId
+ node_templates:
+ dbBackend:
+ type: tosca.nodes.nfv.VDU
+ properties:
+ description: ..
+ configurable_properties:
+ additional_vnfc_configurable_properties: {}
+ boot_order:
+ - rootVolume
+ requirements:
+ - virtual_compute: dbBackendCompute
+ - virtual_storage: rootVolume
+ - virtual_storage: dataVolume
+ - sw_image: mariaDbImage #FIXME
+
+ serviceNode:
+ type: tosca.nodes.nfv.VDU
+ properties:
+ description: ..
+ configurable_properties:
+ additional_vnfc_configurable_properties: {}
+ requirements:
+ - virtual_compute: serviceNodeCompute
+ - sw_image: mariaDbImage
+
+ dbBackendCompute:
+ type: tosca.nodes.nfv.VirtualCompute
+ properties:
+ virtual_memory:
+ virtual_mem_size: 8096 MB
+ virtual_cpu:
+ cpu_architecture: x86
+ num_virtual_cpu: 2
+ virtual_cpu_clock: 1800 MHz
+
+ serviceNodeCompute:
+ type: tosca.nodes.nfv.VirtualCompute
+ properties:
+ virtual_memory:
+ virtual_mem_size: 8096 MB
+ virtual_cpu:
+ cpu_architecture: x86
+ num_virtual_cpu: 2
+ virtual_cpu_clock: 1800 MHz
+
+ rootVolume:
+ type: tosca.nodes.nfv.VirtualStorage
+ properties:
+ type_of_storage: volume
+ size_of_storage: 10 GB
+ #rdma_enabled: false
+ requirements:
+ - sw_image: mariaDbImage
+
+ dataVolume:
+ type: tosca.nodes.nfv.VirtualStorage
+ properties:
+ type_of_storage: volume
+ size_of_storage: 1 GB
+ #rdma_enabled: false
+ requirements:
+ - sw_image: mariaDbImage
+
+ mariaDbImage:
+ type: tosca.nodes.nfv.SwImage
+ properties:
+ name: Software of Maria Db
+ version: 1.0
+ checksum: 9af30fce37a4c5c831e095745744d6d2
+ container_format: qcow2
+ disk_format: bare
+ # the ubuntu image is minimum 4GB the Centos is minimum 8 GB ?
+ min_disk: 10 GB
+ min_ram: 8096 MB
+ size: 10 GB
+ sw_image: maria.db.image.v1.0.qcow2
+ operating_system: Linux
+ supported_virtualisation_environments:
+ - KVM
+
+ dbBackendCpOnIpv4:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: Connection point to access the DB on IPv4 externally
+ requirements:
+ - virtual_binding: dbBackend
+ - virtual_link: internalNetworkForFloatingIp
+
+ dbBackendCpOnIpv6:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv6
+ role: leaf
+ description: Connection point to access the DB on IPv6 externally
+ requirements:
+ - virtual_binding: dbBackend
+ #- virtual_link: the CP is connected to the core network (IPv6)
+
+ dbBackendCpOnIpv4Redundancy1:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: Connection point for DB replication
+ requirements:
+ - virtual_binding: dbBackend
+ - virtual_link: internalReplicationNetwork1
+
+ dbBackendCpOnIpv4Redundancy2:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: Connection point for DB replication
+ requirements:
+ - virtual_binding: dbBackend
+ - virtual_link: internalReplicationNetwork2
+
+ dbBackendExternallyManagedCp:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv6
+ role: leaf
+ description: Connection point to access the DB on IPv6 externally
+ requirements:
+ - virtual_binding: dbBackend
+ - virtual_link: extManagedVl
+
+ serviceNodeCp:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: Connection point to access the DB on IPv4 externally
+ requirements:
+ - virtual_binding: serviceNode
+ - virtual_link: internalNetworkForFloatingIp
+
+ serviceNodeExternallyManagedCp:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: External connection point to access the DB on IPv4
+ requirements:
+ - virtual_binding: dbBackend
+ - virtual_link: extManagedVl
+
+ movingIpCp:
+ type: tosca.nodes.nfv.ICP
+ properties:
+ layer_protocol: ipv4
+ role: leaf
+ description: Moving IP
+ requirements:
+ #- virtual_binding: # no corresponding VDU
+ - virtual_link: internalNetworkForFloatingIp
+ internalNetworkForFloatingIp:
+ type: tosca.nodes.nfv.VL
+ properties:
+ connectivity_type:
+ layer_protocol: ipv4
+ flow_pattern: mesh
+ vl_flavours: {}
+
+ internalReplicationNetwork1:
+ type: tosca.nodes.nfv.VL
+ properties:
+ connectivity_type:
+ layer_protocol: ipv4
+ flow_pattern: mesh
+ test_access: []
+ description: ..
+ vl_flavours: {}
+
+ internalReplicationNetwork2:
+ type: tosca.nodes.nfv.VL
+ properties:
+ connectivity_type:
+ layer_protocol: ipv4
+ flow_pattern: mesh
+ test_access: []
+ description: ..
+ vl_flavours: {}
+
+ extManagedVl:
+ type: tosca.nodes.nfv.VL
+ properties:
+ connectivity_type:
+ layer_protocol: ipv4
+ flow_pattern: mesh
+ test_access: []
+ description: ..
+ vl_flavours: {}
+
+ dbBackendIpv4:
+ type: tosca.nodes.nfv.ECP
+ properties:
+ layer_protocol: ipv4
+ requirements:
+ - internal_connection_point: dbBackendCpOnIpv4
+ #- external_virtual_link: # exposed on VNF boundary
+
+ dbBackendIpv6:
+ type: tosca.nodes.nfv.ECP
+ properties:
+ layer_protocol: ipv6
+ requirements:
+ - internal_connection_point: dbBackendCpOnIpv6
+ #- external_virtual_link: # exposed on VNF boundary
+
+ serviceNodeIpv4:
+ type: tosca.nodes.nfv.ECP
+ properties:
+ layer_protocol: ipv4
+ requirements:
+ - internal_connection_point: serviceNodeCp
+ #- external_virtual_link: # exposed on VNF boundary
+
+ loadBalancer:
+ type: tosca.nodes.nfv.ECP
+ properties:
+ layer_protocol: ipv4
+ requirements:
+ - internal_connection_point: movingIpCp
+ #- external_virtual_link: # exposed on VNF boundary
+
+ groups:
+ dbBackendScalingGroup:
+ type: tosca.groups.nfv.ElementGroup
+ description: ..
+ members: [ dbBackend ]
+
+ serviceNodeScalingGroup:
+ type: tosca.groups.nfv.ElementGroup
+ description: ..
+ members: [ serviceNode ]
+
+ policies:
+ - service_node_anti_affinity:
+ type: tosca.policies.nfv.ScalingStepLocalAntiAffinity
+ targets: [ serviceNode ]
+ properties:
+ scope: nfvi_node
+
+ - backend_node_anti_affinity:
+ type: tosca.policies.nfv.LocalAntiAffinity
+ targets: [ dbBackend ]
+ properties:
+ scope: nfvi_node
+
+ - nfvi_affinity:
+ type: tosca.policies.nfv.LocalAffinity
+ targets: [ dbBackend ]
+ properties:
+ scope: nfvi
+
+ - zone_affinity:
+ type: tosca.policies.nfv.LocalAffinity
+ targets: [ dbBackend ]
+ properties:
+ scope: resource_zone_group
+
+ - commissioning:
+ type: tosca.policies.nfv.Commissioning #FIXME
+ properties:
+ connection_points:
+ - dbBackendIpv6
+ - serviceNodeIpv4
+
+ - heat_mapping:
+ type: tosca.policies.nfv.HeatMapping
+ properties:
+ template:
+ hotPath: hot/
+ main: maria.hot.scalable.main.nated.yaml
+ nested:
+ - maria.hot.common.nated.yaml
+ - maria.hot.scalable.service.scaling.nated.yaml
+ - maria.hot.scalable.service.static.nated.yaml
+ - maria.hot.scalable.service.nated.yaml
+ - maria.hot.scalable.backend.static.nated.yaml
+ - maria.hot.scalable.backend.single.nated.yaml
+ - maria.hot.scalable.backend.nated.yaml
+ - maria.hot.scalable.backend.single.wrapper.nated.yaml
+ - maria.hot.scalable.backend.wrapper.nated.yaml
+# environment:
+ static:
+ virtualLinks:
+ internalReplicationNetwork1: db_backend_static.replication_network_1
+ internalReplicationNetwork2: db_backend_static.replication_network_2
+ internalNetworkForFloatingIp: common_resources.internal_network_for_floatingip
+ vdus:
+ dbBackend:
+ - heatResource: db_backend_static.static_node_0.wrapper_rg.0.server
+ connectionPoints:
+ dbBackendCpOnIpv4: db_backend_static.static_node_0.wrapper_rg.0.port_ipv4_nated
+ dbBackendCpOnIpv6: db_backend_static.static_node_0.wrapper_rg.0.port_ipv6
+ dbBackendCpOnIpv4Redundancy1: db_backend_static.static_node_0.wrapper_rg.0.port_replication_1
+ dbBackendCpOnIpv4Redundancy2: db_backend_static.static_node_0.wrapper_rg.0.port_replication_2
+ dbBackendExternallyManagedCp: db_backend_static.static_node_0.wrapper_rg.0.port_internal_ext_managed
+ virtualStorages:
+ rootVolume: db_backend_static.static_node_0.wrapper_rg.0.volume_root
+ dataVolume: db_backend_static.static_node_0.wrapper_rg.0.volume_data
+ externalConnectionPoints:
+ dbBackendIpv4:
+ - db_backend_static.static_node_0.wrapper_rg.0.floating_ip
+ dbBackendIpv6:
+ - db_backend_static.static_node_0.wrapper_rg.0.port_ipv6
+ - heatResource: db_backend_static.static_node_1.wrapper_rg.0.server
+ connectionPoints:
+ dbBackendCpOnIpv4: db_backend_static.static_node_1.wrapper_rg.0.port_ipv4_nated
+ dbBackendCpOnIpv6: db_backend_static.static_node_1.wrapper_rg.0.port_ipv6
+ dbBackendCpOnIpv4Redundancy1: db_backend_static.static_node_1.wrapper_rg.0.port_replication_1
+ dbBackendCpOnIpv4Redundancy2: db_backend_static.static_node_1.wrapper_rg.0.port_replication_2
+ dbBackendExternallyManagedCp: db_backend_static.static_node_1.wrapper_rg.0.port_internal_ext_managed
+ virtualStorages:
+ rootVolume: db_backend_static.static_node_1.wrapper_rg.0.volume_root
+ dataVolume: db_backend_static.static_node_1.wrapper_rg.0.volume_data
+ externalConnectionPoints:
+ dbBackendIpv4:
+ - db_backend_static.static_node_1.wrapper_rg.0.floating_ip
+ dbBackendIpv6:
+ - db_backend_static.static_node_1.wrapper_rg.0.port_ipv6
+ - heatResource: db_backend_static.static_node_2.wrapper_rg.0.server
+ connectionPoints:
+ dbBackendCpOnIpv4: db_backend_static.static_node_2.wrapper_rg.0.port_ipv4_nated
+ dbBackendCpOnIpv6: db_backend_static.static_node_2.wrapper_rg.0.port_ipv6
+ dbBackendCpOnIpv4Redundancy1: db_backend_static.static_node_2.wrapper_rg.0.port_replication_1
+ dbBackendCpOnIpv4Redundancy2: db_backend_static.static_node_2.wrapper_rg.0.port_replication_2
+ dbBackendExternallyManagedCp: db_backend_static.static_node_2.wrapper_rg.0.port_internal_ext_managed
+ virtualStorages:
+ rootVolume: db_backend_static.static_node_2.wrapper_rg.0.volume_root
+ dataVolume: db_backend_static.static_node_2.wrapper_rg.0.volume_data
+ externalConnectionPoints:
+ dbBackendIpv4:
+ - db_backend_static.static_node_2.wrapper_rg.0.floating_ip
+ dbBackendIpv6:
+ - db_backend_static.static_node_2.wrapper_rg.0.port_ipv6
+ externalConnectionPoints:
+ loadBalancer:
+ - service_node_static.moving_ip_floating_ip
+ aspects:
+ dbBackendAspect:
+ heatResource: db_backend_aspect_group
+ vdus:
+ dbBackend:
+ - heatResource: wrapper_rg.0.server
+ connectionPoints:
+ dbBackendCpOnIpv4: wrapper_rg.0.port_ipv4_nated
+ dbBackendCpOnIpv6: wrapper_rg.0.port_ipv6
+ dbBackendCpOnIpv4Redundancy1: wrapper_rg.0.port_replication_1
+ dbBackendCpOnIpv4Redundancy2: wrapper_rg.0.port_replication_2
+ dbBackendExternallyManagedCp: wrapper_rg.0.port_internal_ext_managed
+ virtualStorages:
+ rootVolume: wrapper_rg.0.volume_root
+ dataVolume: wrapper_rg.0.volume_data
+ externalConnectionPoints:
+ dbBackendIpv4:
+ - wrapper_rg.0.floating_ip
+ dbBackendIpv6:
+ - wrapper_rg.0.port_ipv6
+ serviceNodeAspect:
+ heatResource: service_node_aspect_group
+ affinity:
+ local:
+ - type: same
+ place: vim
+ resources: [node_a.server, node_b.server]
+ - type: same
+ place: zone
+ resources: [node_a.server, node_b.server]
+ - type: different
+ place: host
+ resources: [node_a.server, node_b.server]
+ vdus:
+ serviceNode:
+ - heatResource: node_a.server
+ connectionPoints:
+ serviceNodeCp: node_a.port_ipv4_nated
+ serviceNodeExternallyManagedCp: node_a.port_internal_ext_managed
+ externalConnectionPoints:
+ serviceNodeIpv4:
+ - node_a.floating_ip
+ - heatResource: node_b.server
+ connectionPoints:
+ serviceNodeCp: node_b.port_ipv4_nated
+ serviceNodeExternallyManagedCp: node_b.port_internal_ext_managed
+ externalConnectionPoints:
+ serviceNodeIpv4:
+ - node_b.floating_ip