1 heat_template_version: 2015-04-30
7 description: Name of management network to be created
10 description: Name of mirror network to be created
13 description: Name of mirror network to be created
19 description: Name of the SVM
22 description: Name of the SVM
25 description: Flavor of the end VMs
28 description: Name of the end VM LB_image_name
32 description: ip_prefix for the ServiceInstance
33 aap_core_ip_prefix_len:
35 description: ip_prefix_len for the ServiceInstance
38 description: address_mode for the ServiceInstance
41 description: mac for the VirtualMachineInterface
48 lb_oam_protected_ip_0:
57 lb_oam_protected_ip_1:
62 description: Unique ID for this VF Module instance
65 description: Name of vOTA instance for ECOMP
68 description: lb availability zone
71 description: lb availability zone
72 int_oam_int_sec_group_id:
74 description: int oam sec group
75 lb1_gwaf_int_sec_group_id:
77 description: lb1 gwaf sec group id
78 oam_protected_sec_group_id:
80 description: oam protected sec group
83 description: health check
86 description: health check
89 description: health check
92 description: health check
95 description: health check
98 description: health check
99 ecmp_hashing_include_fields_hashing_configured:
101 description: health check
102 ecmp_hashing_include_fields_source_ip:
104 description: ecmp hash
105 ecmp_hashing_include_fields_destination_port:
107 description: ecmp hash
108 ecmp_hashing_include_fields_source_port:
110 description: ecmp hash
111 ecmp_hashing_include_fields_destination_ip:
113 description: ecmp hash
114 ecmp_hashing_include_fields_ip_protocol:
116 description: ecmp hash
124 lb_0_int_oam_int_0_port:
125 type: OS::ContrailV2::VirtualMachineInterface
127 virtual_machine_interface_properties:
129 virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
131 virtual_network_refs: [{ get_param: int_oam_int_net_id }]
132 security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
134 lb_0_lb1_gwaf_int_1_port:
135 type: OS::ContrailV2::VirtualMachineInterface
137 virtual_machine_interface_properties:
139 virtual_machine_interface_properties_service_interface_type: { get_param: lb1_gwaf_int_net_id },
141 virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
142 security_group_refs: [{ get_param: lb1_gwaf_int_sec_group_id }]
144 lb_0_oam_protected_2_port:
145 type: OS::ContrailV2::VirtualMachineInterface
147 virtual_network_refs: [{ get_param: oam_protected_net }]
148 service_health_check_refs:
149 - get_resource: lb_oam_protected_hc
150 ecmp_hashing_include_fields:
151 ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
152 ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
153 ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
154 ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
155 ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
156 ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
157 virtual_machine_interface_allowed_address_pairs:
159 virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
161 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
163 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
164 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
166 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
167 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
170 security_group_refs: [{ get_param: oam_protected_sec_group_id }]
172 lb_1_int_oam_int_0_port:
173 type: OS::ContrailV2::VirtualMachineInterface
175 virtual_machine_interface_properties:
177 virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
179 virtual_network_refs: [{ get_param: int_oam_int_net_id }]
180 security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
182 lb_1_lb1_gwaf_int_1_port:
183 type: OS::ContrailV2::VirtualMachineInterface
185 virtual_machine_interface_properties:
187 virtual_machine_interface_properties_service_interface_type: { get_param: lb1_gwaf_int_net_id },
189 virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
190 security_group_refs: [{ get_param: lb1_gwaf_int_sec_group_id }]
192 lb_1_oam_protected_2_port:
193 type: OS::ContrailV2::VirtualMachineInterface
195 virtual_network_refs: [{ get_param: oam_protected_net }]
196 service_health_check_refs:
197 - get_resource: lb_oam_protected_hc
198 ecmp_hashing_include_fields:
199 ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
200 ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
201 ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
202 ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
203 ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
204 ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
205 virtual_machine_interface_allowed_address_pairs:
207 virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
209 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
211 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
212 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
214 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
215 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
218 security_group_refs: [{ get_param: oam_protected_sec_group_id }]
220 lb_0_int_oam_int_0_ip:
221 type: OS::ContrailV2::InstanceIp
222 depends_on: [ lb_0_int_oam_int_0_port ]
224 virtual_machine_interface_refs: [{ get_resource: lb_0_int_oam_int_0_port }]
225 virtual_network_refs: [{ get_param: int_oam_int_net_id }]
226 instance_ip_address: { get_param: lb_oam_int_ip_0 }
229 lb_0_lb1_gwaf_int_1_ip:
230 type: OS::ContrailV2::InstanceIp
231 depends_on: [ lb_0_lb1_gwaf_int_1_port ]
233 virtual_machine_interface_refs: [{ get_resource: lb_0_lb1_gwaf_int_1_port }]
234 virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
235 instance_ip_address: { get_param: lb_lb1_gwaf_int_ip_0 }
238 lb_0_oam_protected_2_ip:
239 type: OS::ContrailV2::InstanceIp
240 depends_on: [ lb_0_oam_protected_2_port ]
242 virtual_machine_interface_refs: [{ get_resource: lb_0_oam_protected_2_port }]
243 virtual_network_refs: [{ get_param: oam_protected_net }]
244 instance_ip_address: { get_param: lb_oam_protected_ip_0 }
247 lb_1_int_oam_int_0_ip:
248 type: OS::ContrailV2::InstanceIp
249 depends_on: [ lb_1_int_oam_int_0_port ]
251 virtual_machine_interface_refs: [{ get_resource: lb_1_int_oam_int_0_port }]
252 virtual_network_refs: [{ get_param: int_oam_int_net_id }]
253 instance_ip_address: { get_param: lb_oam_int_ip_1 }
256 lb_1_lb1_gwaf_int_1_ip:
257 type: OS::ContrailV2::InstanceIp
258 depends_on: [ lb_1_lb1_gwaf_int_1_port ]
260 virtual_machine_interface_refs: [{ get_resource: lb_1_lb1_gwaf_int_1_port }]
261 virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
262 instance_ip_address: { get_param: lb_lb1_gwaf_int_ip_1 }
265 lb_1_oam_protected_2_ip:
266 type: OS::ContrailV2::InstanceIp
267 depends_on: [ lb_1_oam_protected_2_port ]
269 virtual_machine_interface_refs: [{ get_resource: lb_1_oam_protected_2_port }]
270 virtual_network_refs: [{ get_param: oam_protected_net }]
271 instance_ip_address: { get_param: lb_oam_protected_ip_1 }
275 type: OS::ContrailV2::ServiceHealthCheck
277 name: oam_protected_hc_PING
278 service_health_check_properties:
279 service_health_check_properties_enabled: { get_param: shc_enabled }
280 service_health_check_properties_monitor_type: { get_param: shc_monitor_type }
281 service_health_check_properties_delay: { get_param: shc_delay }
282 service_health_check_properties_timeout: { get_param: shc_timeout }
283 service_health_check_properties_max_retries: { get_param: shc_max_retries }
284 service_health_check_properties_url_path: { get_param: shc_url_path }
289 type: OS::Nova::Server
290 depends_on: [ lb_0_int_oam_int_0_ip, lb_0_lb1_gwaf_int_1_ip, lb_0_oam_protected_2_ip ]
292 name: {get_param: LB1_name_0 }
293 image: { get_param: LB1_image_name }
294 flavor: { get_param: LB1_flavor_name }
295 key_name: { get_param: lb_key_name }
296 availability_zone: { get_param: availability_zone_0 }
298 - port: { get_resource: lb_0_int_oam_int_0_port }
299 - port: { get_resource: lb_0_lb1_gwaf_int_1_port }
300 - port: { get_resource: lb_0_oam_protected_2_port }
302 vnf_id: { get_param: vnf_id }
303 vf_module_id: { get_param: vf_module_id }
308 sudo ip route del default
309 sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw $oam_gw
311 $oam_gw: { get_param: oam_gw }
314 type: OS::Nova::Server
315 depends_on: [ lb_1_int_oam_int_0_ip, lb_1_lb1_gwaf_int_1_ip, lb_1_oam_protected_2_ip ]
317 name: {get_param: LB1_name_1 }
318 image: { get_param: LB1_image_name }
319 flavor: { get_param: LB1_flavor_name }
320 availability_zone: { get_param: availability_zone_1 }
321 key_name: { get_param: lb_key_name }
323 - port: { get_resource: lb_1_int_oam_int_0_port }
324 - port: { get_resource: lb_1_lb1_gwaf_int_1_port }
325 - port: { get_resource: lb_1_oam_protected_2_port }
327 vnf_id: { get_param: vnf_id }
328 vf_module_id: { get_param: vf_module_id }
333 sudo ip route del default
334 sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw $oam_gw
336 $oam_gw: { get_param: oam_gw }