5d2410ce66666c6de053e4c4155ccb3705adf7fe
[sdc.git] /
1 heat_template_version: 2013-05-23
2
3 description: >
4   Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
5
6 parameters:
7   aap_address_mode:
8     description: "Address mode for the vDBE cluster IP"
9     type: string
10   control_int_net_forwarding_mode:
11     description: "forwarding mode of the control virtual network"
12     type: string
13   control_int_net_rpf:
14     description: "Reverse Path Filtering enable or disable for the control virtual network"
15     type: string
16   control_int_net_shared:
17     description: "control virtual network shared"
18     type: boolean
19   control_int_net_flood_unknown_unicast:
20     description: "forwarding mode of the control virtual network"
21     type: boolean
22   oam_net_name:
23     description: "Name of NSDNet network from which the management IP addresses will be allocated"
24     type: string
25   untrusted_net_name:
26     description: "Name of public untrusted network into which this vDBE HA cluster is deployed"
27     type: string
28   untrusted_num_vn:
29     constraints:
30       -
31         range:
32           max: 77
33           min: 1
34     description: "Number of vDBE subinterface virtual Networks"
35     type: number
36   untrusted_vlan_tags:
37     description: "List of subinterface vlan tags"
38     type: comma_delimited_list
39   untrusted_vn_networks:
40     description: "List of subinterface virtual networks"
41     type: comma_delimited_list
42   vdbe_aap_sec_untrusted_ip_prefix:
43     description: "ip prefix for secondary vDBE VM aap on the VAN untrusted network"
44     type: string
45   vdbe_aap_sec_untrusted_ip_prefix_len:
46     description: "ip prefix length for the secondary DBE VM aap on the VAN untrusted network"
47     type: string
48   vdbe_aap_untrusted_ip_prefix:
49     description: "ip prefix for primary vDBE VM on the VAN untrusted network"
50     type: string
51   vdbe_aap_untrusted_ip_prefix_len:
52     description: "ip prefix length for the primary vDBE VM on the VAN untrusted network"
53     type: string
54   vdbe_aap_untrusted_v6_ip_prefix:
55     description: "ipv6 prefix for the primary vDBE VM on the VAN untrusted network"
56     type: string
57   vdbe_aap_untrusted_v6_ip_prefix_len:
58     description: "ipv6 prefix length for the primary vDBE VM on the VAN untrusted network"
59     type: string
60   vdbe_device_name:
61     description: "VDBE device Name for this vdbe VNF"
62     type: string
63   vdbe_hw_untr_mac_1:
64     description: "Secondary MAC address of the secondary vDBE VM on the VAN untrusted network"
65     type: string
66   vdbe_name_1:
67     description: "VM Name for this vdbe node 1"
68     type: string
69   vdbe_name_2:
70     description: "VM Name for this vdbe node 2"
71     type: string
72   vdbe_untrusted_ip_1:
73     description: "IPV4 address of the secondary vDBE VM on the VAN untrusted network"
74     type: string
75   vdbe_untrusted_v6_ip_1:
76     description: "IPV6 address of the secondary vDBE VM on the VAN untrusted network"
77     type: string
78   vdbe_untrusted_vmac_address:
79     description: "Virtual MAC of the primary vDBE VM on the VAN untrusted network"
80     type: string
81   vdbe_flavor_name:
82     description: "Flavor to use for vDBE"
83     type: string
84   vdbe_image_name:
85     description: "Image to use for vDBE"
86     type: string
87   vnf_name:
88     description: "Unique name for this VF instance"
89     type: string
90   vnf_id_1:
91     description: "Unique ID for this VF inst"
92     type: string
93   vnf_name_1:
94     description: "Unique name for this VF instance"
95     type: string
96   vf_module_id_1:
97     description: "Unique ID for this VF module inst"
98     type: string
99   vnf_id_2:
100     description: "Unique ID for this VF inst"
101     type: string
102   vnf_name_2:
103     description: "Unique name for this VF instance"
104     type: string
105   vf_module_id_2:
106     description: "Unique ID for this VF module inst"
107     type: string
108   availability_zone_1:
109     description: "The availability zone of secondary node1 vDBE vm in the local HA pair."
110     type: string
111   availability_zone_2:
112     description: "The availability zone of secondary node2 vDBE vm in the local HA pair."
113     type: string
114   counter:
115     description: "Counter."
116     type: number
117 resources:
118   vdbe_node_1:
119     type: OS::Nova::Server
120     properties:
121       availability_zone:
122         get_param: availability_zone_1
123       flavor:
124         get_param: vdbe_flavor_name
125       image:
126         get_param: vdbe_image_name
127       metadata:
128         vf_module_id:
129           get_param: vf_module_id_1
130         vnf_id:
131           get_param: vnf_id_1
132         vnf_name:
133           get_param: vnf_name_1
134       name:
135         get_param: vdbe_name_1
136       networks:
137         - port: {get_resource: vdbe_untr_port_1}
138   vdbe_node_2:
139     type: OS::Nova::Server
140     properties:
141       availability_zone:
142         get_param: availability_zone_2
143       flavor:
144         get_param: vdbe_flavor_name
145       image:
146         get_param: vdbe_image_name
147       metadata:
148         vf_module_id:
149           get_param: vf_module_id_2
150         vnf_id:
151           get_param: vnf_id_2
152         vnf_name:
153           get_param: vnf_name_2
154       name:
155         get_param: vdbe_name_2
156       networks:
157         - port: {get_resource: vdbe_untr_port_2}
158   vdbe_untr_port_1:
159     type: OS::ContrailV2::VirtualMachineInterface
160     properties:
161       name: Untr_Port_1
162       virtual_machine_interface_allowed_address_pairs:
163         virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
164           -
165             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
166               get_param: aap_address_mode
167             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
168               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
169                 get_param: vdbe_aap_untrusted_ip_prefix
170               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
171                 get_param: vdbe_aap_untrusted_ip_prefix_len
172             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
173               get_param: vdbe_untrusted_vmac_address
174           -
175             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
176               get_param: aap_address_mode
177             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
178               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
179                 get_param: vdbe_aap_sec_untrusted_ip_prefix
180               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
181                 get_param: vdbe_aap_sec_untrusted_ip_prefix_len
182             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
183               get_param: vdbe_hw_untr_mac_1
184           -
185             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
186               get_param: aap_address_mode
187             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
188               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
189                 get_param: vdbe_aap_untrusted_v6_ip_prefix
190               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
191                 get_param: vdbe_aap_untrusted_v6_ip_prefix_len
192             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
193               get_param: vdbe_untrusted_vmac_address
194       virtual_machine_interface_mac_addresses:
195         virtual_machine_interface_mac_addresses_mac_address:
196           -
197             get_param: vdbe_hw_untr_mac_1
198       virtual_network_refs:
199         -
200           get_resource: control_int_net
201   vdbe_untr_port_2:
202     type: OS::ContrailV2::VirtualMachineInterface
203     properties:
204       name: Untr_Port_2
205       virtual_machine_interface_allowed_address_pairs:
206         virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
207           -
208             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
209               get_param: aap_address_mode
210             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
211               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
212                 get_param: vdbe_aap_untrusted_ip_prefix
213               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
214                 get_param: vdbe_aap_untrusted_ip_prefix_len
215             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
216               get_param: vdbe_untrusted_vmac_address
217           -
218             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
219               get_param: aap_address_mode
220             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
221               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
222                 get_param: vdbe_aap_sec_untrusted_ip_prefix
223               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
224                 get_param: vdbe_aap_sec_untrusted_ip_prefix_len
225             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
226               get_param: vdbe_hw_untr_mac_1
227           -
228             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode:
229               get_param: aap_address_mode
230             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
231               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix:
232                 get_param: vdbe_aap_untrusted_v6_ip_prefix
233               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len:
234                 get_param: vdbe_aap_untrusted_v6_ip_prefix_len
235             virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac:
236               get_param: vdbe_untrusted_vmac_address
237       virtual_machine_interface_mac_addresses:
238         virtual_machine_interface_mac_addresses_mac_address:
239           -
240             get_param: vdbe_hw_untr_mac_1
241       virtual_network_refs:
242         -
243           get_resource: control_int_net
244
245   vdbe_untr_1_subports:
246     type: nested.yml
247     properties:
248       aap_address_mode:
249         get_param: aap_address_mode
250       aap_sec_untrusted_ip_prefix:
251         get_param: vdbe_aap_sec_untrusted_ip_prefix
252       aap_sec_untrusted_ip_prefix_len:
253         get_param: vdbe_aap_sec_untrusted_ip_prefix_len
254       aap_untrusted_ip_prefix:
255         get_param: vdbe_aap_untrusted_ip_prefix
256       aap_untrusted_ip_prefix_len:
257         get_param: vdbe_aap_untrusted_ip_prefix_len
258       aap_untrusted_v6_ip_prefix:
259         get_param: vdbe_aap_untrusted_v6_ip_prefix
260       aap_untrusted_v6_ip_prefix_len:
261         get_param: vdbe_aap_untrusted_v6_ip_prefix_len
262       counter: 5
263       ip_address:
264         get_param: vdbe_untrusted_ip_1
265       ip_v6_address:
266         get_param: vdbe_untrusted_v6_ip_1
267       mac_address:
268         get_param: vdbe_hw_untr_mac_1
269       parent_interface:
270         get_resource: vdbe_untr_port_1
271       subinterfaces_name_prefix:
272         str_replace:
273           params:
274             DBE:
275               get_param: vdbe_device_name
276             VM_NAME:
277               get_param: vdbe_name_1
278           template: VM_NAMEDBE001p1n004
279       vlan_tag_list:
280         get_param: untrusted_vlan_tags
281       vmac_address:
282         get_param: vdbe_untrusted_vmac_address
283       vn_network_list:
284          get_param: untrusted_vn_networks
285       optional_property_1: OPTIONAL_VALUE_SUBPORT_1
286
287   vdbe_untr_2_subports:
288     type: nested.yml
289     properties:
290       aap_address_mode:
291         get_param: aap_address_mode
292       aap_sec_untrusted_ip_prefix:
293         get_param: vdbe_aap_sec_untrusted_ip_prefix
294       aap_sec_untrusted_ip_prefix_len:
295         get_param: vdbe_aap_sec_untrusted_ip_prefix_len
296       aap_untrusted_ip_prefix:
297         get_param: vdbe_aap_untrusted_ip_prefix
298       aap_untrusted_ip_prefix_len:
299         get_param: vdbe_aap_untrusted_ip_prefix_len
300       aap_untrusted_v6_ip_prefix:
301         get_param: vdbe_aap_untrusted_v6_ip_prefix
302       aap_untrusted_v6_ip_prefix_len:
303         get_param: vdbe_aap_untrusted_v6_ip_prefix_len
304       counter:
305         get_param: counter
306       ip_address:
307         get_param: vdbe_untrusted_ip_1
308       ip_v6_address:
309         get_param: vdbe_untrusted_v6_ip_1
310       mac_address:
311         get_param: vdbe_hw_untr_mac_1
312       parent_interface:
313         get_resource: vdbe_untr_port_2
314       subinterfaces_name_prefix:
315         str_replace:
316           params:
317             DBE:
318               get_param: vdbe_device_name
319             VM_NAME:
320               get_param: vdbe_name_1
321           template: VM_NAMEDBE001p1n004
322       vlan_tag_list:
323         get_param: untrusted_vlan_tags
324       vmac_address:
325         get_param: vdbe_untrusted_vmac_address
326       vn_network_list:
327          get_param: untrusted_vn_networks
328       optional_property_2: OPTIONAL_VALUE_SUBPORT_2
329
330   control_int_net:
331     type: OS::ContrailV2::VirtualNetwork
332     properties:
333       flood_unknown_unicast:
334         get_param: control_int_net_flood_unknown_unicast
335       is_shared:
336         get_param: control_int_net_shared
337       name:
338         str_replace:
339           params:
340             VNF_NAME:
341               get_param: vnf_name
342           template: VNF_NAME_control_net
343       virtual_network_properties:
344         virtual_network_properties_forwarding_mode:
345           get_param: control_int_net_forwarding_mode
346         virtual_network_properties_rpf:
347           get_param: control_int_net_rpf