############################################################################## # Copyright (c) 2017 Huawei Technologies Co.,Ltd and others. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## tosca_definitions_version:tosca_simple_yaml_1_0_0 description: This module defines a VNF Deployment Unit. import: metadata: ID: clearwater Vendor: HP dsl_definitions: compute_props_host_ellis: &compute_props_host_ellis num_cpu: 4 mem_size: 4096 compute_props_host_bono: &compute_props_host_bono num_cpu: 3 mem_size: 2048 node_types: tosca.nodes.compute.ellis: derived_from: tosca.nodes.compute tosca.nodes.compute.bono: derived_from: tosca.nodes.compute topology_template: # A description of the topology template description: > Vdus used in a vnfd inputs: storage_size: type: scalar-unit.size default: 2048 description: The required storage resource default: 3000 description: The required storage resource storage_location: type: string description: > Block storage mount point (filesystem path). node_templates: ellis: type: tosca.nodes.Compute capabilities: os: properties: architecture: type: distribution: version: host: properties: *compute_props_host_ellis scalable: properties: min_instances: 1 default_instances: 1 requirements: - local_storage: node: ellis_BlockStorage relationship: type: AttachesTo properties: location: { get_input:storage_location } interfaces: Standard: start: implementation: start.sh delete: implementaion: stop.sh stop: implementaion: shutdown.sh ellis_BlockStorage: type: tosca.nodes.BlockStorage properties: size: { get_input:storage_size } bono: type: tosca.nodes.Compute capabilities: os: properties: architecture: type: distribution: version: host: properties: *compute_props_host_bono scalable: properties: min_instances: 3 default_instances: 3 requirements: - local_storage: node: bono_BlockStorage relationship: type: AttachesTo properties: location: { get_input:storage_location } interfaces: Standard: start: implementation: start.sh delete: implementaion: stop.sh stop: implementaion: shutdown.sh bono_BlockStorage: type: tosca.nodes.BlockStorage properties: size: { get_input:storage_size } clearwater_network1: type:tosca.nodes.network.Network properties: ip_version:4 ellis_port1: type:tosca.nodes.network.Port requirements: - binding: node:ellis - link: node:clearwater_network1 clearwater_network2: type:tosca.nodes.network.Network properties: ip_version:4 ellis_port2: type:tosca.nodes.network.Port requirements: - binding: node:ellis - link: node:clearwater_network2 clearwater_network1: type:tosca.nodes.network.Network properties: ip_version:4 bono_port1: type:tosca.nodes.network.Port requirements: - binding: node:bono - link: node:clearwater_network1 clearwater_network2: type:tosca.nodes.network.Network properties: ip_version:4 bono_port2: type:tosca.nodes.network.Port requirements: - binding: node:bono - link: node:clearwater_network2