| heat_template_version: 2013-05-23 |
| ################################# |
| # |
| # Changes in v0.2: |
| # - Unique availability zone for each VM |
| # - LAN8 and SLAN networks removed according to latest Prod/Type I diagram |
| # - 2 DB VMs added |
| # - Images corrected |
| # - VM start-up order: SMP->DB->BE->FE (no error handling yet) |
| # - Provisioning scripts placeholders |
| # |
| ################################# |
| |
| description: ASC Template |
| |
| parameters: |
| # availability_zone_smp0: |
| # type: string |
| # default: nova |
| # availability_zone_smp1: |
| # type: string |
| # default: nova |
| # availability_zone_fe0: |
| # type: string |
| # default: nova |
| # availability_zone_fe1: |
| # type: string |
| # default: nova |
| # availability_zone_db0: |
| # type: string |
| # default: nova |
| # availability_zone_db1: |
| # type: string |
| # default: nova |
| # availability_zone_be0: |
| # type: string |
| # default: nova |
| # availability_zone_be1: |
| # type: string |
| # default: nova |
| # availability_zone_be2: |
| # type: string |
| # default: nova |
| # availability_zone_be3: |
| # type: string |
| # default: nova |
| # availability_zone_be4: |
| # type: string |
| # default: nova |
| |
| vnf_name: |
| type: string |
| description: Unique name for this VNF instance |
| default: This_is_the_SCP_name |
| vnf_id: |
| type: string |
| description: Unique ID for this VNF instance |
| default: This_is_ths_SCP_id |
| |
| flavor_scp_be_id: |
| type: string |
| description: flavor type |
| default: a1.Small |
| flavor_scp_fe_id: |
| type: string |
| description: flavor type |
| default: a1.Small |
| flavor_smp_id: |
| type: string |
| description: flavor type |
| default: a1.Small |
| flavor_db_id: |
| type: string |
| description: flavor type |
| default: a1.Small |
| image_scp_be_id: |
| type: string |
| description: Image use to boot a server |
| default: asc_base_image_be |
| image_scp_fe_id: |
| type: string |
| description: Image use to boot a server |
| default: asc_base_image_fe |
| image_smp_id: |
| type: string |
| description: Image use to boot a server |
| default: asc_base_image_smp |
| image_db_id: |
| type: string |
| description: Image use to boot a server |
| default: asc_base_image_db |
| |
| int_vscp_fe_cluster_net_id: |
| type: string |
| description: LAN2 FE Cluster/KA |
| int_vscp_fe_cluster_cidr: |
| type: string |
| description: Private Network2 Address (CIDR notation) |
| int_vscp_cluster_net_id: |
| type: string |
| description: LAN3 Cluster |
| int_vscp_cluster_cidr: |
| type: string |
| description: Private Network3 Address (CIDR notation) |
| int_vscp_db_network_net_id: |
| type: string |
| description: LAN4 DB |
| int_vscp_db_network_cidr: |
| type: string |
| description: Private Network4 Address (CIDR notation) |
| SIGNET_vrf_A1_direct_net_id: |
| type: string |
| description: Network name for SIGTRAN_A |
| SIGNET_vrf_B1_direct_net_id: |
| type: string |
| description: Network name for SIGTRAN_B |
| Cricket_OCS_protected_net_id: |
| type: string |
| description: Network name for CRICKET_OCS |
| OAM_direct_net_id: |
| type: string |
| description: Network name for OAM |
| be0_Cricket_OCS_protected_ips: |
| type: string |
| label: be0 port 5 OAM ip address |
| description: be0 port 5 OAM ip address |
| be1_Cricket_OCS_protected_ips: |
| type: string |
| label: be1 port 5 OAM ip address |
| description: be1 port 5 OAM ip address |
| be2_Cricket_OCS_protected_ips: |
| type: string |
| label: be2 port 5 OAM ip address |
| description: be2 port 5 OAM ip address |
| be3_Cricket_OCS_protected_ips: |
| type: string |
| label: be3 port 5 OAM ip address |
| description: be3 port 5 OAM ip address |
| be4_Cricket_OCS_protected_ips: |
| type: string |
| label: be4 port 5 OAM ip address |
| description: be4 port 5 OAM ip address |
| be0_OAM_direct_ips: |
| type: string |
| label: be0 port 7 OAM ip address |
| description: be0 port 7 OAM ip address |
| be1_OAM_direct_ips: |
| type: string |
| label: be1 port 7 OAM ip address |
| description: be1 port 7 OAM ip address |
| be2_OAM_direct_ips: |
| type: string |
| label: be2 port 7 OAM ip address |
| description: be2 port 7 OAM ip address |
| be3_OAM_direct_ips: |
| type: string |
| label: be3 port 7 OAM ip address |
| description: be3 port 7 OAM ip address |
| be4_OAM_direct_ips: |
| type: string |
| label: be4 port 7 OAM ip address |
| description: be4 port 7 OAM ip address |
| fe0_SIGNET_vrf_A1_direct_ips: |
| type: string |
| label: fe0 port 0 SIGTRAN ip address |
| description: fe0 port 0 SIGTRAN ip address |
| fe0_OAM_direct_ips: |
| type: string |
| label: fe0 port 7 OAM ip address |
| description: fe0 port 7 OAM ip address |
| fe1_SIGNET_vrf_B1_direct_ips: |
| type: string |
| label: fe1 port 1 SIGTRAN ip address |
| description: fe1 port 1 SIGTRAN ip address |
| fe1_OAM_direct_ips: |
| type: string |
| label: fe1 port 7 OAM ip address |
| description: fe1 port 7 OAM ip address |
| smp0_OAM_direct_ips: |
| type: string |
| label: smp0 port 7 OAM ip address |
| description: smp0 port 7 OAM ip address |
| smp1_OAM_direct_ips: |
| type: string |
| label: smp1 port 7 OAM ip address |
| description: smp1 port 7 OAM ip address |
| db0_OAM_direct_ips: |
| type: string |
| label: db0 port 7 OAM ip address |
| description: smp0 port 7 OAM ip address |
| db1_OAM_direct_ips: |
| type: string |
| label: smp1 port 7 OAM ip address |
| description: db1 port 7 OAM ip address |
| vm_scp_be0_name: |
| type: string |
| default: vSCP_BE0 |
| description: name of VM |
| vm_scp_be1_name: |
| type: string |
| default: vSCP_BE1 |
| description: name of VM |
| vm_scp_be2_name: |
| type: string |
| default: vSCP_BE2 |
| description: name of VM |
| vm_scp_be3_name: |
| type: string |
| default: vSCP_BE3 |
| description: name of VM |
| vm_scp_be4_name: |
| type: string |
| default: vSCP_BE4 |
| description: name of VM |
| vm_scp_fe0_name: |
| type: string |
| default: vSCP_FE0 |
| description: name of VM |
| vm_scp_fe1_name: |
| type: string |
| default: vSCP_FE1 |
| description: name of VM |
| vm_smp0_name: |
| type: string |
| default: vSMP0 |
| description: name of VM |
| vm_smp1_name: |
| type: string |
| default: vSMP1 |
| description: name of VM |
| vm_db0_name: |
| type: string |
| default: vDB0 |
| description: name of VM |
| vm_db1_name: |
| type: string |
| default: vDB1 |
| description: name of VM |
| |
| resources: |
| # scp_be_wait_condition: |
| # type: OS::Heat::WaitCondition |
| # properties: |
| # handle: { get_resource: scp_be_wait_handle } |
| # count: 5 |
| # timeout: 300 |
| # scp_be_wait_handle: |
| # type: OS::Heat::WaitConditionHandle |
| # |
| # scp_fe_wait_condition: |
| # type: OS::Heat::WaitCondition |
| # properties: |
| # handle: { get_resource: scp_fe_wait_handle } |
| # count: 2 |
| # timeout: 300 |
| # scp_fe_wait_handle: |
| # type: OS::Heat::WaitConditionHandle |
| # |
| # smp_wait_condition: |
| # type: OS::Heat::WaitCondition |
| # properties: |
| # handle: { get_resource: smp_wait_handle } |
| # count: 2 |
| # timeout: 300 |
| # smp_wait_handle: |
| # type: OS::Heat::WaitConditionHandle |
| # |
| # db_wait_condition: |
| # type: OS::Heat::WaitCondition |
| # properties: |
| # handle: { get_resource: db_wait_handle } |
| # count: 2 |
| # timeout: 300 |
| # db_wait_handle: |
| # type: OS::Heat::WaitConditionHandle |
| |
| FE_Affinity: |
| type: OS::Nova::ServerGroup |
| properties: |
| policies: ["anti-affinity"] |
| BE_Affinity: |
| type: OS::Nova::ServerGroup |
| properties: |
| policies: ["anti-affinity"] |
| SMP_Affinity: |
| type: OS::Nova::ServerGroup |
| properties: |
| policies: ["anti-affinity"] |
| DB_Affinity: |
| type: OS::Nova::ServerGroup |
| properties: |
| policies: ["anti-affinity"] |
| |
| FE_Clustering_KA: |
| type: OS::Contrail::VirtualNetwork |
| properties: |
| name: { get_param: int_vscp_fe_cluster_net_id } |
| |
| FE_Clustering_subnet: |
| type: OS::Neutron::Subnet |
| properties: |
| network_id: { get_resource: FE_Clustering_KA } |
| cidr: { get_param: int_vscp_fe_cluster_cidr } |
| |
| Clustering_Network: |
| type: OS::Contrail::VirtualNetwork |
| properties: |
| name: { get_param: int_vscp_cluster_net_id } |
| |
| Clustering_Network_subnet: |
| type: OS::Neutron::Subnet |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| cidr: { get_param: int_vscp_cluster_cidr } |
| |
| DB_Network: |
| type: OS::Contrail::VirtualNetwork |
| properties: |
| name: { get_param: int_vscp_db_network_net_id } |
| |
| DB_Network_subnet: |
| type: OS::Neutron::Subnet |
| properties: |
| network_id: { get_resource: DB_Network } |
| cidr: { get_param: int_vscp_db_network_cidr } |
| |
| server_scp_be0: |
| type: OS::Nova::Server |
| # depends on: db_wait_condition |
| properties: |
| name: { get_param: vm_scp_be0_name } |
| image: { get_param: image_scp_be_id } |
| # availability_zone: { get_param: availability_zone_be0 } |
| flavor: { get_param: flavor_scp_be_id } |
| scheduler_hints: { group: { get_resource: BE_Affinity } } |
| networks: |
| - port: { get_resource: be0_port_3 } |
| - port: { get_resource: be0_port_4 } |
| - port: { get_resource: be0_port_5 } |
| - port: { get_resource: be0_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_be0_name} |
| # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } |
| be0_port_2: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be0_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be0_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| be0_port_5: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: Cricket_OCS_protected_net_id } |
| fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] |
| |
| be0_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] |
| |
| server_scp_be1: |
| type: OS::Nova::Server |
| # depends on: db_wait_condition |
| properties: |
| name: { get_param: vm_scp_be1_name } |
| image: { get_param: image_scp_be_id } |
| # availability_zone: { get_param: availability_zone_be1 } |
| flavor: { get_param: flavor_scp_be_id } |
| scheduler_hints: { group: { get_resource: BE_Affinity } } |
| networks: |
| - port: { get_resource: be1_port_3 } |
| - port: { get_resource: be1_port_4 } |
| - port: { get_resource: be1_port_5 } |
| - port: { get_resource: be1_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_be1_name} |
| # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } |
| |
| be1_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be1_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| be1_port_5: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: Cricket_OCS_protected_net_id } |
| fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] |
| |
| be1_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] |
| |
| server_scp_be2: |
| type: OS::Nova::Server |
| # depends on: db_wait_condition |
| properties: |
| name: { get_param: vm_scp_be2_name } |
| image: { get_param: image_scp_be_id } |
| # availability_zone: { get_param: availability_zone_be2 } |
| flavor: { get_param: flavor_scp_be_id } |
| scheduler_hints: { group: { get_resource: BE_Affinity } } |
| networks: |
| - port: { get_resource: be2_port_3 } |
| - port: { get_resource: be2_port_4 } |
| - port: { get_resource: be2_port_5 } |
| - port: { get_resource: be2_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_be2_name} |
| # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } |
| |
| be2_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be2_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| be2_port_5: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: Cricket_OCS_protected_net_id } |
| fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] |
| |
| be2_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] |
| |
| server_scp_be3: |
| type: OS::Nova::Server |
| # depends on: db_wait_condition |
| properties: |
| name: { get_param: vm_scp_be3_name } |
| image: { get_param: image_scp_be_id } |
| # availability_zone: { get_param: availability_zone_be3 } |
| flavor: { get_param: flavor_scp_be_id } |
| scheduler_hints: { group: { get_resource: BE_Affinity } } |
| networks: |
| - port: { get_resource: be3_port_3 } |
| - port: { get_resource: be3_port_4 } |
| - port: { get_resource: be3_port_5 } |
| - port: { get_resource: be3_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_be3_name} |
| # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } |
| |
| be3_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be3_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| be3_port_5: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: Cricket_OCS_protected_net_id } |
| fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] |
| |
| be3_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] |
| |
| server_scp_be4: |
| type: OS::Nova::Server |
| # depends on: db_wait_condition |
| properties: |
| name: { get_param: vm_scp_be4_name } |
| image: { get_param: image_scp_be_id } |
| # availability_zone: { get_param: availability_zone_be4 } |
| flavor: { get_param: flavor_scp_be_id } |
| scheduler_hints: { group: { get_resource: BE_Affinity } } |
| networks: |
| - port: { get_resource: be4_port_3 } |
| - port: { get_resource: be4_port_4 } |
| - port: { get_resource: be4_port_5 } |
| - port: { get_resource: be4_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_be4_name} |
| # wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } |
| |
| be4_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| be4_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| be4_port_5: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: Cricket_OCS_protected_net_id } |
| fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] |
| |
| be4_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] |
| |
| server_scp_fe0: |
| type: OS::Nova::Server |
| # depends on: scp_be_wait_condition |
| properties: |
| name: { get_param: vm_scp_fe0_name } |
| image: { get_param: image_scp_fe_id } |
| # availability_zone: { get_param: availability_zone_fe0 } |
| flavor: { get_param: flavor_scp_fe_id } |
| scheduler_hints: { group: { get_resource: FE_Affinity } } |
| networks: |
| - port: { get_resource: fe0_port_0 } |
| - port: { get_resource: fe0_port_2 } |
| - port: { get_resource: fe0_port_3 } |
| - port: { get_resource: fe0_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_fe0_name} |
| # wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } |
| |
| fe0_port_0: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: SIGNET_vrf_A1_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] |
| |
| fe0_port_2: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: FE_Clustering_KA } |
| |
| fe0_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| fe0_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] |
| |
| server_scp_fe1: |
| type: OS::Nova::Server |
| # depends on: scp_be_wait_condition |
| properties: |
| name: { get_param: vm_scp_fe1_name } |
| image: { get_param: image_scp_fe_id } |
| # availability_zone: { get_param: availability_zone_fe1 } |
| flavor: { get_param: flavor_scp_fe_id } |
| scheduler_hints: { group: { get_resource: FE_Affinity } } |
| networks: |
| - port: { get_resource: fe1_port_1 } |
| - port: { get_resource: fe1_port_2 } |
| - port: { get_resource: fe1_port_3 } |
| - port: { get_resource: fe1_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_scp_fe1_name} |
| # wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } |
| |
| fe1_port_1: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: SIGNET_vrf_B1_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] |
| |
| fe1_port_2: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: FE_Clustering_KA } |
| |
| fe1_port_3: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: Clustering_Network } |
| |
| fe1_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] |
| |
| server_smp0: |
| type: OS::Nova::Server |
| properties: |
| name: { get_param: vm_smp0_name } |
| image: { get_param: image_smp_id } |
| # availability_zone: { get_param: availability_zone_smp0 } |
| flavor: { get_param: flavor_smp_id } |
| scheduler_hints: { group: { get_resource: SMP_Affinity } } |
| networks: |
| - port: { get_resource: smp0_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_smp0_name} |
| # wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } |
| |
| smp0_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] |
| |
| server_smp1: |
| type: OS::Nova::Server |
| properties: |
| name: { get_param: vm_smp1_name } |
| image: { get_param: image_smp_id } |
| # availability_zone: { get_param: availability_zone_smp1 } |
| flavor: { get_param: flavor_smp_id } |
| scheduler_hints: { group: { get_resource: SMP_Affinity } } |
| networks: |
| - port: { get_resource: smp1_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_smp1_name} |
| # wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } |
| |
| smp1_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] |
| |
| server_db0: |
| type: OS::Nova::Server |
| # depends_on: smp_wait_condition |
| properties: |
| name: { get_param: vm_db0_name } |
| image: { get_param: image_db_id } |
| # availability_zone: { get_param: availability_zone_db0 } |
| flavor: { get_param: flavor_db_id } |
| scheduler_hints: { group: { get_resource: DB_Affinity } } |
| networks: |
| - port: { get_resource: db0_port_4 } |
| - port: { get_resource: db0_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_db0_name} |
| # wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } |
| |
| db0_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| db0_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] |
| |
| server_db1: |
| type: OS::Nova::Server |
| # depends_on: smp_wait_condition |
| properties: |
| name: { get_param: vm_db1_name } |
| image: { get_param: image_db_id } |
| # availability_zone: { get_param: availability_zone_db1 } |
| flavor: { get_param: flavor_db_id } |
| scheduler_hints: { group: { get_resource: DB_Affinity } } |
| networks: |
| - port: { get_resource: db1_port_4 } |
| - port: { get_resource: db1_port_7 } |
| metadata: |
| vnf_id: { get_param: vnf_id } |
| user_data: |
| str_replace: |
| template: | |
| #!/bin/bash |
| #todo: provision $vm_name |
| wc_notify --data-binary '{"status": "SUCCESS"}' |
| params: |
| $vm_name: {get_param: vm_db1_name} |
| # wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } |
| |
| db1_port_4: |
| type: OS::Neutron::Port |
| properties: |
| network_id: { get_resource: DB_Network } |
| |
| db1_port_7: |
| type: OS::Neutron::Port |
| properties: |
| network: { get_param: OAM_direct_net_id } |
| fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}] |