Fix YAML files linter errors for superfluous spaces/new lines
[integration.git] / deployment / heat / onap-rke / onap-oom.yaml
1 #
2 # Generated by scripts/gen-onap-oom-yaml.sh; MANUAL CHANGES WILL BE LOST
3 #
4 heat_template_version: 2015-10-15
5 description: ONAP on RKE Kubernetes using OOM
6
7 parameters:
8   docker_proxy:
9     type: string
10
11   apt_proxy:
12     type: string
13
14   additional_override:
15     type: string
16     default: "master"
17
18   public_net_id:
19     type: string
20     description: The ID of the Public network for floating IP address allocation
21
22   oam_network_cidr:
23     type: string
24     description: CIDR of the OAM ONAP network
25
26   oam_ext_network_cidr:
27     type: string
28     description: CIDR of the onap_oam_ext network
29
30   oam_ext_network_host_route:
31     type: json
32     description: >
33         host routes
34         "destination": '10.12.0.0/16'
35         "nexthop": '10.100.0.1'
36     default:
37         "destination": '10.12.0.0/16'
38         "nexthop": '10.100.0.1'
39
40   ubuntu_1804_image:
41     type: string
42     description: Name of the Ubuntu 18.04 image
43
44   nfs_vm_flavor:
45     type: string
46     description: VM flavor for Nfs
47
48   k8s_vm_flavor:
49     type: string
50     description: VM flavor for k8s hosts
51
52   orch_vm_flavor:
53     type: string
54     description: VM flavor for orch hosts
55
56   integration_override_yaml:
57     type: string
58     description: Content for integration_override.yaml
59
60   integration_gerrit_branch:
61     type: string
62     default: "master"
63
64   integration_gerrit_refspec:
65     type: string
66     default: ""
67
68   oom_gerrit_branch:
69     type: string
70     default: "master"
71
72   oom_gerrit_refspec:
73     type: string
74     default: ""
75
76   key_name:
77     type: string
78     default: "onap_key"
79
80   docker_version:
81     type: string
82     default: "18.09.5"
83
84   kubectl_version:
85     type: string
86     default: "1.15.3"
87
88   helm_version:
89     type: string
90     default: "2.14.2"
91
92   helm_deploy_delay:
93     type: string
94     default: "3m"
95
96   mtu:
97     type: number
98     default: 1500
99
100   portal_hostname:
101     type: string
102     description: The FQDN of the k8s host that will be used for the Portal UI component URLs; this needs to be resolveable at the client
103     default: "portal.api.simpledemo.onap.org"
104
105 resources:
106   random-str:
107     type: OS::Heat::RandomString
108     properties:
109       length: 4
110
111   # ONAP security group
112   onap_sg:
113     type: OS::Neutron::SecurityGroup
114     properties:
115       name:
116         str_replace:
117           template: base_rand
118           params:
119             base: onap_sg
120             rand: { get_resource: random-str }
121       description: security group used by ONAP
122       rules:
123         # All egress traffic
124         - direction: egress
125           ethertype: IPv4
126         - direction: egress
127           ethertype: IPv6
128         # ingress traffic
129         # ICMP
130         - protocol: icmp
131         - protocol: udp
132           port_range_min: 1
133           port_range_max: 65535
134         - protocol: tcp
135           port_range_min: 1
136           port_range_max: 65535
137         # Protocols used for vLB/vDNS use case
138         - protocol: 47
139         - protocol: 53
140         - protocol: 132
141
142   router:
143     type: OS::Neutron::Router
144     properties:
145       name:
146         list_join: ['-', [{ get_param: 'OS::stack_name' }, 'router']]
147       external_gateway_info:
148         network: { get_param: public_net_id }
149
150   # ONAP management private network
151   oam_network:
152     type: OS::Neutron::Net
153     properties:
154       name:
155         str_replace:
156           template: oam_network_rand
157           params:
158             rand: { get_resource: random-str }
159
160   oam_subnet:
161     type: OS::Neutron::Subnet
162     properties:
163       name:
164         str_replace:
165           template: oam_network_rand
166           params:
167             rand: { get_resource: random-str }
168       network_id: { get_resource: oam_network }
169       cidr: { get_param: oam_network_cidr }
170       dns_nameservers: [ "8.8.8.8" ]
171
172   oam_router_interface:
173     type: OS::Neutron::RouterInterface
174     properties:
175       router_id: { get_resource: router }
176       subnet_id: { get_resource: oam_subnet }
177
178   oam_ext_network:
179     type: OS::Neutron::Net
180     properties:
181       name: onap_oam_ext
182
183   oam_ext_subnet:
184     type: OS::Neutron::Subnet
185     properties:
186       name: onap_oam_ext
187       network_id: { get_resource: oam_ext_network }
188       cidr: { get_param: oam_ext_network_cidr }
189       enable_dhcp: true
190       host_routes:
191       - { get_param: oam_ext_network_host_route }
192       dns_nameservers: [ "8.8.8.8" ]
193
194   oam_ext_router_interface:
195     type: OS::Neutron::RouterInterface
196     properties:
197       router_id: { get_resource: router }
198       subnet_id: { get_resource: oam_ext_subnet }
199
200   nfs_private_port:
201     type: OS::Neutron::Port
202     properties:
203       network: { get_resource: oam_network }
204       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
205       security_groups:
206       - { get_resource: onap_sg }
207
208   nfs_floating_ip:
209     type: OS::Neutron::FloatingIP
210     properties:
211       floating_network_id: { get_param: public_net_id }
212       port_id: { get_resource: nfs_private_port }
213   nfs_volume:
214     type: OS::Cinder::Volume
215     properties:
216       size: 200
217
218   nfs_volume_att:
219     type: OS::Cinder::VolumeAttachment
220     properties:
221       instance_uuid: { get_resource: nfs_vm }
222       volume_id: { get_resource: nfs_volume }
223
224   nfs_vm:
225     type: OS::Nova::Server
226     properties:
227       name:
228         list_join: ['-', [{ get_param: 'OS::stack_name' }, 'nfs']]
229       image: { get_param: ubuntu_1804_image }
230       flavor: { get_param: nfs_vm_flavor }
231       key_name: { get_param: key_name }
232       networks:
233       - port: { get_resource: nfs_private_port }
234       user_data_format: RAW
235       user_data:
236         str_replace:
237           template:
238             get_file: nfs_vm_entrypoint.sh
239           params:
240             __additional_override__: { get_param: additional_override}
241             __nfs_volume_id__: { get_resource: nfs_volume }
242             __docker_proxy__: { get_param: docker_proxy }
243             __apt_proxy__: { get_param: apt_proxy }
244             __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
245             __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
246             __integration_override_yaml__: { get_param: integration_override_yaml }
247             __integration_gerrit_branch__: { get_param: integration_gerrit_branch }
248             __integration_gerrit_refspec__: { get_param: integration_gerrit_refspec }
249             __oom_gerrit_branch__: { get_param: oom_gerrit_branch }
250             __oom_gerrit_refspec__: { get_param: oom_gerrit_refspec }
251             __docker_version__: { get_param: docker_version }
252             __kubectl_version__: { get_param: kubectl_version }
253             __helm_version__: { get_param: helm_version }
254             __helm_deploy_delay__: { get_param: helm_deploy_delay }
255             __mtu__: { get_param: mtu }
256             __portal_hostname__: { get_param: portal_hostname }
257             __public_net_id__: { get_param: public_net_id }
258             __oam_network_cidr__: { get_param: oam_network_cidr }
259             __oam_network_id__: { get_resource: oam_network }
260             __oam_subnet_id__: { get_resource: oam_subnet }
261             __sec_group__: { get_resource: onap_sg }
262             __k8s_01_vm_ip__: { get_attr: [k8s_01_floating_ip, floating_ip_address] }
263             __k8s_vm_ips__: [
264               get_attr: [k8s_01_floating_ip, floating_ip_address],
265               get_attr: [k8s_02_floating_ip, floating_ip_address],
266               get_attr: [k8s_03_floating_ip, floating_ip_address],
267               get_attr: [k8s_04_floating_ip, floating_ip_address],
268               get_attr: [k8s_05_floating_ip, floating_ip_address],
269               get_attr: [k8s_06_floating_ip, floating_ip_address],
270               get_attr: [k8s_07_floating_ip, floating_ip_address],
271               get_attr: [k8s_08_floating_ip, floating_ip_address],
272               get_attr: [k8s_09_floating_ip, floating_ip_address],
273             ]
274             __k8s_private_ips__: [
275               get_attr: [k8s_01_floating_ip, fixed_ip_address],
276               get_attr: [k8s_02_floating_ip, fixed_ip_address],
277               get_attr: [k8s_03_floating_ip, fixed_ip_address],
278               get_attr: [k8s_04_floating_ip, fixed_ip_address],
279               get_attr: [k8s_05_floating_ip, fixed_ip_address],
280               get_attr: [k8s_06_floating_ip, fixed_ip_address],
281               get_attr: [k8s_07_floating_ip, fixed_ip_address],
282               get_attr: [k8s_08_floating_ip, fixed_ip_address],
283               get_attr: [k8s_09_floating_ip, fixed_ip_address],
284             ]
285   k8s_01_private_port:
286     type: OS::Neutron::Port
287     properties:
288       network: { get_resource: oam_network }
289       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
290       security_groups:
291       - { get_resource: onap_sg }
292
293   k8s_01_floating_ip:
294     type: OS::Neutron::FloatingIP
295     properties:
296       floating_network_id: { get_param: public_net_id }
297       port_id: { get_resource: k8s_01_private_port }
298
299   k8s_01_vm_scripts:
300     type: OS::Heat::CloudConfig
301     properties:
302       cloud_config:
303         power_state:
304           mode: reboot
305         runcmd:
306         - [ /opt/k8s_vm_install.sh ]
307         write_files:
308         - path: /opt/k8s_vm_install.sh
309           permissions: '0755'
310           content:
311             str_replace:
312               params:
313                 __docker_proxy__: { get_param: docker_proxy }
314                 __apt_proxy__: { get_param: apt_proxy }
315                 __docker_version__: { get_param: docker_version }
316                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
317                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
318                 __host_private_ip_addr__: { get_attr: [k8s_01_floating_ip, fixed_ip_address] }
319                 __mtu__: { get_param: mtu }
320               template:
321                 get_file: k8s_vm_install.sh
322         - path: /opt/k8s_vm_init.sh
323           permissions: '0755'
324           content:
325             str_replace:
326               params:
327                 __host_private_ip_addr__: { get_attr: [k8s_01_floating_ip, fixed_ip_address] }
328                 __host_label__: 'compute'
329               template:
330                 get_file: k8s_vm_init.sh
331         - path: /etc/init.d/k8s_vm_init_serv
332           permissions: '0755'
333           content:
334             get_file: k8s_vm_init_serv.sh
335
336   k8s_01_vm_config:
337     type: OS::Heat::MultipartMime
338     properties:
339       parts:
340       - config: { get_resource: k8s_01_vm_scripts }
341
342   k8s_01_vm:
343     type: OS::Nova::Server
344     properties:
345       name:
346         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '01' ] ]
347       image: { get_param: ubuntu_1804_image }
348       flavor: { get_param: k8s_vm_flavor }
349       key_name: { get_param: key_name }
350       networks:
351       - port: { get_resource: k8s_01_private_port }
352       user_data_format: SOFTWARE_CONFIG
353       user_data: { get_resource: k8s_01_vm_config }
354   k8s_02_private_port:
355     type: OS::Neutron::Port
356     properties:
357       network: { get_resource: oam_network }
358       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
359       security_groups:
360       - { get_resource: onap_sg }
361
362   k8s_02_floating_ip:
363     type: OS::Neutron::FloatingIP
364     properties:
365       floating_network_id: { get_param: public_net_id }
366       port_id: { get_resource: k8s_02_private_port }
367
368   k8s_02_vm_scripts:
369     type: OS::Heat::CloudConfig
370     properties:
371       cloud_config:
372         power_state:
373           mode: reboot
374         runcmd:
375         - [ /opt/k8s_vm_install.sh ]
376         write_files:
377         - path: /opt/k8s_vm_install.sh
378           permissions: '0755'
379           content:
380             str_replace:
381               params:
382                 __docker_proxy__: { get_param: docker_proxy }
383                 __apt_proxy__: { get_param: apt_proxy }
384                 __docker_version__: { get_param: docker_version }
385                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
386                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
387                 __host_private_ip_addr__: { get_attr: [k8s_02_floating_ip, fixed_ip_address] }
388                 __mtu__: { get_param: mtu }
389               template:
390                 get_file: k8s_vm_install.sh
391         - path: /opt/k8s_vm_init.sh
392           permissions: '0755'
393           content:
394             str_replace:
395               params:
396                 __host_private_ip_addr__: { get_attr: [k8s_02_floating_ip, fixed_ip_address] }
397                 __host_label__: 'compute'
398               template:
399                 get_file: k8s_vm_init.sh
400         - path: /etc/init.d/k8s_vm_init_serv
401           permissions: '0755'
402           content:
403             get_file: k8s_vm_init_serv.sh
404
405   k8s_02_vm_config:
406     type: OS::Heat::MultipartMime
407     properties:
408       parts:
409       - config: { get_resource: k8s_02_vm_scripts }
410
411   k8s_02_vm:
412     type: OS::Nova::Server
413     properties:
414       name:
415         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '02' ] ]
416       image: { get_param: ubuntu_1804_image }
417       flavor: { get_param: k8s_vm_flavor }
418       key_name: { get_param: key_name }
419       networks:
420       - port: { get_resource: k8s_02_private_port }
421       user_data_format: SOFTWARE_CONFIG
422       user_data: { get_resource: k8s_02_vm_config }
423   k8s_03_private_port:
424     type: OS::Neutron::Port
425     properties:
426       network: { get_resource: oam_network }
427       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
428       security_groups:
429       - { get_resource: onap_sg }
430
431   k8s_03_floating_ip:
432     type: OS::Neutron::FloatingIP
433     properties:
434       floating_network_id: { get_param: public_net_id }
435       port_id: { get_resource: k8s_03_private_port }
436
437   k8s_03_vm_scripts:
438     type: OS::Heat::CloudConfig
439     properties:
440       cloud_config:
441         power_state:
442           mode: reboot
443         runcmd:
444         - [ /opt/k8s_vm_install.sh ]
445         write_files:
446         - path: /opt/k8s_vm_install.sh
447           permissions: '0755'
448           content:
449             str_replace:
450               params:
451                 __docker_proxy__: { get_param: docker_proxy }
452                 __apt_proxy__: { get_param: apt_proxy }
453                 __docker_version__: { get_param: docker_version }
454                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
455                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
456                 __host_private_ip_addr__: { get_attr: [k8s_03_floating_ip, fixed_ip_address] }
457                 __mtu__: { get_param: mtu }
458               template:
459                 get_file: k8s_vm_install.sh
460         - path: /opt/k8s_vm_init.sh
461           permissions: '0755'
462           content:
463             str_replace:
464               params:
465                 __host_private_ip_addr__: { get_attr: [k8s_03_floating_ip, fixed_ip_address] }
466                 __host_label__: 'compute'
467               template:
468                 get_file: k8s_vm_init.sh
469         - path: /etc/init.d/k8s_vm_init_serv
470           permissions: '0755'
471           content:
472             get_file: k8s_vm_init_serv.sh
473
474   k8s_03_vm_config:
475     type: OS::Heat::MultipartMime
476     properties:
477       parts:
478       - config: { get_resource: k8s_03_vm_scripts }
479
480   k8s_03_vm:
481     type: OS::Nova::Server
482     properties:
483       name:
484         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '03' ] ]
485       image: { get_param: ubuntu_1804_image }
486       flavor: { get_param: k8s_vm_flavor }
487       key_name: { get_param: key_name }
488       networks:
489       - port: { get_resource: k8s_03_private_port }
490       user_data_format: SOFTWARE_CONFIG
491       user_data: { get_resource: k8s_03_vm_config }
492   k8s_04_private_port:
493     type: OS::Neutron::Port
494     properties:
495       network: { get_resource: oam_network }
496       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
497       security_groups:
498       - { get_resource: onap_sg }
499
500   k8s_04_floating_ip:
501     type: OS::Neutron::FloatingIP
502     properties:
503       floating_network_id: { get_param: public_net_id }
504       port_id: { get_resource: k8s_04_private_port }
505
506   k8s_04_vm_scripts:
507     type: OS::Heat::CloudConfig
508     properties:
509       cloud_config:
510         power_state:
511           mode: reboot
512         runcmd:
513         - [ /opt/k8s_vm_install.sh ]
514         write_files:
515         - path: /opt/k8s_vm_install.sh
516           permissions: '0755'
517           content:
518             str_replace:
519               params:
520                 __docker_proxy__: { get_param: docker_proxy }
521                 __apt_proxy__: { get_param: apt_proxy }
522                 __docker_version__: { get_param: docker_version }
523                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
524                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
525                 __host_private_ip_addr__: { get_attr: [k8s_04_floating_ip, fixed_ip_address] }
526                 __mtu__: { get_param: mtu }
527               template:
528                 get_file: k8s_vm_install.sh
529         - path: /opt/k8s_vm_init.sh
530           permissions: '0755'
531           content:
532             str_replace:
533               params:
534                 __host_private_ip_addr__: { get_attr: [k8s_04_floating_ip, fixed_ip_address] }
535                 __host_label__: 'compute'
536               template:
537                 get_file: k8s_vm_init.sh
538         - path: /etc/init.d/k8s_vm_init_serv
539           permissions: '0755'
540           content:
541             get_file: k8s_vm_init_serv.sh
542
543   k8s_04_vm_config:
544     type: OS::Heat::MultipartMime
545     properties:
546       parts:
547       - config: { get_resource: k8s_04_vm_scripts }
548
549   k8s_04_vm:
550     type: OS::Nova::Server
551     properties:
552       name:
553         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '04' ] ]
554       image: { get_param: ubuntu_1804_image }
555       flavor: { get_param: k8s_vm_flavor }
556       key_name: { get_param: key_name }
557       networks:
558       - port: { get_resource: k8s_04_private_port }
559       user_data_format: SOFTWARE_CONFIG
560       user_data: { get_resource: k8s_04_vm_config }
561   k8s_05_private_port:
562     type: OS::Neutron::Port
563     properties:
564       network: { get_resource: oam_network }
565       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
566       security_groups:
567       - { get_resource: onap_sg }
568
569   k8s_05_floating_ip:
570     type: OS::Neutron::FloatingIP
571     properties:
572       floating_network_id: { get_param: public_net_id }
573       port_id: { get_resource: k8s_05_private_port }
574
575   k8s_05_vm_scripts:
576     type: OS::Heat::CloudConfig
577     properties:
578       cloud_config:
579         power_state:
580           mode: reboot
581         runcmd:
582         - [ /opt/k8s_vm_install.sh ]
583         write_files:
584         - path: /opt/k8s_vm_install.sh
585           permissions: '0755'
586           content:
587             str_replace:
588               params:
589                 __docker_proxy__: { get_param: docker_proxy }
590                 __apt_proxy__: { get_param: apt_proxy }
591                 __docker_version__: { get_param: docker_version }
592                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
593                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
594                 __host_private_ip_addr__: { get_attr: [k8s_05_floating_ip, fixed_ip_address] }
595                 __mtu__: { get_param: mtu }
596               template:
597                 get_file: k8s_vm_install.sh
598         - path: /opt/k8s_vm_init.sh
599           permissions: '0755'
600           content:
601             str_replace:
602               params:
603                 __host_private_ip_addr__: { get_attr: [k8s_05_floating_ip, fixed_ip_address] }
604                 __host_label__: 'compute'
605               template:
606                 get_file: k8s_vm_init.sh
607         - path: /etc/init.d/k8s_vm_init_serv
608           permissions: '0755'
609           content:
610             get_file: k8s_vm_init_serv.sh
611
612   k8s_05_vm_config:
613     type: OS::Heat::MultipartMime
614     properties:
615       parts:
616       - config: { get_resource: k8s_05_vm_scripts }
617
618   k8s_05_vm:
619     type: OS::Nova::Server
620     properties:
621       name:
622         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '05' ] ]
623       image: { get_param: ubuntu_1804_image }
624       flavor: { get_param: k8s_vm_flavor }
625       key_name: { get_param: key_name }
626       networks:
627       - port: { get_resource: k8s_05_private_port }
628       user_data_format: SOFTWARE_CONFIG
629       user_data: { get_resource: k8s_05_vm_config }
630   k8s_06_private_port:
631     type: OS::Neutron::Port
632     properties:
633       network: { get_resource: oam_network }
634       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
635       security_groups:
636       - { get_resource: onap_sg }
637
638   k8s_06_floating_ip:
639     type: OS::Neutron::FloatingIP
640     properties:
641       floating_network_id: { get_param: public_net_id }
642       port_id: { get_resource: k8s_06_private_port }
643
644   k8s_06_vm_scripts:
645     type: OS::Heat::CloudConfig
646     properties:
647       cloud_config:
648         power_state:
649           mode: reboot
650         runcmd:
651         - [ /opt/k8s_vm_install.sh ]
652         write_files:
653         - path: /opt/k8s_vm_install.sh
654           permissions: '0755'
655           content:
656             str_replace:
657               params:
658                 __docker_proxy__: { get_param: docker_proxy }
659                 __apt_proxy__: { get_param: apt_proxy }
660                 __docker_version__: { get_param: docker_version }
661                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
662                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
663                 __host_private_ip_addr__: { get_attr: [k8s_06_floating_ip, fixed_ip_address] }
664                 __mtu__: { get_param: mtu }
665               template:
666                 get_file: k8s_vm_install.sh
667         - path: /opt/k8s_vm_init.sh
668           permissions: '0755'
669           content:
670             str_replace:
671               params:
672                 __host_private_ip_addr__: { get_attr: [k8s_06_floating_ip, fixed_ip_address] }
673                 __host_label__: 'compute'
674               template:
675                 get_file: k8s_vm_init.sh
676         - path: /etc/init.d/k8s_vm_init_serv
677           permissions: '0755'
678           content:
679             get_file: k8s_vm_init_serv.sh
680
681   k8s_06_vm_config:
682     type: OS::Heat::MultipartMime
683     properties:
684       parts:
685       - config: { get_resource: k8s_06_vm_scripts }
686
687   k8s_06_vm:
688     type: OS::Nova::Server
689     properties:
690       name:
691         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '06' ] ]
692       image: { get_param: ubuntu_1804_image }
693       flavor: { get_param: k8s_vm_flavor }
694       key_name: { get_param: key_name }
695       networks:
696       - port: { get_resource: k8s_06_private_port }
697       user_data_format: SOFTWARE_CONFIG
698       user_data: { get_resource: k8s_06_vm_config }
699   k8s_07_private_port:
700     type: OS::Neutron::Port
701     properties:
702       network: { get_resource: oam_network }
703       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
704       security_groups:
705       - { get_resource: onap_sg }
706
707   k8s_07_floating_ip:
708     type: OS::Neutron::FloatingIP
709     properties:
710       floating_network_id: { get_param: public_net_id }
711       port_id: { get_resource: k8s_07_private_port }
712
713   k8s_07_vm_scripts:
714     type: OS::Heat::CloudConfig
715     properties:
716       cloud_config:
717         power_state:
718           mode: reboot
719         runcmd:
720         - [ /opt/k8s_vm_install.sh ]
721         write_files:
722         - path: /opt/k8s_vm_install.sh
723           permissions: '0755'
724           content:
725             str_replace:
726               params:
727                 __docker_proxy__: { get_param: docker_proxy }
728                 __apt_proxy__: { get_param: apt_proxy }
729                 __docker_version__: { get_param: docker_version }
730                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
731                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
732                 __host_private_ip_addr__: { get_attr: [k8s_07_floating_ip, fixed_ip_address] }
733                 __mtu__: { get_param: mtu }
734               template:
735                 get_file: k8s_vm_install.sh
736         - path: /opt/k8s_vm_init.sh
737           permissions: '0755'
738           content:
739             str_replace:
740               params:
741                 __host_private_ip_addr__: { get_attr: [k8s_07_floating_ip, fixed_ip_address] }
742                 __host_label__: 'compute'
743               template:
744                 get_file: k8s_vm_init.sh
745         - path: /etc/init.d/k8s_vm_init_serv
746           permissions: '0755'
747           content:
748             get_file: k8s_vm_init_serv.sh
749
750   k8s_07_vm_config:
751     type: OS::Heat::MultipartMime
752     properties:
753       parts:
754       - config: { get_resource: k8s_07_vm_scripts }
755
756   k8s_07_vm:
757     type: OS::Nova::Server
758     properties:
759       name:
760         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '07' ] ]
761       image: { get_param: ubuntu_1804_image }
762       flavor: { get_param: k8s_vm_flavor }
763       key_name: { get_param: key_name }
764       networks:
765       - port: { get_resource: k8s_07_private_port }
766       user_data_format: SOFTWARE_CONFIG
767       user_data: { get_resource: k8s_07_vm_config }
768   k8s_08_private_port:
769     type: OS::Neutron::Port
770     properties:
771       network: { get_resource: oam_network }
772       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
773       security_groups:
774       - { get_resource: onap_sg }
775
776   k8s_08_floating_ip:
777     type: OS::Neutron::FloatingIP
778     properties:
779       floating_network_id: { get_param: public_net_id }
780       port_id: { get_resource: k8s_08_private_port }
781
782   k8s_08_vm_scripts:
783     type: OS::Heat::CloudConfig
784     properties:
785       cloud_config:
786         power_state:
787           mode: reboot
788         runcmd:
789         - [ /opt/k8s_vm_install.sh ]
790         write_files:
791         - path: /opt/k8s_vm_install.sh
792           permissions: '0755'
793           content:
794             str_replace:
795               params:
796                 __docker_proxy__: { get_param: docker_proxy }
797                 __apt_proxy__: { get_param: apt_proxy }
798                 __docker_version__: { get_param: docker_version }
799                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
800                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
801                 __host_private_ip_addr__: { get_attr: [k8s_08_floating_ip, fixed_ip_address] }
802                 __mtu__: { get_param: mtu }
803               template:
804                 get_file: k8s_vm_install.sh
805         - path: /opt/k8s_vm_init.sh
806           permissions: '0755'
807           content:
808             str_replace:
809               params:
810                 __host_private_ip_addr__: { get_attr: [k8s_08_floating_ip, fixed_ip_address] }
811                 __host_label__: 'compute'
812               template:
813                 get_file: k8s_vm_init.sh
814         - path: /etc/init.d/k8s_vm_init_serv
815           permissions: '0755'
816           content:
817             get_file: k8s_vm_init_serv.sh
818
819   k8s_08_vm_config:
820     type: OS::Heat::MultipartMime
821     properties:
822       parts:
823       - config: { get_resource: k8s_08_vm_scripts }
824
825   k8s_08_vm:
826     type: OS::Nova::Server
827     properties:
828       name:
829         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '08' ] ]
830       image: { get_param: ubuntu_1804_image }
831       flavor: { get_param: k8s_vm_flavor }
832       key_name: { get_param: key_name }
833       networks:
834       - port: { get_resource: k8s_08_private_port }
835       user_data_format: SOFTWARE_CONFIG
836       user_data: { get_resource: k8s_08_vm_config }
837   k8s_09_private_port:
838     type: OS::Neutron::Port
839     properties:
840       network: { get_resource: oam_network }
841       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
842       security_groups:
843       - { get_resource: onap_sg }
844
845   k8s_09_floating_ip:
846     type: OS::Neutron::FloatingIP
847     properties:
848       floating_network_id: { get_param: public_net_id }
849       port_id: { get_resource: k8s_09_private_port }
850
851   k8s_09_vm_scripts:
852     type: OS::Heat::CloudConfig
853     properties:
854       cloud_config:
855         power_state:
856           mode: reboot
857         runcmd:
858         - [ /opt/k8s_vm_install.sh ]
859         write_files:
860         - path: /opt/k8s_vm_install.sh
861           permissions: '0755'
862           content:
863             str_replace:
864               params:
865                 __docker_proxy__: { get_param: docker_proxy }
866                 __apt_proxy__: { get_param: apt_proxy }
867                 __docker_version__: { get_param: docker_version }
868                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
869                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
870                 __host_private_ip_addr__: { get_attr: [k8s_09_floating_ip, fixed_ip_address] }
871                 __mtu__: { get_param: mtu }
872               template:
873                 get_file: k8s_vm_install.sh
874         - path: /opt/k8s_vm_init.sh
875           permissions: '0755'
876           content:
877             str_replace:
878               params:
879                 __host_private_ip_addr__: { get_attr: [k8s_09_floating_ip, fixed_ip_address] }
880                 __host_label__: 'compute'
881               template:
882                 get_file: k8s_vm_init.sh
883         - path: /etc/init.d/k8s_vm_init_serv
884           permissions: '0755'
885           content:
886             get_file: k8s_vm_init_serv.sh
887
888   k8s_09_vm_config:
889     type: OS::Heat::MultipartMime
890     properties:
891       parts:
892       - config: { get_resource: k8s_09_vm_scripts }
893
894   k8s_09_vm:
895     type: OS::Nova::Server
896     properties:
897       name:
898         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '09' ] ]
899       image: { get_param: ubuntu_1804_image }
900       flavor: { get_param: k8s_vm_flavor }
901       key_name: { get_param: key_name }
902       networks:
903       - port: { get_resource: k8s_09_private_port }
904       user_data_format: SOFTWARE_CONFIG
905       user_data: { get_resource: k8s_09_vm_config }
906   orch_1_private_port:
907     type: OS::Neutron::Port
908     properties:
909       network: { get_resource: oam_network }
910       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
911       security_groups:
912       - { get_resource: onap_sg }
913
914   orch_1_floating_ip:
915     type: OS::Neutron::FloatingIP
916     properties:
917       floating_network_id: { get_param: public_net_id }
918       port_id: { get_resource: orch_1_private_port }
919
920   orch_1_vm_scripts:
921     type: OS::Heat::CloudConfig
922     properties:
923       cloud_config:
924         power_state:
925           mode: reboot
926         runcmd:
927         - [ /opt/k8s_vm_install.sh ]
928         write_files:
929         - path: /opt/k8s_vm_install.sh
930           permissions: '0755'
931           content:
932             str_replace:
933               params:
934                 __docker_proxy__: { get_param: docker_proxy }
935                 __apt_proxy__: { get_param: apt_proxy }
936                 __docker_version__: { get_param: docker_version }
937                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
938                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
939                 __host_private_ip_addr__: { get_attr: [orch_1_floating_ip, fixed_ip_address] }
940                 __mtu__: { get_param: mtu }
941               template:
942                 get_file: k8s_vm_install.sh
943         - path: /opt/k8s_vm_init.sh
944           permissions: '0755'
945           content:
946             str_replace:
947               params:
948                 __host_private_ip_addr__: { get_attr: [orch_1_floating_ip, fixed_ip_address] }
949                 __host_label__: 'orchestration'
950               template:
951                 get_file: k8s_vm_init.sh
952         - path: /etc/init.d/k8s_vm_init_serv
953           permissions: '0755'
954           content:
955             get_file: k8s_vm_init_serv.sh
956
957   orch_1_vm_config:
958     type: OS::Heat::MultipartMime
959     properties:
960       parts:
961       - config: { get_resource: orch_1_vm_scripts }
962
963   orch_1_vm:
964     type: OS::Nova::Server
965     properties:
966       name:
967         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'orch', '1' ] ]
968       image: { get_param: ubuntu_1804_image }
969       flavor: { get_param: orch_vm_flavor }
970       key_name: { get_param: key_name }
971       networks:
972       - port: { get_resource: orch_1_private_port }
973       user_data_format: SOFTWARE_CONFIG
974       user_data: { get_resource: orch_1_vm_config }
975   orch_2_private_port:
976     type: OS::Neutron::Port
977     properties:
978       network: { get_resource: oam_network }
979       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
980       security_groups:
981       - { get_resource: onap_sg }
982
983   orch_2_floating_ip:
984     type: OS::Neutron::FloatingIP
985     properties:
986       floating_network_id: { get_param: public_net_id }
987       port_id: { get_resource: orch_2_private_port }
988
989   orch_2_vm_scripts:
990     type: OS::Heat::CloudConfig
991     properties:
992       cloud_config:
993         power_state:
994           mode: reboot
995         runcmd:
996         - [ /opt/k8s_vm_install.sh ]
997         write_files:
998         - path: /opt/k8s_vm_install.sh
999           permissions: '0755'
1000           content:
1001             str_replace:
1002               params:
1003                 __docker_proxy__: { get_param: docker_proxy }
1004                 __apt_proxy__: { get_param: apt_proxy }
1005                 __docker_version__: { get_param: docker_version }
1006                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
1007                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
1008                 __host_private_ip_addr__: { get_attr: [orch_2_floating_ip, fixed_ip_address] }
1009                 __mtu__: { get_param: mtu }
1010               template:
1011                 get_file: k8s_vm_install.sh
1012         - path: /opt/k8s_vm_init.sh
1013           permissions: '0755'
1014           content:
1015             str_replace:
1016               params:
1017                 __host_private_ip_addr__: { get_attr: [orch_2_floating_ip, fixed_ip_address] }
1018                 __host_label__: 'orchestration'
1019               template:
1020                 get_file: k8s_vm_init.sh
1021         - path: /etc/init.d/k8s_vm_init_serv
1022           permissions: '0755'
1023           content:
1024             get_file: k8s_vm_init_serv.sh
1025
1026   orch_2_vm_config:
1027     type: OS::Heat::MultipartMime
1028     properties:
1029       parts:
1030       - config: { get_resource: orch_2_vm_scripts }
1031
1032   orch_2_vm:
1033     type: OS::Nova::Server
1034     properties:
1035       name:
1036         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'orch', '2' ] ]
1037       image: { get_param: ubuntu_1804_image }
1038       flavor: { get_param: orch_vm_flavor }
1039       key_name: { get_param: key_name }
1040       networks:
1041       - port: { get_resource: orch_2_private_port }
1042       user_data_format: SOFTWARE_CONFIG
1043       user_data: { get_resource: orch_2_vm_config }
1044   orch_3_private_port:
1045     type: OS::Neutron::Port
1046     properties:
1047       network: { get_resource: oam_network }
1048       fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
1049       security_groups:
1050       - { get_resource: onap_sg }
1051
1052   orch_3_floating_ip:
1053     type: OS::Neutron::FloatingIP
1054     properties:
1055       floating_network_id: { get_param: public_net_id }
1056       port_id: { get_resource: orch_3_private_port }
1057
1058   orch_3_vm_scripts:
1059     type: OS::Heat::CloudConfig
1060     properties:
1061       cloud_config:
1062         power_state:
1063           mode: reboot
1064         runcmd:
1065         - [ /opt/k8s_vm_install.sh ]
1066         write_files:
1067         - path: /opt/k8s_vm_install.sh
1068           permissions: '0755'
1069           content:
1070             str_replace:
1071               params:
1072                 __docker_proxy__: { get_param: docker_proxy }
1073                 __apt_proxy__: { get_param: apt_proxy }
1074                 __docker_version__: { get_param: docker_version }
1075                 __nfs_ip_addr__: { get_attr: [nfs_floating_ip, floating_ip_address] }
1076                 __nfs_private_ip_addr__: { get_attr: [nfs_floating_ip, fixed_ip_address] }
1077                 __host_private_ip_addr__: { get_attr: [orch_3_floating_ip, fixed_ip_address] }
1078                 __mtu__: { get_param: mtu }
1079               template:
1080                 get_file: k8s_vm_install.sh
1081         - path: /opt/k8s_vm_init.sh
1082           permissions: '0755'
1083           content:
1084             str_replace:
1085               params:
1086                 __host_private_ip_addr__: { get_attr: [orch_3_floating_ip, fixed_ip_address] }
1087                 __host_label__: 'orchestration'
1088               template:
1089                 get_file: k8s_vm_init.sh
1090         - path: /etc/init.d/k8s_vm_init_serv
1091           permissions: '0755'
1092           content:
1093             get_file: k8s_vm_init_serv.sh
1094
1095   orch_3_vm_config:
1096     type: OS::Heat::MultipartMime
1097     properties:
1098       parts:
1099       - config: { get_resource: orch_3_vm_scripts }
1100
1101   orch_3_vm:
1102     type: OS::Nova::Server
1103     properties:
1104       name:
1105         list_join: ['-', [ { get_param: 'OS::stack_name' }, 'orch', '3' ] ]
1106       image: { get_param: ubuntu_1804_image }
1107       flavor: { get_param: orch_vm_flavor }
1108       key_name: { get_param: key_name }
1109       networks:
1110       - port: { get_resource: orch_3_private_port }
1111       user_data_format: SOFTWARE_CONFIG
1112       user_data: { get_resource: orch_3_vm_config }
1113 outputs:
1114   docker_proxy:
1115     value: { get_param: docker_proxy }
1116
1117   nfs_vm_ip:
1118     description: The IP address of the nfs instance
1119     value: { get_attr: [nfs_floating_ip, floating_ip_address] }
1120
1121   nfs_vm_private_ip:
1122     description: The private IP address of the nfs instance
1123     value: { get_attr: [nfs_floating_ip, fixed_ip_address] }
1124
1125   k8s_01_vm_ip:
1126     description: The IP address of the k8s_01 instance
1127     value: { get_attr: [k8s_01_floating_ip, floating_ip_address] }
1128
1129   k8s_01_vm_private_ip:
1130     description: The private IP address of the k8s_01 instance
1131     value: { get_attr: [k8s_01_floating_ip, fixed_ip_address] }
1132
1133   k8s_02_vm_ip:
1134     description: The IP address of the k8s_02 instance
1135     value: { get_attr: [k8s_02_floating_ip, floating_ip_address] }
1136
1137   k8s_02_vm_private_ip:
1138     description: The private IP address of the k8s_02 instance
1139     value: { get_attr: [k8s_02_floating_ip, fixed_ip_address] }
1140
1141   k8s_03_vm_ip:
1142     description: The IP address of the k8s_03 instance
1143     value: { get_attr: [k8s_03_floating_ip, floating_ip_address] }
1144
1145   k8s_03_vm_private_ip:
1146     description: The private IP address of the k8s_03 instance
1147     value: { get_attr: [k8s_03_floating_ip, fixed_ip_address] }
1148
1149   k8s_04_vm_ip:
1150     description: The IP address of the k8s_04 instance
1151     value: { get_attr: [k8s_04_floating_ip, floating_ip_address] }
1152
1153   k8s_04_vm_private_ip:
1154     description: The private IP address of the k8s_04 instance
1155     value: { get_attr: [k8s_04_floating_ip, fixed_ip_address] }
1156
1157   k8s_05_vm_ip:
1158     description: The IP address of the k8s_05 instance
1159     value: { get_attr: [k8s_05_floating_ip, floating_ip_address] }
1160
1161   k8s_05_vm_private_ip:
1162     description: The private IP address of the k8s_05 instance
1163     value: { get_attr: [k8s_05_floating_ip, fixed_ip_address] }
1164
1165   k8s_06_vm_ip:
1166     description: The IP address of the k8s_06 instance
1167     value: { get_attr: [k8s_06_floating_ip, floating_ip_address] }
1168
1169   k8s_06_vm_private_ip:
1170     description: The private IP address of the k8s_06 instance
1171     value: { get_attr: [k8s_06_floating_ip, fixed_ip_address] }
1172
1173   k8s_07_vm_ip:
1174     description: The IP address of the k8s_07 instance
1175     value: { get_attr: [k8s_07_floating_ip, floating_ip_address] }
1176
1177   k8s_07_vm_private_ip:
1178     description: The private IP address of the k8s_07 instance
1179     value: { get_attr: [k8s_07_floating_ip, fixed_ip_address] }
1180
1181   k8s_08_vm_ip:
1182     description: The IP address of the k8s_08 instance
1183     value: { get_attr: [k8s_08_floating_ip, floating_ip_address] }
1184
1185   k8s_08_vm_private_ip:
1186     description: The private IP address of the k8s_08 instance
1187     value: { get_attr: [k8s_08_floating_ip, fixed_ip_address] }
1188
1189   k8s_09_vm_ip:
1190     description: The IP address of the k8s_09 instance
1191     value: { get_attr: [k8s_09_floating_ip, floating_ip_address] }
1192
1193   k8s_09_vm_private_ip:
1194     description: The private IP address of the k8s_09 instance
1195     value: { get_attr: [k8s_09_floating_ip, fixed_ip_address] }
1196
1197   orch_1_vm_ip:
1198     description: The IP address of the orch_1 instance
1199     value: { get_attr: [orch_1_floating_ip, floating_ip_address] }
1200
1201   orch_1_vm_private_ip:
1202     description: The private IP address of the orch_1 instance
1203     value: { get_attr: [orch_1_floating_ip, fixed_ip_address] }
1204
1205   orch_2_vm_ip:
1206     description: The IP address of the orch_2 instance
1207     value: { get_attr: [orch_2_floating_ip, floating_ip_address] }
1208
1209   orch_2_vm_private_ip:
1210     description: The private IP address of the orch_2 instance
1211     value: { get_attr: [orch_2_floating_ip, fixed_ip_address] }
1212
1213   orch_3_vm_ip:
1214     description: The IP address of the orch_3 instance
1215     value: { get_attr: [orch_3_floating_ip, floating_ip_address] }
1216
1217   orch_3_vm_private_ip:
1218     description: The private IP address of the orch_3 instance
1219     value: { get_attr: [orch_3_floating_ip, fixed_ip_address] }