1 heat_template_version: 2014-10-16
4 nested DNS template for a single VM
5 all parameters are passed from calling heat template of resourcegroup
10 description: server image
13 description: server flavor
16 description: server key
17 oam_protected_net_name:
19 description: OAM network where instaces will connect
22 description: Bearer network where instaces will connect
23 dns_oam_protected_ips:
24 type: comma_delimited_list
25 description: DNS OAM IP list
27 type: comma_delimited_list
28 description: DNS Bearer IP list
29 dns_int_bearer_ipv6_ips:
30 type: comma_delimited_list
31 description: fixed IPv6 assignment for VM's on the Bearer network
33 type: comma_delimited_list
34 description: server name
37 description: OAM network routes
40 description: index parameter
43 description: name parameter which will include the index value
46 description: security group
49 description: availability zone ID or Name
50 # this parameter does not follow the D2 Guidelines. This value will be az0 or az1.
53 description: Unique name for this VF instance
54 # For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
57 description: Unique ID for this VF instance
58 # For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
61 description: Unique ID for this VF module instance
62 # For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
67 dns_oam_protected_0_port:
68 type: OS::Neutron::Port
72 template: VNF_NAME_dns_oam_port
74 VNF_NAME: {get_param: vnf_name}
75 network: { get_param: oam_protected_net_name }
76 fixed_ips: [{ "ip_address": { get_param: [ dns_oam_protected_ips, get_param: index ]}}]
77 security_groups: [{ get_param: security_group }]
79 dns_int_bearer_0_port:
80 type: OS::Neutron::Port
84 template: VNF_NAME_dns_bearer_port
86 VNF_NAME: {get_param: vnf_name}
87 network: { get_param: int_bearer_net_name }
88 fixed_ips: [{ "ip_address": { get_param: [ dns_int_bearer_ips, get_param: index ]}}, { "ip_address": { get_param: [ dns_int_bearer_ipv6_ips, get_param: index ]}}]
89 security_groups: [{ get_param: security_group }]
92 type: OS::Nova::Server
94 name: { get_param: [ dns_names, get_param: index ] }
95 image: { get_param: dns_image_name }
96 flavor: { get_param: dns_flavor_name }
97 key_name: { get_param: dns_key }
98 availability_zone: { get_param: availability_zone_0 }
100 - port: { get_resource: dns_oam_protected_0_port }
101 - port: { get_resource: dns_int_bearer_0_port }
103 vnf_id: { get_param: vnf_id }
104 vf_module_id: { get_param: vf_module_id }
105 vnf_name {get_param: vnf_name }
106 user_data_format: RAW
107 user_data: { get_resource: server_interface_config }
109 server_interface_config:
110 type: OS::Heat::CloudConfig
114 - path: /etc/sysconfig/network-scripts/route-eth0
116 # content: { get_file: route-eth0 }
117 content: { get_param: route_eth0 }
121 # description: VM name
122 # value: { get_attr: [ dns_servers, name] }
124 # description: networks
125 # value: { get_attr: [ dns_servers, networks ] }