heat_template_version: 2013-05-23 description: > TOSCA simple profile with 2 servers each with different attached block storage. parameters: cpus: type: number description: Number of CPUs for the server. default: 1 constraints: - allowed_values: - 1 - 2 - 4 - 8 storage_location: type: string description: Block storage mount point (filesystem path). default: /dev/vdc storage_size: type: number description: Size of the storage to be created. default: 1 storage_snapshot_id: type: string description: Optional identifier for an existing snapshot to use when creating storage. default: ssid resources: my_server: type: OS::Nova::Server properties: flavor: m1.medium image: fedora-amd64-heat-config user_data_format: SOFTWARE_CONFIG software_config_transport: POLL_SERVER_HEAT depends_on: - my_storage my_storage: type: OS::Cinder::Volume properties: size: get_param: storage_size snapshot_id: get_param: storage_snapshot_id attachesto_1: type: OS::Cinder::VolumeAttachment properties: instance_uuid: get_resource: my_server mountpoint: get_param: storage_location volume_id: get_resource: my_storage my_server2: type: OS::Nova::Server properties: flavor: m1.medium image: fedora-amd64-heat-config user_data_format: SOFTWARE_CONFIG software_config_transport: POLL_SERVER_HEAT depends_on: - my_storage2 my_storage2: type: OS::Cinder::Volume properties: size: get_param: storage_size snapshot_id: get_param: storage_snapshot_id attachesto_2: type: OS::Cinder::VolumeAttachment properties: instance_uuid: get_resource: my_server2 mountpoint: get_param: storage_location volume_id: get_resource: my_storage2 outputs: server_ip_1: description: The private IP address of the applications first server. value: get_attr: - my_server - networks server_ip_2: description: The private IP address of the applications second server. value: get_attr: - my_server2 - networks volume_id_1: description: The volume id of the first block storage instance. value: get_resource: my_storage volume_id_2: description: The volume id of the second block storage instance. value: get_resource: my_storage2