heat_template_version: 2015-04-30 description: HOT creates Nimbus vMSP MMN stack. parameters: mmn_name_0: type: string label: MSP MMN server names description: name of the MSP MMN instances mmn_flavor_name: type: string label: MSP MMN flavor name description: MSP MMN flavor name # mmn_image_name: # type: string # label: MSP MMN image name # description: MSP MMN image name # availability_zone_0: # type: string # label: MSP MMN availability zones # description: MSP MMN availability zones sec_grp_msp_id: type: string label: security group id description: the id of security group mmn_oam_protected_ip_0: type: string label: MSP MMN OAM IP Addresses description: MSP MMN OAM IP Addresses oam_protected_net_name: type: string label: MSP MMN OAM net name description: MSP MMN OAM net name mmn_volume_name_0: type: string label: Mobisupport MSP MMN Cinder Volume names description: Mobisupport MSP MMN Cinder Volume names mmn_volume_size_0: type: number label: Mobisupport MSP MMN Cinder Volume sizes description: Mobisupport MSP MMN Cinder Volume sizes mmn_volume_image_name_0: type: string label: Mobisupport MSP MMN Cinder Volume image name description: Mobisupport MSP MMN Cinder Volume image name mmn_data_volume_id_1: type: string label: MSP MMN Volume id 1 description: MSP MMN Volume id 1 mmn_arch_volume_id_2: type: string label: MSP MMN Volume id 2 description: MSP MMN Volume id 2 mmn_backup_volume_id_3: type: string label: MSP MMN Volume id 3 description: MSP MMN Volume id 3 mmn_misc_volume_id_4: type: string label: MSP MMN Volume id 4 description: MSP MMN Volume id 4 mmn_block_device_names: type: comma_delimited_list label: MSP MMN Block Device Names description: MSP MMN Block Device Names cinder_delete_on_termination_true: type: boolean description: delete cinder volume upon instances termination cinder_delete_on_termination_false: type: boolean description: keep cinder volume upon instances termination vnf_id: type: string label: MSP MMN VNF ID description: MSP MMN VNF ID vf_module_id: type: string description: Unique ID for this VF module instance resources: ################ Cinder Volume ######################## mmn_volume_0: type: OS::Cinder::Volume properties: name: {get_param: mmn_volume_name_0} size: {get_param: mmn_volume_size_0} image: {get_param: mmn_volume_image_name_0} ################ Server ############################## mmn_zrdm5bpxmc02mmn_0: type: OS::Nova::Server properties: name: {get_param: mmn_name_0} # image: {get_param: mmn_image_name} flavor: {get_param: mmn_flavor_name} # availability_zone: {get_param: availability_zone_0} block_device_mapping_v2: - device_name: { get_param: [mmn_block_device_names, 0] } volume_id: { get_resource: mmn_volume_0 } delete_on_termination: {get_param: cinder_delete_on_termination_true} networks: - port: { get_resource: mmn_oam_protected_0_port } config_drive: "True" user_data_format: RAW user_data: get_file: user_data_zrdm5bpxmc02mmn001.txt metadata: vnf_id: {get_param: vnf_id} vf_module_id {get_param: vf_module_id} "evacuation_policy": "Evacuation" ################ Ports ############################## mmn_oam_protected_0_port: type: OS::Neutron::Port properties: network: {get_param: oam_protected_net_name} fixed_ips: [{"ip_address": {get_param: mmn_oam_protected_ip_0}}] security_groups: [{ get_param: sec_grp_msp_id }] replacement_policy: AUTO ################ Volume Attachment ############################## volume_attachment_vdb: type: OS::Cinder::VolumeAttachment depends_on: mmn_zrdm5bpxmc02mmn_0 properties: volume_id: { get_param: mmn_data_volume_id_1 } instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0} mountpoint: /dev/vdb volume_attachment_vdc: type: OS::Cinder::VolumeAttachment depends_on: volume_attachment_vdb properties: volume_id: { get_param: mmn_arch_volume_id_2 } instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0} mountpoint: /dev/vdc volume_attachment_vdd: type: OS::Cinder::VolumeAttachment depends_on: volume_attachment_vdc properties: volume_id: { get_param: mmn_backup_volume_id_3 } instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0} mountpoint: /dev/vdd volume_attachment_vde: type: OS::Cinder::VolumeAttachment depends_on: volume_attachment_vdd properties: volume_id: { get_param: mmn_misc_volume_id_4 } instance_uuid: { get_resource: mmn_zrdm5bpxmc02mmn_0} mountpoint: /dev/vde