1 ##########################################################################
3 #==================LICENSE_START==========================================
6 # Copyright © 2017 AT&T Intellectual Property. All rights reserved.
8 # Licensed under the Apache License, Version 2.0 (the "License");
9 # you may not use this file except in compliance with the License.
10 # You may obtain a copy of the License at
11 # http://www.apache.org/licenses/LICENSE-2.0
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
19 #==================LICENSE_END============================================
21 # ECOMP is a trademark and service mark of AT&T Intellectual Property.
23 ##########################################################################
25 heat_template_version: 2015-10-15
27 description: Heat template to install ONAP components
37 ##############################################
39 # Parameters used across all ONAP components #
41 ##############################################
45 description: Public network for floating IP address allocation
49 description: Name of the Ubuntu 14.04 image
53 description: Name of the Ubuntu 16.04 image
57 description: Name of the Small Flavor supported by the cloud provider
61 description: Name of the Medium Flavor supported by the cloud provider
65 description: Name of the Large Flavor supported by the cloud provider
69 description: Name of the Extra Large Flavor supported by the cloud provider
73 description: Base name of ONAP VMs
77 description: Public/Private key pair name
81 description: Public key to be installed on the compute instance
85 description: Complete URL for the Nexus repository.
89 description: Complete URL for the Nexus repository for docker images.
93 description: Nexus Repository username
97 description: Nexus Repository Password
101 description: Artifacts version of ONAP components
105 label: Version number of ONAP docker images
109 label: Gerrit code branch
110 description: Gerrit branch where to download the code from
114 description: DMaaP Topic name
118 description: Openstack tenant ID
122 description: Openstack username
124 openstack_auth_method:
126 description: Openstack authentication method (password VS. api-key)
130 description: Openstack API Key
134 description: URL of Openstack Horizon
138 description: URL of Openstack Keystone
142 description: Cloud Provider Name
144 ######################
146 # Network parameters #
148 ######################
151 type: comma_delimited_list
152 description: List of External DNS for OAM ONAP network
156 description: First element of the dns_list for ONAP network
158 ### Floating IP addresses ###
161 description: AAI Floating IP Address
165 description: APP-C Floating IP Address
169 description: DCAE Floating IP Address
173 description: DCAE Collector Floating IP Address
177 description: DCAE Collector Database Floating IP Address
181 description: Hadoop VM1 Floating IP Address
185 description: Hadoop VM2 Floating IP Address
189 description: Hadoop VM3 Floating IP Address
193 description: DNS Floating IP Address
197 description: MSO Floating IP Address
201 description: Message Router Floating IP Address
205 description: Policy Engine Floating IP Address
209 description: Portal Floating IP Address
213 description: Robot Framework Floating IP Address
217 description: SDC Floating IP Address
221 description: SDN-C Floating IP Address
225 description: VID Floating IP Address
227 ### Private IP addresses ###
230 description: CIDR of the OAM ONAP network
234 description: AAI IP Address
238 description: APP-C IP Address
242 description: DCAE IP Address
246 description: DCAE Collector IP Address
250 description: DCAE Database IP Address
254 description: Hadoop VM1 IP Address
258 description: Hadoop VM2 IP Address
262 description: Hadoop VM3 IP Address
266 description: DNS IP Address
270 description: MSO IP Address
274 description: Message Router IP Address
278 description: Policy Engine IP Address
282 description: Portal IP Address
286 description: Robot Framework IP Address
290 description: SDC IP Address
294 description: SDN-C IP Address
298 description: VID IP Address
301 ###########################
303 # Parameters used by DCAE #
305 ###########################
307 dcae_base_environment:
309 description: DCAE Base Environment configuration (RACKSPACE/2-NIC/1-NIC-FLOATING-IPS)
313 description: DCAE Zone to use in VM names created by DCAE controller
317 description: DCAE State to use in VM names created by DCAE controller
321 description: Root URL of Nexus repository
325 description: Snapshot of Maven repository for DCAE deployment
329 description: Region where the DCAE controller will spin the VMs
333 description: Branch of the Gitlab repository
337 description: DCAE Code Version Number
348 type: OS::Heat::RandomString
353 # Public key used to access ONAP components
355 type: OS::Nova::KeyPair
361 base: { get_param: key_name }
362 rand: { get_resource: random-str }
363 public_key: { get_param: pub_key }
364 save_private_key: false
367 # ONAP management private network
369 type: OS::Neutron::Net
373 template: oam_ecomp_rand
375 rand: { get_resource: random-str }
378 type: OS::Neutron::Subnet
382 template: oam_ecomp_rand
384 rand: { get_resource: random-str }
385 network_id: { get_resource: oam_ecomp }
386 cidr: { get_param: oam_network_cidr }
387 dns_nameservers: { get_param: dns_list }
390 type: OS::Neutron::Router
392 external_gateway_info:
393 network: { get_param: public_net_id }
396 type: OS::Neutron::RouterInterface
398 router_id: { get_resource: router }
399 subnet_id: { get_resource: oam_ecomp_subnet }
402 # DNS Server instantiation
404 type: OS::Neutron::Port
406 network: { get_resource: oam_ecomp }
407 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dns_ip_addr }}]
410 type: OS::Neutron::FloatingIP
412 floating_network_id: { get_param: public_net_id }
413 port_id: { get_resource: dns_private_port }
414 floating_ip_address: { get_param: dns_float_ip }
417 type: OS::Nova::Server
419 image: { get_param: ubuntu_1404_image }
420 flavor: { get_param: flavor_small }
423 template: base-dns-server
425 base: { get_param: vm_base_name }
426 key_name: { get_resource: vm_key }
428 - port: { get_resource: dns_private_port }
429 user_data_format: RAW
433 __nexus_repo__: { get_param: nexus_repo }
434 __artifacts_version__: { get_param: artifacts_version }
435 __oam_network_cidr__: { get_attr: [oam_ecomp_subnet, cidr] }
436 __dns_ip_addr__: { get_param: dns_ip_addr }
437 __aai_ip_addr__: { get_param: aai_ip_addr }
438 __appc_ip_addr__: { get_param: appc_ip_addr }
439 __dcae_ip_addr__: { get_param: dcae_ip_addr }
440 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
441 __mso_ip_addr__: { get_param: mso_ip_addr }
442 __mr_ip_addr__: { get_param: mr_ip_addr }
443 __policy_ip_addr__: { get_param: policy_ip_addr }
444 __portal_ip_addr__: { get_param: portal_ip_addr }
445 __robot_ip_addr__: { get_param: robot_ip_addr }
446 __sdc_ip_addr__: { get_param: sdc_ip_addr }
447 __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
448 __vid_ip_addr__: { get_param: vid_ip_addr }
449 __cloud_env__: { get_param: cloud_env }
450 __external_dns__: { get_param: external_dns }
454 # Create configuration files
456 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
457 echo "__cloud_env__" > /opt/config/cloud_env.txt
458 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
459 echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
460 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
461 echo "__aai_ip_addr__" > /opt/config/aai_ip_addr.txt
462 echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
463 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
464 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
465 echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
466 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
467 echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
468 echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
469 echo "__robot_ip_addr__" > /opt/config/robot_ip_addr.txt
470 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
471 echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
472 echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
473 echo "__external_dns__" > /opt/config/external_dns.txt
475 # Download and run install script
476 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dns_install.sh -o /opt/dns_install.sh
478 chmod +x dns_install.sh
484 type: OS::Neutron::Port
486 network: { get_resource: oam_ecomp }
487 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai_ip_addr }}]
490 type: OS::Neutron::FloatingIP
492 floating_network_id: { get_param: public_net_id }
493 port_id: { get_resource: aai_private_port }
494 floating_ip_address: { get_param: aai_float_ip }
497 type: OS::Nova::Server
499 image: { get_param: ubuntu_1404_image }
500 flavor: { get_param: flavor_xlarge }
505 base: { get_param: vm_base_name }
506 key_name: { get_resource: vm_key }
508 - port: { get_resource: aai_private_port }
509 user_data_format: RAW
513 __nexus_repo__: { get_param: nexus_repo }
514 __nexus_docker_repo__: { get_param: nexus_docker_repo }
515 __nexus_username__: { get_param: nexus_username }
516 __nexus_password__: { get_param: nexus_password }
517 __dmaap_topic__: { get_param: dmaap_topic }
518 __artifacts_version__: { get_param: artifacts_version }
519 __dns_ip_addr__: { get_param: dns_ip_addr }
520 __sdc_ip_addr__: { get_param: sdc_ip_addr }
521 __docker_version__: { get_param: docker_version }
522 __cloud_env__: { get_param: cloud_env }
523 __external_dns__: { get_param: external_dns }
527 # Create configuration files
529 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
530 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
531 echo "__nexus_username__" > /opt/config/nexus_username.txt
532 echo "__nexus_password__" > /opt/config/nexus_password.txt
533 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
534 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
535 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
536 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
537 echo "__docker_version__" > /opt/config/docker_version.txt
538 echo "__cloud_env__" > /opt/config/cloud_env.txt
539 echo "__external_dns__" > /opt/config/external_dns.txt
541 # Download and run install script
542 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
544 chmod +x aai_install.sh
550 type: OS::Neutron::Port
552 network: { get_resource: oam_ecomp }
553 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mso_ip_addr }}]
556 type: OS::Neutron::FloatingIP
558 floating_network_id: { get_param: public_net_id }
559 port_id: { get_resource: mso_private_port }
560 floating_ip_address: { get_param: mso_float_ip }
563 type: OS::Nova::Server
565 image: { get_param: ubuntu_1604_image }
566 flavor: { get_param: flavor_large }
571 base: { get_param: vm_base_name }
572 key_name: { get_resource: vm_key }
574 - port: { get_resource: mso_private_port }
575 user_data_format: RAW
579 __nexus_repo__: { get_param: nexus_repo }
580 __nexus_docker_repo__: { get_param: nexus_docker_repo }
581 __nexus_username__: { get_param: nexus_username }
582 __nexus_password__: { get_param: nexus_password }
583 __openstack_username__: { get_param: openstack_username }
584 __openstack_tenant_id__: { get_param: openstack_tenant_id }
585 __openstack_api_key__: { get_param: openstack_api_key }
586 __openstack_region__: { get_param: openstack_region }
587 __keystone_url__: { get_param: keystone_url }
588 __dmaap_topic__: { get_param: dmaap_topic }
589 __artifacts_version__: { get_param: artifacts_version }
590 __dns_ip_addr__: { get_param: dns_ip_addr }
591 __docker_version__: { get_param: docker_version }
592 __gerrit_branch__: { get_param: gerrit_branch }
593 __cloud_env__: { get_param: cloud_env }
594 __external_dns__: { get_param: external_dns }
598 # Create configuration files
600 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
601 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
602 echo "__nexus_username__" > /opt/config/nexus_username.txt
603 echo "__nexus_password__" > /opt/config/nexus_password.txt
604 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
605 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
606 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
607 echo "__openstack_username__" > /opt/config/openstack_username.txt
608 echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
609 echo "__openstack_api_key__" > /opt/config/openstack_api_key.txt
610 echo "__openstack_region__" > /opt/config/openstack_region.txt
611 echo "__keystone_url__" > /opt/config/keystone.txt
612 echo "__docker_version__" > /opt/config/docker_version.txt
613 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
614 echo "__cloud_env__" > /opt/config/cloud_env.txt
615 echo "__external_dns__" > /opt/config/external_dns.txt
617 # Download and run install script
618 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mso_install.sh -o /opt/mso_install.sh
620 chmod +x mso_install.sh
624 # Message Router instantiation
625 mrouter_private_port:
626 type: OS::Neutron::Port
628 network: { get_resource: oam_ecomp }
629 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mr_ip_addr }}]
632 type: OS::Neutron::FloatingIP
634 floating_network_id: { get_param: public_net_id }
635 port_id: { get_resource: mrouter_private_port }
636 floating_ip_address: { get_param: mr_float_ip }
639 type: OS::Nova::Server
641 image: { get_param: ubuntu_1404_image }
642 flavor: { get_param: flavor_large }
645 template: base-message-router
647 base: { get_param: vm_base_name }
648 key_name: { get_resource: vm_key }
650 - port: { get_resource: mrouter_private_port }
651 user_data_format: RAW
655 __nexus_repo__: { get_param: nexus_repo }
656 __nexus_docker_repo__: { get_param: nexus_docker_repo }
657 __nexus_username__: { get_param: nexus_username }
658 __nexus_password__: { get_param: nexus_password }
659 __artifacts_version__: { get_param: artifacts_version }
660 __dns_ip_addr__: { get_param: dns_ip_addr }
661 __gerrit_branch__: { get_param: gerrit_branch }
662 __cloud_env__: { get_param: cloud_env }
663 __external_dns__: { get_param: external_dns }
667 # Create configuration files
669 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
670 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
671 echo "__nexus_username__" > /opt/config/nexus_username.txt
672 echo "__nexus_password__" > /opt/config/nexus_password.txt
673 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
674 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
675 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
676 echo "__cloud_env__" > /opt/config/cloud_env.txt
677 echo "__external_dns__" > /opt/config/external_dns.txt
679 # Download and run install script
680 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh
682 chmod +x mr_install.sh
686 # Robot Framework instantiation
688 type: OS::Neutron::Port
690 network: { get_resource: oam_ecomp }
691 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: robot_ip_addr }}]
694 type: OS::Neutron::FloatingIP
696 floating_network_id: { get_param: public_net_id }
697 port_id: { get_resource: robot_private_port }
698 floating_ip_address: { get_param: robot_float_ip }
701 type: OS::Nova::Server
703 image: { get_param: ubuntu_1604_image }
704 flavor: { get_param: flavor_small }
709 base: { get_param: vm_base_name }
710 key_name: { get_resource: vm_key }
712 - port: { get_resource: robot_private_port }
713 user_data_format: RAW
717 __nexus_repo__: { get_param: nexus_repo }
718 __nexus_docker_repo__: { get_param: nexus_docker_repo }
719 __nexus_username__: { get_param: nexus_username }
720 __nexus_password__: { get_param: nexus_password }
721 __network_name__: { get_attr: [oam_ecomp, name] }
722 __openstack_username__: { get_param: openstack_username }
723 __openstack_api_key__: { get_param : openstack_api_key }
724 __artifacts_version__: { get_param: artifacts_version }
725 __openstack_region__: { get_param: openstack_region }
726 __dns_ip_addr__: { get_param: dns_ip_addr }
727 __docker_version__: { get_param: docker_version }
728 __gerrit_branch__: { get_param: gerrit_branch }
729 __cloud_env__: { get_param: cloud_env }
730 __external_dns__: { get_param: external_dns }
734 # Create configuration files
736 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
737 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
738 echo "__nexus_username__" > /opt/config/nexus_username.txt
739 echo "__nexus_password__" > /opt/config/nexus_password.txt
740 echo "__network_name__" > /opt/config/network.txt
741 echo "__openstack_username__" > /opt/config/openstack_username.txt
742 echo "__openstack_api_key__" > /opt/config/openstack_password.txt
743 echo "__openstack_region__" > /opt/config/region.txt
744 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
745 echo "__docker_version__" > /opt/config/docker_version.txt
746 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
747 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
748 echo "__cloud_env__" > /opt/config/cloud_env.txt
749 echo "__external_dns__" > /opt/config/external_dns.txt
751 # Download and run install script
752 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/robot_install.sh -o /opt/robot_install.sh
754 chmod +x robot_install.sh
760 type: OS::Neutron::Port
762 network: { get_resource: oam_ecomp }
763 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: vid_ip_addr }}]
766 type: OS::Neutron::FloatingIP
768 floating_network_id: { get_param: public_net_id }
769 port_id: { get_resource: vid_private_port }
770 floating_ip_address: { get_param: vid_float_ip }
773 type: OS::Nova::Server
775 image: { get_param: ubuntu_1404_image }
776 flavor: { get_param: flavor_medium }
781 base: { get_param: vm_base_name }
782 key_name: { get_resource: vm_key }
784 - port: { get_resource: vid_private_port }
785 user_data_format: RAW
789 __nexus_repo__: { get_param: nexus_repo }
790 __nexus_docker_repo__: { get_param: nexus_docker_repo }
791 __nexus_username__: { get_param: nexus_username }
792 __nexus_password__: { get_param: nexus_password }
793 __artifacts_version__: { get_param: artifacts_version }
794 __dns_ip_addr__: { get_param: dns_ip_addr }
795 __docker_version__: { get_param: docker_version }
796 __gerrit_branch__: { get_param: gerrit_branch }
797 __cloud_env__: { get_param: cloud_env }
798 __external_dns__: { get_param: external_dns }
802 # Create configuration files
804 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
805 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
806 echo "__nexus_username__" > /opt/config/nexus_username.txt
807 echo "__nexus_password__" > /opt/config/nexus_password.txt
808 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
809 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
810 echo "__docker_version__" > /opt/config/docker_version.txt
811 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
812 echo "__cloud_env__" > /opt/config/cloud_env.txt
813 echo "__external_dns__" > /opt/config/external_dns.txt
815 # Download and run install script
816 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/vid_install.sh -o /opt/vid_install.sh
818 chmod +x vid_install.sh
822 # SDN-C instantiation
824 type: OS::Neutron::Port
826 network: { get_resource: oam_ecomp }
827 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
830 type: OS::Neutron::FloatingIP
832 floating_network_id: { get_param: public_net_id }
833 port_id: { get_resource: sdnc_private_port }
834 floating_ip_address: { get_param: sdnc_float_ip }
837 type: OS::Nova::Server
839 image: { get_param: ubuntu_1404_image }
840 flavor: { get_param: flavor_large }
845 base: { get_param: vm_base_name }
846 key_name: { get_resource: vm_key }
848 - port: { get_resource: sdnc_private_port }
849 user_data_format: RAW
853 __nexus_repo__: { get_param: nexus_repo }
854 __nexus_docker_repo__: { get_param: nexus_docker_repo }
855 __nexus_username__: { get_param: nexus_username }
856 __nexus_password__: { get_param: nexus_password }
857 __artifacts_version__: { get_param: artifacts_version }
858 __dns_ip_addr__: { get_param: dns_ip_addr }
859 __docker_version__: { get_param: docker_version }
860 __gerrit_branch__: { get_param: gerrit_branch }
861 __cloud_env__: { get_param: cloud_env }
862 __external_dns__: { get_param: external_dns }
866 # Create configuration files
868 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
869 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
870 echo "__nexus_username__" > /opt/config/nexus_username.txt
871 echo "__nexus_password__" > /opt/config/nexus_password.txt
872 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
873 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
874 echo "__docker_version__" > /opt/config/docker_version.txt
875 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
876 echo "__cloud_env__" > /opt/config/cloud_env.txt
877 echo "__external_dns__" > /opt/config/external_dns.txt
879 # Download and run install script
880 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/sdnc_install.sh -o /opt/sdnc_install.sh
882 chmod +x sdnc_install.sh
888 type: OS::Neutron::Port
890 network: { get_resource: oam_ecomp }
891 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
894 type: OS::Neutron::FloatingIP
896 floating_network_id: { get_param: public_net_id }
897 port_id: { get_resource: sdc_private_port }
898 floating_ip_address: { get_param: sdc_float_ip }
901 type: OS::Cinder::Volume
907 type: OS::Nova::Server
909 image: { get_param: ubuntu_1604_image }
910 flavor: { get_param: flavor_xlarge }
915 base: { get_param: vm_base_name }
916 key_name: { get_resource: vm_key }
918 - port: { get_resource: sdc_private_port }
919 block_device_mapping:
920 - device_name: /dev/vdb
921 volume_id: {get_resource: sdc_volume_data}
922 user_data_format: RAW
926 __nexus_repo__: { get_param: nexus_repo }
927 __nexus_docker_repo__: { get_param: nexus_docker_repo }
928 __nexus_username__: { get_param: nexus_username }
929 __nexus_password__: { get_param: nexus_password }
930 __env_name__: { get_param: dmaap_topic }
931 __artifacts_version__: { get_param: artifacts_version }
932 __dns_ip_addr__: { get_param: dns_ip_addr }
933 __mr_ip_addr__: { get_param: mr_ip_addr }
934 __public_ip__: { get_attr: [sdc_floating_ip, floating_ip_address] }
935 __docker_version__: { get_param: docker_version }
936 __gerrit_branch__: { get_param: gerrit_branch }
937 __cloud_env__: { get_param: cloud_env }
938 __external_dns__: { get_param: external_dns }
942 # Create configuration files
944 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
945 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
946 echo "__nexus_username__" > /opt/config/nexus_username.txt
947 echo "__nexus_password__" > /opt/config/nexus_password.txt
948 echo "__env_name__" > /opt/config/env_name.txt
949 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
950 echo "__public_ip__" > /opt/config/public_ip.txt
951 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
952 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
953 echo "__docker_version__" > /opt/config/docker_version.txt
954 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
955 echo "__cloud_env__" > /opt/config/cloud_env.txt
956 echo "__external_dns__" > /opt/config/external_dns.txt
958 # Download and run install script
959 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/asdc_install.sh -o /opt/asdc_install.sh
961 chmod +x asdc_install.sh
965 # PORTAL instantiation
967 type: OS::Neutron::Port
969 network: { get_resource: oam_ecomp }
970 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: portal_ip_addr }}]
973 type: OS::Neutron::FloatingIP
975 floating_network_id: { get_param: public_net_id }
976 port_id: { get_resource: portal_private_port }
977 floating_ip_address: { get_param: portal_float_ip }
980 type: OS::Nova::Server
982 image: { get_param: ubuntu_1404_image }
983 flavor: { get_param: flavor_large }
986 template: base-portal
988 base: { get_param: vm_base_name }
989 key_name: { get_resource: vm_key }
991 - port: { get_resource: portal_private_port }
992 user_data_format: RAW
996 __nexus_repo__: { get_param: nexus_repo }
997 __nexus_docker_repo__: { get_param: nexus_docker_repo }
998 __nexus_username__: { get_param: nexus_username }
999 __nexus_password__: { get_param: nexus_password }
1000 __artifacts_version__: { get_param: artifacts_version }
1001 __dns_ip_addr__: { get_param: dns_ip_addr }
1002 __public_ip__: { get_attr: [portal_floating_ip, floating_ip_address] }
1003 __docker_version__: { get_param: docker_version }
1004 __gerrit_branch__: { get_param: gerrit_branch }
1005 __cloud_env__: { get_param: cloud_env }
1006 __external_dns__: { get_param: external_dns }
1010 # Create configuration files
1011 mkdir -p /opt/config
1012 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1013 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1014 echo "__nexus_username__" > /opt/config/nexus_username.txt
1015 echo "__nexus_password__" > /opt/config/nexus_password.txt
1016 echo "__public_ip__" > /opt/config/public_ip.txt
1017 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1018 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1019 echo "__docker_version__" > /opt/config/docker_version.txt
1020 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1021 echo "__cloud_env__" > /opt/config/cloud_env.txt
1022 echo "__external_dns__" > /opt/config/external_dns.txt
1024 # Download and run install script
1025 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/portal_install.sh -o /opt/portal_install.sh
1027 chmod +x portal_install.sh
1031 # DCAE Controller instantiation
1032 dcae_c_private_port:
1033 type: OS::Neutron::Port
1035 network: { get_resource: oam_ecomp }
1036 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
1039 type: OS::Neutron::FloatingIP
1041 floating_network_id: { get_param: public_net_id }
1042 port_id: { get_resource: dcae_c_private_port }
1043 floating_ip_address: { get_param: dcae_float_ip }
1046 type: OS::Nova::Server
1048 image: { get_param: ubuntu_1404_image }
1049 flavor: { get_param: flavor_medium }
1052 template: base-dcae-controller
1054 base: { get_param: vm_base_name }
1055 key_name: { get_resource: vm_key }
1057 - port: { get_resource: dcae_c_private_port }
1058 user_data_format: RAW
1062 __nexus_repo__: { get_param: nexus_repo }
1063 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1064 __nexus_username__: { get_param: nexus_username }
1065 __nexus_password__: { get_param: nexus_password }
1066 __nexus_url_snapshots__: { get_param: nexus_url_snapshot }
1067 __gitlab_branch__: { get_param: gitlab_branch }
1068 __dns_ip_addr__: { get_param: dns_ip_addr }
1069 __dcae_zone__: { get_param: dcae_zone }
1070 __dcae_state__: { get_param: dcae_state }
1071 __artifacts_version__: { get_param: artifacts_version }
1072 __tenant_id__: { get_param: openstack_tenant_id }
1073 __openstack_private_network_name__: { get_attr: [oam_ecomp, name] }
1074 __openstack_user__: { get_param: openstack_username }
1075 __openstack_password__: { get_param: openstack_api_key }
1076 __openstack_auth_method__: { get_param: openstack_auth_method }
1077 __key_name__: { get_param: key_name }
1078 __rand_str__: { get_resource: random-str }
1079 __pub_key__: { get_param: pub_key }
1080 __nexus_repo_root__: { get_param: nexus_repo_root }
1081 __openstack_region__: { get_param: openstack_region }
1082 __horizon_url__: { get_param: horizon_url }
1083 __keystone_url__: { get_param: keystone_url }
1084 __docker_version__: { get_param: docker_version }
1085 __gerrit_branch__: { get_param: gerrit_branch }
1086 __dcae_code_version__: { get_param: dcae_code_version }
1087 __cloud_env__: { get_param: cloud_env }
1088 __public_net_id__: { get_param: public_net_id }
1089 __dcae_base_environment__: { get_param: dcae_base_environment }
1090 __dcae_ip_addr__: { get_param: dcae_ip_addr }
1091 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
1092 __dcae_db_ip_addr__: { get_param: dcae_db_ip_addr }
1093 __dcae_hdp1_ip_addr__: { get_param: dcae_hdp1_ip_addr }
1094 __dcae_hdp2_ip_addr__: { get_param: dcae_hdp2_ip_addr }
1095 __dcae_hdp3_ip_addr__: { get_param: dcae_hdp3_ip_addr }
1096 __dcae_float_ip__: { get_param: dcae_float_ip }
1097 __dcae_coll_float_ip__: { get_param: dcae_coll_float_ip }
1098 __dcae_db_float_ip__: { get_param: dcae_db_float_ip }
1099 __dcae_hdp1_float_ip__: { get_param: dcae_hdp1_float_ip }
1100 __dcae_hdp2_float_ip__: { get_param: dcae_hdp2_float_ip }
1101 __dcae_hdp3_float_ip__: { get_param: dcae_hdp3_float_ip }
1102 __external_dns__: { get_param: external_dns }
1103 __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
1104 __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
1105 __flavor_small__: { get_param: flavor_small }
1106 __flavor_medium__: { get_param: flavor_medium }
1107 __flavor_large__: { get_param: flavor_large }
1108 __flavor_xlarge__: { get_param: flavor_xlarge }
1112 # Create configuration files
1113 mkdir -p /opt/config
1114 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1115 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1116 echo "__nexus_username__" > /opt/config/nexus_username.txt
1117 echo "__nexus_password__" > /opt/config/nexus_password.txt
1118 echo "__nexus_url_snapshots__" > /opt/config/nexus_url_snapshots.txt
1119 echo "__gitlab_branch__" > /opt/config/gitlab_branch.txt
1120 echo "__docker_version__" > /opt/config/docker_version.txt
1121 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1122 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1123 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1124 echo "__dcae_zone__" > /opt/config/dcae_zone.txt
1125 echo "__dcae_state__" > /opt/config/dcae_state.txt
1126 echo "__tenant_id__" > /opt/config/tenant_id.txt
1127 echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
1128 echo "__openstack_user__" > /opt/config/openstack_user.txt
1129 echo "__openstack_password__" > /opt/config/openstack_password.txt
1130 echo "__openstack_auth_method__" > /opt/config/openstack_auth_method.txt
1131 echo "__key_name__" > /opt/config/key_name.txt
1132 echo "__rand_str__" > /opt/config/rand_str.txt
1133 echo "__pub_key__" > /opt/config/pub_key.txt
1134 echo "__nexus_repo_root__" > /opt/config/nexus_repo_root.txt
1135 echo "__openstack_region__" > /opt/config/openstack_region.txt
1136 echo "__horizon_url__" > /opt/config/horizon_url.txt
1137 echo "__keystone_url__" > /opt/config/keystone_url.txt
1138 echo "__cloud_env__" > /opt/config/cloud_env.txt
1139 echo "__public_net_id__" > /opt/config/public_net_id.txt
1140 echo "__dcae_base_environment__" > /opt/config/dcae_base_environment.txt
1141 echo "__dcae_code_version__" > /opt/config/dcae_code_version.txt
1142 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
1143 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
1144 echo "__dcae_db_ip_addr__" > /opt/config/dcae_db_ip_addr.txt
1145 echo "__dcae_hdp1_ip_addr__" > /opt/config/dcae_hdp1_ip_addr.txt
1146 echo "__dcae_hdp2_ip_addr__" > /opt/config/dcae_hdp2_ip_addr.txt
1147 echo "__dcae_hdp3_ip_addr__" > /opt/config/dcae_hdp3_ip_addr.txt
1148 echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
1149 echo "__dcae_coll_float_ip__" > /opt/config/dcae_coll_float_ip.txt
1150 echo "__dcae_db_float_ip__" > /opt/config/dcae_db_float_ip.txt
1151 echo "__dcae_hdp1_float_ip__" > /opt/config/dcae_hdp1_float_ip.txt
1152 echo "__dcae_hdp2_float_ip__" > /opt/config/dcae_hdp2_float_ip.txt
1153 echo "__dcae_hdp3_float_ip__" > /opt/config/dcae_hdp3_float_ip.txt
1154 echo "__external_dns__" > /opt/config/external_dns.txt
1155 echo "__ubuntu_1404_image__" > /opt/config/ubuntu_1404_image.txt
1156 echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
1157 echo "__flavor_small__" > /opt/config/flavor_small.txt
1158 echo "__flavor_medium__" > /opt/config/flavor_medium.txt
1159 echo "__flavor_large__" > /opt/config/flavor_large.txt
1160 echo "__flavor_xlarge__" > /opt/config/flavor_xlarge.txt
1162 # Download and run install script
1163 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dcae_install.sh -o /opt/dcae_install.sh
1165 chmod +x dcae_install.sh
1169 # Policy Engine instantiation
1170 policy_private_port:
1171 type: OS::Neutron::Port
1173 network: { get_resource: oam_ecomp }
1174 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: policy_ip_addr }}]
1177 type: OS::Neutron::FloatingIP
1179 floating_network_id: { get_param: public_net_id }
1180 port_id: { get_resource: policy_private_port }
1181 floating_ip_address: { get_param: policy_float_ip }
1184 type: OS::Nova::Server
1186 image: { get_param: ubuntu_1404_image }
1187 flavor: { get_param: flavor_xlarge }
1190 template: base-policy
1192 base: { get_param: vm_base_name }
1193 key_name: { get_resource: vm_key }
1195 - port: { get_resource: policy_private_port }
1196 user_data_format: RAW
1200 __nexus_repo__: { get_param: nexus_repo }
1201 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1202 __nexus_username__: { get_param: nexus_username }
1203 __nexus_password__: { get_param: nexus_password }
1204 __artifacts_version__: { get_param: artifacts_version }
1205 __dns_ip_addr__: { get_param: dns_ip_addr }
1206 __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
1207 __docker_version__: { get_param: docker_version }
1208 __gerrit_branch__: { get_param: gerrit_branch }
1209 __cloud_env__: { get_param: cloud_env }
1210 __external_dns__: { get_param: external_dns }
1214 # Create configuration files
1215 mkdir -p /opt/config
1216 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1217 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1218 echo "__nexus_username__" > /opt/config/nexus_username.txt
1219 echo "__nexus_password__" > /opt/config/nexus_password.txt
1220 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1221 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1222 echo "__public_ip__" > /opt/config/public_ip.txt
1223 echo "__docker_version__" > /opt/config/docker_version.txt
1224 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1225 echo "__cloud_env__" > /opt/config/cloud_env.txt
1226 echo "__external_dns__" > /opt/config/external_dns.txt
1228 # Download and run install script
1229 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
1231 chmod +x policy_install.sh
1235 # APP-C instantiation
1237 type: OS::Neutron::Port
1239 network: { get_resource: oam_ecomp }
1240 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: appc_ip_addr }}]
1243 type: OS::Neutron::FloatingIP
1245 floating_network_id: { get_param: public_net_id }
1246 port_id: { get_resource: appc_private_port }
1247 floating_ip_address: { get_param: appc_float_ip }
1250 type: OS::Nova::Server
1252 image: { get_param: ubuntu_1404_image }
1253 flavor: { get_param: flavor_large }
1258 base: { get_param: vm_base_name }
1259 key_name: { get_resource: vm_key }
1261 - port: { get_resource: appc_private_port }
1262 user_data_format: RAW
1266 __nexus_repo__: { get_param: nexus_repo }
1267 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1268 __nexus_username__: { get_param: nexus_username }
1269 __nexus_password__: { get_param: nexus_password }
1270 __dmaap_topic__: { get_param: dmaap_topic }
1271 __artifacts_version__: { get_param: artifacts_version }
1272 __dns_ip_addr__: { get_param: dns_ip_addr }
1273 __docker_version__: { get_param: docker_version }
1274 __gerrit_branch__: { get_param: gerrit_branch }
1275 __cloud_env__: { get_param: cloud_env }
1276 __external_dns__: { get_param: external_dns }
1280 # Create configuration files
1281 mkdir -p /opt/config
1282 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1283 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1284 echo "__nexus_username__" > /opt/config/nexus_username.txt
1285 echo "__nexus_password__" > /opt/config/nexus_password.txt
1286 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1287 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1288 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
1289 echo "__docker_version__" > /opt/config/docker_version.txt
1290 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1291 echo "__cloud_env__" > /opt/config/cloud_env.txt
1292 echo "__external_dns__" > /opt/config/external_dns.txt
1294 # Download and run install script
1295 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
1297 chmod +x appc_install.sh