1 heat_template_version: 2015-10-15
3 description: Heat template to install ONAP components
13 ##############################################
15 # Parameters used across all ONAP components #
17 ##############################################
21 description: Public network for floating IP address allocation
25 description: Name of the Ubuntu 14.04 image
29 description: Name of the Ubuntu 16.04 image
33 description: Name of the Small Flavor supported by the cloud provider
37 description: Name of the Medium Flavor supported by the cloud provider
41 description: Name of the Large Flavor supported by the cloud provider
45 description: Name of the Extra Large Flavor supported by the cloud provider
49 description: Base name of ONAP VMs
53 description: Public/Private key pair name
57 description: Public key to be installed on the compute instance
61 description: Complete URL for the Nexus repository.
65 description: Complete URL for the Nexus repository for docker images.
69 description: Nexus Repository username
73 description: Nexus Repository Password
77 description: Artifacts version of ONAP components
81 label: Version number of ONAP docker images
85 label: Gerrit code branch
86 description: Gerrit branch where to download the code from
90 description: DMaaP Topic name
94 description: Openstack tenant ID
98 description: Openstack username
100 openstack_auth_method:
102 description: Openstack authentication method (password VS. api-key)
106 description: Openstack API Key
110 description: URL of Openstack Horizon
114 description: URL of Openstack Keystone
118 description: Cloud Provider Name
120 ######################
122 # Network parameters #
124 ######################
127 type: comma_delimited_list
128 description: External DNS for OAM ONAP network
130 ### Private IP addresses ###
133 description: CIDR of the OAM ONAP network
137 description: AAI IP Address
141 description: APP-C IP Address
145 description: DCAE IP Address
149 description: DCAE Collector IP Address
153 description: DCAE Database IP Address
157 description: Hadoop VM1 IP Address
161 description: Hadoop VM2 IP Address
165 description: Hadoop VM3 IP Address
169 description: DNS IP Address
173 description: MSO IP Address
177 description: Message Router IP Address
181 description: Policy Engine IP Address
185 description: Portal IP Address
189 description: Robot Framework IP Address
193 description: SDC IP Address
197 description: SDN-C IP Address
201 description: VID IP Address
204 ###########################
206 # Parameters used by DCAE #
208 ###########################
210 dcae_base_environment:
212 description: DCAE Base Environment configuration (RACKSPACE/2-NIC/...)
216 description: DCAE Zone to use in VM names created by DCAE controller
220 description: DCAE State to use in VM names created by DCAE controller
224 description: Root URL of Nexus repository
228 description: Snapshot of Maven repository for DCAE deployment
232 description: Region where the DCAE controller will spin the VMs
236 description: Branch of the Gitlab repository
240 description: DCAE Code Version Number
251 type: OS::Heat::RandomString
256 # Public key used to access ONAP components
258 type: OS::Nova::KeyPair
264 base: { get_param: key_name }
265 rand: { get_resource: random-str }
266 public_key: { get_param: pub_key }
267 save_private_key: false
270 # ONAP management private network
272 type: OS::Neutron::Net
276 template: oam_ecomp_rand
278 rand: { get_resource: random-str }
281 type: OS::Neutron::Subnet
285 template: oam_ecomp_rand
287 rand: { get_resource: random-str }
288 network_id: { get_resource: oam_ecomp }
289 cidr: { get_param: oam_network_cidr }
290 dns_nameservers: { get_param: external_dns }
293 type: OS::Neutron::Router
295 external_gateway_info:
296 network: { get_param: public_net_id }
299 type: OS::Neutron::RouterInterface
301 router_id: { get_resource: router }
302 subnet_id: { get_resource: oam_ecomp_subnet }
305 # DNS Server instantiation
307 type: OS::Neutron::Port
309 network: { get_resource: oam_ecomp }
310 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dns_ip_addr }}]
313 type: OS::Neutron::FloatingIP
315 floating_network_id: { get_param: public_net_id }
316 port_id: { get_resource: dns_private_port }
319 type: OS::Nova::Server
321 image: { get_param: ubuntu_1404_image }
322 flavor: { get_param: flavor_small }
325 template: base-dns-server
327 base: { get_param: vm_base_name }
328 key_name: { get_resource: vm_key }
330 - port: { get_resource: dns_private_port }
331 user_data_format: RAW
335 __nexus_repo__: { get_param: nexus_repo }
336 __artifacts_version__: { get_param: artifacts_version }
337 __oam_network_cidr__: { get_attr: [oam_ecomp_subnet, cidr] }
338 __dns_ip_addr__: { get_param: dns_ip_addr }
339 __aai_ip_addr__: { get_param: aai_ip_addr }
340 __appc_ip_addr__: { get_param: appc_ip_addr }
341 __dcae_ip_addr__: { get_param: dcae_ip_addr }
342 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
343 __mso_ip_addr__: { get_param: mso_ip_addr }
344 __mr_ip_addr__: { get_param: mr_ip_addr }
345 __policy_ip_addr__: { get_param: policy_ip_addr }
346 __portal_ip_addr__: { get_param: portal_ip_addr }
347 __robot_ip_addr__: { get_param: robot_ip_addr }
348 __sdc_ip_addr__: { get_param: sdc_ip_addr }
349 __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
350 __vid_ip_addr__: { get_param: vid_ip_addr }
351 __cloud_env__: { get_param: cloud_env }
356 # Create configuration files
358 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
359 echo "__cloud_env__" > /opt/config/cloud_env.txt
360 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
361 echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
362 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
363 echo "__aai_ip_addr__" > /opt/config/aai_ip_addr.txt
364 echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
365 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
366 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
367 echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
368 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
369 echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
370 echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
371 echo "__robot_ip_addr__" > /opt/config/robot_ip_addr.txt
372 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
373 echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
374 echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
376 # Download and run install script
377 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dns_install.sh -o /opt/dns_install.sh
379 chmod +x dns_install.sh
385 type: OS::Neutron::Port
387 network: { get_resource: oam_ecomp }
388 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai_ip_addr }}]
391 type: OS::Neutron::FloatingIP
393 floating_network_id: { get_param: public_net_id }
394 port_id: { get_resource: aai_private_port }
397 type: OS::Nova::Server
399 image: { get_param: ubuntu_1404_image }
400 flavor: { get_param: flavor_xlarge }
405 base: { get_param: vm_base_name }
406 key_name: { get_resource: vm_key }
408 - port: { get_resource: aai_private_port }
409 user_data_format: RAW
413 __nexus_repo__: { get_param: nexus_repo }
414 __nexus_docker_repo__: { get_param: nexus_docker_repo }
415 __nexus_username__: { get_param: nexus_username }
416 __nexus_password__: { get_param: nexus_password }
417 __dmaap_topic__: { get_param: dmaap_topic }
418 __artifacts_version__: { get_param: artifacts_version }
419 __dns_ip_addr__: { get_param: dns_ip_addr }
420 __sdc_ip_addr__: { get_param: sdc_ip_addr }
421 __docker_version__: { get_param: docker_version }
422 __cloud_env__: { get_param: cloud_env }
423 __external_dns__: { get_param: external_dns }
427 # Create configuration files
429 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
430 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
431 echo "__nexus_username__" > /opt/config/nexus_username.txt
432 echo "__nexus_password__" > /opt/config/nexus_password.txt
433 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
434 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
435 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
436 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
437 echo "__docker_version__" > /opt/config/docker_version.txt
438 echo "__cloud_env__" > /opt/config/cloud_env.txt
439 echo "__external_dns__" > /opt/config/external_dns.txt
441 # Download and run install script
442 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
444 chmod +x aai_install.sh
450 type: OS::Neutron::Port
452 network: { get_resource: oam_ecomp }
453 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mso_ip_addr }}]
456 type: OS::Neutron::FloatingIP
458 floating_network_id: { get_param: public_net_id }
459 port_id: { get_resource: mso_private_port }
462 type: OS::Nova::Server
464 image: { get_param: ubuntu_1604_image }
465 flavor: { get_param: flavor_large }
470 base: { get_param: vm_base_name }
471 key_name: { get_resource: vm_key }
473 - port: { get_resource: mso_private_port }
474 user_data_format: RAW
478 __nexus_repo__: { get_param: nexus_repo }
479 __nexus_docker_repo__: { get_param: nexus_docker_repo }
480 __nexus_username__: { get_param: nexus_username }
481 __nexus_password__: { get_param: nexus_password }
482 __openstack_username__: { get_param: openstack_username }
483 __openstack_tenant_id__: { get_param: openstack_tenant_id }
484 __openstack_api_key__: { get_param: openstack_api_key }
485 __keystone_url__: { get_param: keystone_url }
486 __dmaap_topic__: { get_param: dmaap_topic }
487 __artifacts_version__: { get_param: artifacts_version }
488 __dns_ip_addr__: { get_param: dns_ip_addr }
489 __docker_version__: { get_param: docker_version }
490 __gerrit_branch__: { get_param: gerrit_branch }
491 __cloud_env__: { get_param: cloud_env }
492 __external_dns__: { get_param: external_dns }
496 # Create configuration files
498 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
499 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
500 echo "__nexus_username__" > /opt/config/nexus_username.txt
501 echo "__nexus_password__" > /opt/config/nexus_password.txt
502 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
503 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
504 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
505 echo "__openstack_username__" > /opt/config/openstack_username.txt
506 echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
507 echo "__openstack_api_key__" > /opt/config/openstack_api_key.txt
508 echo "__keystone_url__" > /opt/config/keystone.txt
509 echo "__docker_version__" > /opt/config/docker_version.txt
510 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
511 echo "__cloud_env__" > /opt/config/cloud_env.txt
512 echo "__external_dns__" > /opt/config/external_dns.txt
514 # Download and run install script
515 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mso_install.sh -o /opt/mso_install.sh
517 chmod +x mso_install.sh
521 # Message Router instantiation
522 mrouter_private_port:
523 type: OS::Neutron::Port
525 network: { get_resource: oam_ecomp }
526 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mr_ip_addr }}]
529 type: OS::Neutron::FloatingIP
531 floating_network_id: { get_param: public_net_id }
532 port_id: { get_resource: mrouter_private_port }
535 type: OS::Nova::Server
537 image: { get_param: ubuntu_1404_image }
538 flavor: { get_param: flavor_large }
541 template: base-message-router
543 base: { get_param: vm_base_name }
544 key_name: { get_resource: vm_key }
546 - port: { get_resource: mrouter_private_port }
547 user_data_format: RAW
551 __nexus_repo__: { get_param: nexus_repo }
552 __nexus_docker_repo__: { get_param: nexus_docker_repo }
553 __nexus_username__: { get_param: nexus_username }
554 __nexus_password__: { get_param: nexus_password }
555 __artifacts_version__: { get_param: artifacts_version }
556 __dns_ip_addr__: { get_param: dns_ip_addr }
557 __gerrit_branch__: { get_param: gerrit_branch }
558 __cloud_env__: { get_param: cloud_env }
559 __external_dns__: { get_param: external_dns }
563 # Create configuration files
565 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
566 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
567 echo "__nexus_username__" > /opt/config/nexus_username.txt
568 echo "__nexus_password__" > /opt/config/nexus_password.txt
569 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
570 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
571 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
572 echo "__cloud_env__" > /opt/config/cloud_env.txt
573 echo "__external_dns__" > /opt/config/external_dns.txt
575 # Download and run install script
576 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh
578 chmod +x mr_install.sh
582 # Robot Framework instantiation
584 type: OS::Neutron::Port
586 network: { get_resource: oam_ecomp }
587 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: robot_ip_addr }}]
590 type: OS::Neutron::FloatingIP
592 floating_network_id: { get_param: public_net_id }
593 port_id: { get_resource: robot_private_port }
596 type: OS::Nova::Server
598 image: { get_param: ubuntu_1604_image }
599 flavor: { get_param: flavor_small }
604 base: { get_param: vm_base_name }
605 key_name: { get_resource: vm_key }
607 - port: { get_resource: robot_private_port }
608 user_data_format: RAW
612 __nexus_repo__: { get_param: nexus_repo }
613 __nexus_docker_repo__: { get_param: nexus_docker_repo }
614 __nexus_username__: { get_param: nexus_username }
615 __nexus_password__: { get_param: nexus_password }
616 __network_name__: { get_attr: [oam_ecomp, name] }
617 __openstack_username__: { get_param: openstack_username }
618 __openstack_api_key__: { get_param : openstack_api_key }
619 __artifacts_version__: { get_param: artifacts_version }
620 __openstack_region__: { get_param: openstack_region }
621 __dns_ip_addr__: { get_param: dns_ip_addr }
622 __docker_version__: { get_param: docker_version }
623 __gerrit_branch__: { get_param: gerrit_branch }
624 __cloud_env__: { get_param: cloud_env }
625 __external_dns__: { get_param: external_dns }
629 # Create configuration files
631 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
632 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
633 echo "__nexus_username__" > /opt/config/nexus_username.txt
634 echo "__nexus_password__" > /opt/config/nexus_password.txt
635 echo "__network_name__" > /opt/config/network.txt
636 echo "__openstack_username__" > /opt/config/openstack_username.txt
637 echo "__openstack_api_key__" > /opt/config/openstack_password.txt
638 echo "__openstack_region__" > /opt/config/region.txt
639 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
640 echo "__docker_version__" > /opt/config/docker_version.txt
641 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
642 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
643 echo "__cloud_env__" > /opt/config/cloud_env.txt
644 echo "__external_dns__" > /opt/config/external_dns.txt
646 # Download and run install script
647 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/robot_install.sh -o /opt/robot_install.sh
649 chmod +x robot_install.sh
655 type: OS::Neutron::Port
657 network: { get_resource: oam_ecomp }
658 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: vid_ip_addr }}]
661 type: OS::Neutron::FloatingIP
663 floating_network_id: { get_param: public_net_id }
664 port_id: { get_resource: vid_private_port }
667 type: OS::Nova::Server
669 image: { get_param: ubuntu_1404_image }
670 flavor: { get_param: flavor_medium }
675 base: { get_param: vm_base_name }
676 key_name: { get_resource: vm_key }
678 - port: { get_resource: vid_private_port }
679 user_data_format: RAW
683 __nexus_repo__: { get_param: nexus_repo }
684 __nexus_docker_repo__: { get_param: nexus_docker_repo }
685 __nexus_username__: { get_param: nexus_username }
686 __nexus_password__: { get_param: nexus_password }
687 __artifacts_version__: { get_param: artifacts_version }
688 __dns_ip_addr__: { get_param: dns_ip_addr }
689 __docker_version__: { get_param: docker_version }
690 __gerrit_branch__: { get_param: gerrit_branch }
691 __cloud_env__: { get_param: cloud_env }
692 __external_dns__: { get_param: external_dns }
696 # Create configuration files
698 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
699 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
700 echo "__nexus_username__" > /opt/config/nexus_username.txt
701 echo "__nexus_password__" > /opt/config/nexus_password.txt
702 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
703 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
704 echo "__docker_version__" > /opt/config/docker_version.txt
705 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
706 echo "__cloud_env__" > /opt/config/cloud_env.txt
707 echo "__external_dns__" > /opt/config/external_dns.txt
709 # Download and run install script
710 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/vid_install.sh -o /opt/vid_install.sh
712 chmod +x vid_install.sh
716 # SDN-C instantiation
718 type: OS::Neutron::Port
720 network: { get_resource: oam_ecomp }
721 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
724 type: OS::Neutron::FloatingIP
726 floating_network_id: { get_param: public_net_id }
727 port_id: { get_resource: sdnc_private_port }
730 type: OS::Nova::Server
732 image: { get_param: ubuntu_1404_image }
733 flavor: { get_param: flavor_large }
738 base: { get_param: vm_base_name }
739 key_name: { get_resource: vm_key }
741 - port: { get_resource: sdnc_private_port }
742 user_data_format: RAW
746 __nexus_repo__: { get_param: nexus_repo }
747 __nexus_docker_repo__: { get_param: nexus_docker_repo }
748 __nexus_username__: { get_param: nexus_username }
749 __nexus_password__: { get_param: nexus_password }
750 __artifacts_version__: { get_param: artifacts_version }
751 __dns_ip_addr__: { get_param: dns_ip_addr }
752 __docker_version__: { get_param: docker_version }
753 __gerrit_branch__: { get_param: gerrit_branch }
754 __cloud_env__: { get_param: cloud_env }
755 __external_dns__: { get_param: external_dns }
759 # Create configuration files
761 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
762 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
763 echo "__nexus_username__" > /opt/config/nexus_username.txt
764 echo "__nexus_password__" > /opt/config/nexus_password.txt
765 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
766 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
767 echo "__docker_version__" > /opt/config/docker_version.txt
768 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
769 echo "__cloud_env__" > /opt/config/cloud_env.txt
770 echo "__external_dns__" > /opt/config/external_dns.txt
772 # Download and run install script
773 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/sdnc_install.sh -o /opt/sdnc_install.sh
775 chmod +x sdnc_install.sh
781 type: OS::Neutron::Port
783 network: { get_resource: oam_ecomp }
784 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
787 type: OS::Neutron::FloatingIP
789 floating_network_id: { get_param: public_net_id }
790 port_id: { get_resource: sdc_private_port }
793 type: OS::Cinder::Volume
799 type: OS::Nova::Server
801 image: { get_param: ubuntu_1604_image }
802 flavor: { get_param: flavor_xlarge }
807 base: { get_param: vm_base_name }
808 key_name: { get_resource: vm_key }
810 - port: { get_resource: sdc_private_port }
811 block_device_mapping:
812 - device_name: /dev/vdb
813 volume_id: {get_resource: sdc_volume_data}
814 user_data_format: RAW
818 __nexus_repo__: { get_param: nexus_repo }
819 __nexus_docker_repo__: { get_param: nexus_docker_repo }
820 __nexus_username__: { get_param: nexus_username }
821 __nexus_password__: { get_param: nexus_password }
822 __env_name__: { get_param: dmaap_topic }
823 __artifacts_version__: { get_param: artifacts_version }
824 __dns_ip_addr__: { get_param: dns_ip_addr }
825 __mr_ip_addr__: { get_param: mr_ip_addr }
826 __public_ip__: { get_attr: [sdc_floating_ip, floating_ip_address] }
827 __docker_version__: { get_param: docker_version }
828 __gerrit_branch__: { get_param: gerrit_branch }
829 __cloud_env__: { get_param: cloud_env }
830 __external_dns__: { get_param: external_dns }
834 # Create configuration files
836 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
837 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
838 echo "__nexus_username__" > /opt/config/nexus_username.txt
839 echo "__nexus_password__" > /opt/config/nexus_password.txt
840 echo "__env_name__" > /opt/config/env_name.txt
841 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
842 echo "__public_ip__" > /opt/config/public_ip.txt
843 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
844 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
845 echo "__docker_version__" > /opt/config/docker_version.txt
846 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
847 echo "__cloud_env__" > /opt/config/cloud_env.txt
848 echo "__external_dns__" > /opt/config/external_dns.txt
850 # Download and run install script
851 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/asdc_install.sh -o /opt/asdc_install.sh
853 chmod +x asdc_install.sh
857 # PORTAL instantiation
859 type: OS::Neutron::Port
861 network: { get_resource: oam_ecomp }
862 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: portal_ip_addr }}]
865 type: OS::Neutron::FloatingIP
867 floating_network_id: { get_param: public_net_id }
868 port_id: { get_resource: portal_private_port }
871 type: OS::Nova::Server
873 image: { get_param: ubuntu_1404_image }
874 flavor: { get_param: flavor_large }
877 template: base-portal
879 base: { get_param: vm_base_name }
880 key_name: { get_resource: vm_key }
882 - port: { get_resource: portal_private_port }
883 user_data_format: RAW
887 __nexus_repo__: { get_param: nexus_repo }
888 __nexus_docker_repo__: { get_param: nexus_docker_repo }
889 __nexus_username__: { get_param: nexus_username }
890 __nexus_password__: { get_param: nexus_password }
891 __artifacts_version__: { get_param: artifacts_version }
892 __dns_ip_addr__: { get_param: dns_ip_addr }
893 __public_ip__: { get_attr: [portal_floating_ip, floating_ip_address] }
894 __docker_version__: { get_param: docker_version }
895 __gerrit_branch__: { get_param: gerrit_branch }
896 __cloud_env__: { get_param: cloud_env }
897 __external_dns__: { get_param: external_dns }
901 # Create configuration files
903 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
904 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
905 echo "__nexus_username__" > /opt/config/nexus_username.txt
906 echo "__nexus_password__" > /opt/config/nexus_password.txt
907 echo "__public_ip__" > /opt/config/public_ip.txt
908 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
909 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
910 echo "__docker_version__" > /opt/config/docker_version.txt
911 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
912 echo "__cloud_env__" > /opt/config/cloud_env.txt
913 echo "__external_dns__" > /opt/config/external_dns.txt
915 # Download and run install script
916 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/portal_install.sh -o /opt/portal_install.sh
918 chmod +x portal_install.sh
922 # DCAE Controller instantiation
924 type: OS::Neutron::Port
926 network: { get_resource: oam_ecomp }
927 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
930 type: OS::Neutron::FloatingIP
932 floating_network_id: { get_param: public_net_id }
933 port_id: { get_resource: dcae_c_private_port }
936 type: OS::Nova::Server
938 image: { get_param: ubuntu_1404_image }
939 flavor: { get_param: flavor_medium }
942 template: base-dcae-controller
944 base: { get_param: vm_base_name }
945 key_name: { get_resource: vm_key }
947 - port: { get_resource: dcae_c_private_port }
948 user_data_format: RAW
952 __nexus_repo__: { get_param: nexus_repo }
953 __nexus_docker_repo__: { get_param: nexus_docker_repo }
954 __nexus_username__: { get_param: nexus_username }
955 __nexus_password__: { get_param: nexus_password }
956 __nexus_url_snapshots__: { get_param: nexus_url_snapshot }
957 __gitlab_branch__: { get_param: gitlab_branch }
958 __dns_ip_addr__: { get_param: dns_ip_addr }
959 __dcae_zone__: { get_param: dcae_zone }
960 __dcae_state__: { get_param: dcae_state }
961 __artifacts_version__: { get_param: artifacts_version }
962 __tenant_id__: { get_param: openstack_tenant_id }
963 __openstack_private_network_name__: { get_attr: [oam_ecomp, name] }
964 __openstack_user__: { get_param: openstack_username }
965 __openstack_password__: { get_param: openstack_api_key }
966 __openstack_auth_method__: { get_param: openstack_auth_method }
967 __key_name__: { get_param: key_name }
968 __rand_str__: { get_resource: random-str }
969 __pub_key__: { get_param: pub_key }
970 __nexus_repo_root__: { get_param: nexus_repo_root }
971 __openstack_region__: { get_param: openstack_region }
972 __horizon_url__: { get_param: horizon_url }
973 __keystone_url__: { get_param: keystone_url }
974 __docker_version__: { get_param: docker_version }
975 __gerrit_branch__: { get_param: gerrit_branch }
976 __dcae_code_version__: { get_param: dcae_code_version }
977 __cloud_env__: { get_param: cloud_env }
978 __public_net_id__: { get_param: public_net_id }
979 __dcae_base_environment__: { get_param: dcae_base_environment }
980 __dcae_ip_addr__: { get_param: dcae_ip_addr }
981 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
982 __dcae_db_ip_addr__: { get_param: dcae_db_ip_addr }
983 __dcae_hdp1_ip_addr__: { get_param: dcae_hdp1_ip_addr }
984 __dcae_hdp2_ip_addr__: { get_param: dcae_hdp2_ip_addr }
985 __dcae_hdp3_ip_addr__: { get_param: dcae_hdp3_ip_addr }
986 __external_dns__: { get_param: external_dns }
990 # Create configuration files
992 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
993 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
994 echo "__nexus_username__" > /opt/config/nexus_username.txt
995 echo "__nexus_password__" > /opt/config/nexus_password.txt
996 echo "__nexus_url_snapshots__" > /opt/config/nexus_url_snapshots.txt
997 echo "__gitlab_branch__" > /opt/config/gitlab_branch.txt
998 echo "__docker_version__" > /opt/config/docker_version.txt
999 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1000 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1001 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1002 echo "__dcae_zone__" > /opt/config/dcae_zone.txt
1003 echo "__dcae_state__" > /opt/config/dcae_state.txt
1004 echo "__tenant_id__" > /opt/config/tenant_id.txt
1005 echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
1006 echo "__openstack_user__" > /opt/config/openstack_user.txt
1007 echo "__openstack_password__" > /opt/config/openstack_password.txt
1008 echo "__openstack_auth_method__" > /opt/config/openstack_auth_method.txt
1009 echo "__key_name__" > /opt/config/key_name.txt
1010 echo "__rand_str__" > /opt/config/rand_str.txt
1011 echo "__pub_key__" > /opt/config/pub_key.txt
1012 echo "__nexus_repo_root__" > /opt/config/nexus_repo_root.txt
1013 echo "__openstack_region__" > /opt/config/openstack_region.txt
1014 echo "__horizon_url__" > /opt/config/horizon_url.txt
1015 echo "__keystone_url__" > /opt/config/keystone_url.txt
1016 echo "__cloud_env__" > /opt/config/cloud_env.txt
1017 echo "__public_net_id__" > /opt/config/public_net_id.txt
1018 echo "__dcae_base_environment__" > /opt/config/dcae_base_environment.txt
1019 echo "__dcae_code_version__" > /opt/config/dcae_code_version.txt
1020 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
1021 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
1022 echo "__dcae_db_ip_addr__" > /opt/config/dcae_db_ip_addr.txt
1023 echo "__dcae_hdp1_ip_addr__" > /opt/config/dcae_hdp1_ip_addr.txt
1024 echo "__dcae_hdp2_ip_addr__" > /opt/config/dcae_hdp2_ip_addr.txt
1025 echo "__dcae_hdp3_ip_addr__" > /opt/config/dcae_hdp3_ip_addr.txt
1026 echo "__external_dns__" > /opt/config/external_dns.txt
1028 # Download and run install script
1029 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dcae_install.sh -o /opt/dcae_install.sh
1031 chmod +x dcae_install.sh
1035 # Policy Engine instantiation
1036 policy_private_port:
1037 type: OS::Neutron::Port
1039 network: { get_resource: oam_ecomp }
1040 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: policy_ip_addr }}]
1043 type: OS::Neutron::FloatingIP
1045 floating_network_id: { get_param: public_net_id }
1046 port_id: { get_resource: policy_private_port }
1049 type: OS::Nova::Server
1051 image: { get_param: ubuntu_1404_image }
1052 flavor: { get_param: flavor_xlarge }
1055 template: base-policy
1057 base: { get_param: vm_base_name }
1058 key_name: { get_resource: vm_key }
1060 - port: { get_resource: policy_private_port }
1061 user_data_format: RAW
1065 __nexus_repo__: { get_param: nexus_repo }
1066 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1067 __nexus_username__: { get_param: nexus_username }
1068 __nexus_password__: { get_param: nexus_password }
1069 __artifacts_version__: { get_param: artifacts_version }
1070 __dns_ip_addr__: { get_param: dns_ip_addr }
1071 __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
1072 __docker_version__: { get_param: docker_version }
1073 __gerrit_branch__: { get_param: gerrit_branch }
1074 __cloud_env__: { get_param: cloud_env }
1075 __external_dns__: { get_param: external_dns }
1079 # Create configuration files
1080 mkdir -p /opt/config
1081 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1082 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1083 echo "__nexus_username__" > /opt/config/nexus_username.txt
1084 echo "__nexus_password__" > /opt/config/nexus_password.txt
1085 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1086 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1087 echo "__public_ip__" > /opt/config/public_ip.txt
1088 echo "__docker_version__" > /opt/config/docker_version.txt
1089 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1090 echo "__cloud_env__" > /opt/config/cloud_env.txt
1091 echo "__external_dns__" > /opt/config/external_dns.txt
1093 # Download and run install script
1094 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
1096 chmod +x policy_install.sh
1100 # APP-C instantiation
1102 type: OS::Neutron::Port
1104 network: { get_resource: oam_ecomp }
1105 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: appc_ip_addr }}]
1108 type: OS::Neutron::FloatingIP
1110 floating_network_id: { get_param: public_net_id }
1111 port_id: { get_resource: appc_private_port }
1114 type: OS::Nova::Server
1116 image: { get_param: ubuntu_1404_image }
1117 flavor: { get_param: flavor_large }
1122 base: { get_param: vm_base_name }
1123 key_name: { get_resource: vm_key }
1125 - port: { get_resource: appc_private_port }
1126 user_data_format: RAW
1130 __nexus_repo__: { get_param: nexus_repo }
1131 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1132 __nexus_username__: { get_param: nexus_username }
1133 __nexus_password__: { get_param: nexus_password }
1134 __dmaap_topic__: { get_param: dmaap_topic }
1135 __artifacts_version__: { get_param: artifacts_version }
1136 __dns_ip_addr__: { get_param: dns_ip_addr }
1137 __docker_version__: { get_param: docker_version }
1138 __gerrit_branch__: { get_param: gerrit_branch }
1139 __cloud_env__: { get_param: cloud_env }
1140 __external_dns__: { get_param: external_dns }
1144 # Create configuration files
1145 mkdir -p /opt/config
1146 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1147 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1148 echo "__nexus_username__" > /opt/config/nexus_username.txt
1149 echo "__nexus_password__" > /opt/config/nexus_password.txt
1150 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1151 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1152 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
1153 echo "__docker_version__" > /opt/config/docker_version.txt
1154 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1155 echo "__cloud_env__" > /opt/config/cloud_env.txt
1156 echo "__external_dns__" > /opt/config/external_dns.txt
1158 # Download and run install script
1159 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
1161 chmod +x appc_install.sh