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 ### Private IP addresses ###
161 description: CIDR of the OAM ONAP network
165 description: AAI IP Address
169 description: APP-C IP Address
173 description: DCAE IP Address
177 description: DCAE Collector IP Address
181 description: DCAE Database IP Address
185 description: Hadoop VM1 IP Address
189 description: Hadoop VM2 IP Address
193 description: Hadoop VM3 IP Address
197 description: DNS IP Address
201 description: MSO IP Address
205 description: Message Router IP Address
209 description: Policy Engine IP Address
213 description: Portal IP Address
217 description: Robot Framework IP Address
221 description: SDC IP Address
225 description: SDN-C IP Address
229 description: VID IP Address
232 ###########################
234 # Parameters used by DCAE #
236 ###########################
238 dcae_base_environment:
240 description: DCAE Base Environment configuration (RACKSPACE/2-NIC/1-NIC-FLOATING-IPS)
244 description: DCAE Zone to use in VM names created by DCAE controller
248 description: DCAE State to use in VM names created by DCAE controller
252 description: Root URL of Nexus repository
256 description: Snapshot of Maven repository for DCAE deployment
260 description: Region where the DCAE controller will spin the VMs
264 description: Branch of the Gitlab repository
268 description: DCAE Code Version Number
279 type: OS::Heat::RandomString
284 # Public key used to access ONAP components
286 type: OS::Nova::KeyPair
292 base: { get_param: key_name }
293 rand: { get_resource: random-str }
294 public_key: { get_param: pub_key }
295 save_private_key: false
298 # ONAP management private network
300 type: OS::Neutron::Net
304 template: oam_ecomp_rand
306 rand: { get_resource: random-str }
309 type: OS::Neutron::Subnet
313 template: oam_ecomp_rand
315 rand: { get_resource: random-str }
316 network_id: { get_resource: oam_ecomp }
317 cidr: { get_param: oam_network_cidr }
318 dns_nameservers: { get_param: dns_list }
321 type: OS::Neutron::Router
323 external_gateway_info:
324 network: { get_param: public_net_id }
327 type: OS::Neutron::RouterInterface
329 router_id: { get_resource: router }
330 subnet_id: { get_resource: oam_ecomp_subnet }
333 # DNS Server instantiation
335 type: OS::Neutron::Port
337 network: { get_resource: oam_ecomp }
338 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dns_ip_addr }}]
341 type: OS::Neutron::FloatingIP
343 floating_network_id: { get_param: public_net_id }
344 port_id: { get_resource: dns_private_port }
347 type: OS::Nova::Server
349 image: { get_param: ubuntu_1404_image }
350 flavor: { get_param: flavor_small }
353 template: base-dns-server
355 base: { get_param: vm_base_name }
356 key_name: { get_resource: vm_key }
358 - port: { get_resource: dns_private_port }
359 user_data_format: RAW
363 __nexus_repo__: { get_param: nexus_repo }
364 __artifacts_version__: { get_param: artifacts_version }
365 __oam_network_cidr__: { get_attr: [oam_ecomp_subnet, cidr] }
366 __dns_ip_addr__: { get_param: dns_ip_addr }
367 __aai_ip_addr__: { get_param: aai_ip_addr }
368 __appc_ip_addr__: { get_param: appc_ip_addr }
369 __dcae_ip_addr__: { get_param: dcae_ip_addr }
370 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
371 __mso_ip_addr__: { get_param: mso_ip_addr }
372 __mr_ip_addr__: { get_param: mr_ip_addr }
373 __policy_ip_addr__: { get_param: policy_ip_addr }
374 __portal_ip_addr__: { get_param: portal_ip_addr }
375 __robot_ip_addr__: { get_param: robot_ip_addr }
376 __sdc_ip_addr__: { get_param: sdc_ip_addr }
377 __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
378 __vid_ip_addr__: { get_param: vid_ip_addr }
379 __cloud_env__: { get_param: cloud_env }
380 __external_dns__: { get_param: external_dns }
384 # Create configuration files
386 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
387 echo "__cloud_env__" > /opt/config/cloud_env.txt
388 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
389 echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
390 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
391 echo "__aai_ip_addr__" > /opt/config/aai_ip_addr.txt
392 echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
393 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
394 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
395 echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
396 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
397 echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
398 echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
399 echo "__robot_ip_addr__" > /opt/config/robot_ip_addr.txt
400 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
401 echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
402 echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
403 echo "__external_dns__" > /opt/config/external_dns.txt
405 # Download and run install script
406 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dns_install.sh -o /opt/dns_install.sh
408 chmod +x dns_install.sh
414 type: OS::Neutron::Port
416 network: { get_resource: oam_ecomp }
417 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai_ip_addr }}]
420 type: OS::Neutron::FloatingIP
422 floating_network_id: { get_param: public_net_id }
423 port_id: { get_resource: aai_private_port }
426 type: OS::Nova::Server
428 image: { get_param: ubuntu_1404_image }
429 flavor: { get_param: flavor_xlarge }
434 base: { get_param: vm_base_name }
435 key_name: { get_resource: vm_key }
437 - port: { get_resource: aai_private_port }
438 user_data_format: RAW
442 __nexus_repo__: { get_param: nexus_repo }
443 __nexus_docker_repo__: { get_param: nexus_docker_repo }
444 __nexus_username__: { get_param: nexus_username }
445 __nexus_password__: { get_param: nexus_password }
446 __dmaap_topic__: { get_param: dmaap_topic }
447 __artifacts_version__: { get_param: artifacts_version }
448 __dns_ip_addr__: { get_param: dns_ip_addr }
449 __sdc_ip_addr__: { get_param: sdc_ip_addr }
450 __docker_version__: { get_param: docker_version }
451 __cloud_env__: { get_param: cloud_env }
452 __external_dns__: { get_param: external_dns }
456 # Create configuration files
458 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
459 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
460 echo "__nexus_username__" > /opt/config/nexus_username.txt
461 echo "__nexus_password__" > /opt/config/nexus_password.txt
462 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
463 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
464 echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
465 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
466 echo "__docker_version__" > /opt/config/docker_version.txt
467 echo "__cloud_env__" > /opt/config/cloud_env.txt
468 echo "__external_dns__" > /opt/config/external_dns.txt
470 # Download and run install script
471 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
473 chmod +x aai_install.sh
479 type: OS::Neutron::Port
481 network: { get_resource: oam_ecomp }
482 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mso_ip_addr }}]
485 type: OS::Neutron::FloatingIP
487 floating_network_id: { get_param: public_net_id }
488 port_id: { get_resource: mso_private_port }
491 type: OS::Nova::Server
493 image: { get_param: ubuntu_1604_image }
494 flavor: { get_param: flavor_large }
499 base: { get_param: vm_base_name }
500 key_name: { get_resource: vm_key }
502 - port: { get_resource: mso_private_port }
503 user_data_format: RAW
507 __nexus_repo__: { get_param: nexus_repo }
508 __nexus_docker_repo__: { get_param: nexus_docker_repo }
509 __nexus_username__: { get_param: nexus_username }
510 __nexus_password__: { get_param: nexus_password }
511 __openstack_username__: { get_param: openstack_username }
512 __openstack_tenant_id__: { get_param: openstack_tenant_id }
513 __openstack_api_key__: { get_param: openstack_api_key }
514 __openstack_region__: { get_param: openstack_region }
515 __keystone_url__: { get_param: keystone_url }
516 __dmaap_topic__: { get_param: dmaap_topic }
517 __artifacts_version__: { get_param: artifacts_version }
518 __dns_ip_addr__: { get_param: dns_ip_addr }
519 __docker_version__: { get_param: docker_version }
520 __gerrit_branch__: { get_param: gerrit_branch }
521 __cloud_env__: { get_param: cloud_env }
522 __external_dns__: { get_param: external_dns }
526 # Create configuration files
528 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
529 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
530 echo "__nexus_username__" > /opt/config/nexus_username.txt
531 echo "__nexus_password__" > /opt/config/nexus_password.txt
532 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
533 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
534 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
535 echo "__openstack_username__" > /opt/config/openstack_username.txt
536 echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
537 echo "__openstack_api_key__" > /opt/config/openstack_api_key.txt
538 echo "__openstack_region__" > /opt/config/openstack_region.txt
539 echo "__keystone_url__" > /opt/config/keystone.txt
540 echo "__docker_version__" > /opt/config/docker_version.txt
541 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
542 echo "__cloud_env__" > /opt/config/cloud_env.txt
543 echo "__external_dns__" > /opt/config/external_dns.txt
545 # Download and run install script
546 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mso_install.sh -o /opt/mso_install.sh
548 chmod +x mso_install.sh
552 # Message Router instantiation
553 mrouter_private_port:
554 type: OS::Neutron::Port
556 network: { get_resource: oam_ecomp }
557 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mr_ip_addr }}]
560 type: OS::Neutron::FloatingIP
562 floating_network_id: { get_param: public_net_id }
563 port_id: { get_resource: mrouter_private_port }
566 type: OS::Nova::Server
568 image: { get_param: ubuntu_1404_image }
569 flavor: { get_param: flavor_large }
572 template: base-message-router
574 base: { get_param: vm_base_name }
575 key_name: { get_resource: vm_key }
577 - port: { get_resource: mrouter_private_port }
578 user_data_format: RAW
582 __nexus_repo__: { get_param: nexus_repo }
583 __nexus_docker_repo__: { get_param: nexus_docker_repo }
584 __nexus_username__: { get_param: nexus_username }
585 __nexus_password__: { get_param: nexus_password }
586 __artifacts_version__: { get_param: artifacts_version }
587 __dns_ip_addr__: { get_param: dns_ip_addr }
588 __gerrit_branch__: { get_param: gerrit_branch }
589 __cloud_env__: { get_param: cloud_env }
590 __external_dns__: { get_param: external_dns }
594 # Create configuration files
596 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
597 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
598 echo "__nexus_username__" > /opt/config/nexus_username.txt
599 echo "__nexus_password__" > /opt/config/nexus_password.txt
600 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
601 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
602 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
603 echo "__cloud_env__" > /opt/config/cloud_env.txt
604 echo "__external_dns__" > /opt/config/external_dns.txt
606 # Download and run install script
607 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh
609 chmod +x mr_install.sh
613 # Robot Framework instantiation
615 type: OS::Neutron::Port
617 network: { get_resource: oam_ecomp }
618 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: robot_ip_addr }}]
621 type: OS::Neutron::FloatingIP
623 floating_network_id: { get_param: public_net_id }
624 port_id: { get_resource: robot_private_port }
627 type: OS::Nova::Server
629 image: { get_param: ubuntu_1604_image }
630 flavor: { get_param: flavor_small }
635 base: { get_param: vm_base_name }
636 key_name: { get_resource: vm_key }
638 - port: { get_resource: robot_private_port }
639 user_data_format: RAW
643 __nexus_repo__: { get_param: nexus_repo }
644 __nexus_docker_repo__: { get_param: nexus_docker_repo }
645 __nexus_username__: { get_param: nexus_username }
646 __nexus_password__: { get_param: nexus_password }
647 __network_name__: { get_attr: [oam_ecomp, name] }
648 __openstack_username__: { get_param: openstack_username }
649 __openstack_api_key__: { get_param : openstack_api_key }
650 __artifacts_version__: { get_param: artifacts_version }
651 __openstack_region__: { get_param: openstack_region }
652 __dns_ip_addr__: { get_param: dns_ip_addr }
653 __docker_version__: { get_param: docker_version }
654 __gerrit_branch__: { get_param: gerrit_branch }
655 __cloud_env__: { get_param: cloud_env }
656 __external_dns__: { get_param: external_dns }
660 # Create configuration files
662 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
663 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
664 echo "__nexus_username__" > /opt/config/nexus_username.txt
665 echo "__nexus_password__" > /opt/config/nexus_password.txt
666 echo "__network_name__" > /opt/config/network.txt
667 echo "__openstack_username__" > /opt/config/openstack_username.txt
668 echo "__openstack_api_key__" > /opt/config/openstack_password.txt
669 echo "__openstack_region__" > /opt/config/region.txt
670 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
671 echo "__docker_version__" > /opt/config/docker_version.txt
672 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
673 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
674 echo "__cloud_env__" > /opt/config/cloud_env.txt
675 echo "__external_dns__" > /opt/config/external_dns.txt
677 # Download and run install script
678 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/robot_install.sh -o /opt/robot_install.sh
680 chmod +x robot_install.sh
686 type: OS::Neutron::Port
688 network: { get_resource: oam_ecomp }
689 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: vid_ip_addr }}]
692 type: OS::Neutron::FloatingIP
694 floating_network_id: { get_param: public_net_id }
695 port_id: { get_resource: vid_private_port }
698 type: OS::Nova::Server
700 image: { get_param: ubuntu_1404_image }
701 flavor: { get_param: flavor_medium }
706 base: { get_param: vm_base_name }
707 key_name: { get_resource: vm_key }
709 - port: { get_resource: vid_private_port }
710 user_data_format: RAW
714 __nexus_repo__: { get_param: nexus_repo }
715 __nexus_docker_repo__: { get_param: nexus_docker_repo }
716 __nexus_username__: { get_param: nexus_username }
717 __nexus_password__: { get_param: nexus_password }
718 __artifacts_version__: { get_param: artifacts_version }
719 __dns_ip_addr__: { get_param: dns_ip_addr }
720 __docker_version__: { get_param: docker_version }
721 __gerrit_branch__: { get_param: gerrit_branch }
722 __cloud_env__: { get_param: cloud_env }
723 __external_dns__: { get_param: external_dns }
727 # Create configuration files
729 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
730 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
731 echo "__nexus_username__" > /opt/config/nexus_username.txt
732 echo "__nexus_password__" > /opt/config/nexus_password.txt
733 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
734 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
735 echo "__docker_version__" > /opt/config/docker_version.txt
736 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
737 echo "__cloud_env__" > /opt/config/cloud_env.txt
738 echo "__external_dns__" > /opt/config/external_dns.txt
740 # Download and run install script
741 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/vid_install.sh -o /opt/vid_install.sh
743 chmod +x vid_install.sh
747 # SDN-C instantiation
749 type: OS::Neutron::Port
751 network: { get_resource: oam_ecomp }
752 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
755 type: OS::Neutron::FloatingIP
757 floating_network_id: { get_param: public_net_id }
758 port_id: { get_resource: sdnc_private_port }
761 type: OS::Nova::Server
763 image: { get_param: ubuntu_1404_image }
764 flavor: { get_param: flavor_large }
769 base: { get_param: vm_base_name }
770 key_name: { get_resource: vm_key }
772 - port: { get_resource: sdnc_private_port }
773 user_data_format: RAW
777 __nexus_repo__: { get_param: nexus_repo }
778 __nexus_docker_repo__: { get_param: nexus_docker_repo }
779 __nexus_username__: { get_param: nexus_username }
780 __nexus_password__: { get_param: nexus_password }
781 __artifacts_version__: { get_param: artifacts_version }
782 __dns_ip_addr__: { get_param: dns_ip_addr }
783 __docker_version__: { get_param: docker_version }
784 __gerrit_branch__: { get_param: gerrit_branch }
785 __cloud_env__: { get_param: cloud_env }
786 __external_dns__: { get_param: external_dns }
790 # Create configuration files
792 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
793 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
794 echo "__nexus_username__" > /opt/config/nexus_username.txt
795 echo "__nexus_password__" > /opt/config/nexus_password.txt
796 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
797 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
798 echo "__docker_version__" > /opt/config/docker_version.txt
799 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
800 echo "__cloud_env__" > /opt/config/cloud_env.txt
801 echo "__external_dns__" > /opt/config/external_dns.txt
803 # Download and run install script
804 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/sdnc_install.sh -o /opt/sdnc_install.sh
806 chmod +x sdnc_install.sh
812 type: OS::Neutron::Port
814 network: { get_resource: oam_ecomp }
815 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
818 type: OS::Neutron::FloatingIP
820 floating_network_id: { get_param: public_net_id }
821 port_id: { get_resource: sdc_private_port }
824 type: OS::Cinder::Volume
830 type: OS::Nova::Server
832 image: { get_param: ubuntu_1604_image }
833 flavor: { get_param: flavor_xlarge }
838 base: { get_param: vm_base_name }
839 key_name: { get_resource: vm_key }
841 - port: { get_resource: sdc_private_port }
842 block_device_mapping:
843 - device_name: /dev/vdb
844 volume_id: {get_resource: sdc_volume_data}
845 user_data_format: RAW
849 __nexus_repo__: { get_param: nexus_repo }
850 __nexus_docker_repo__: { get_param: nexus_docker_repo }
851 __nexus_username__: { get_param: nexus_username }
852 __nexus_password__: { get_param: nexus_password }
853 __env_name__: { get_param: dmaap_topic }
854 __artifacts_version__: { get_param: artifacts_version }
855 __dns_ip_addr__: { get_param: dns_ip_addr }
856 __mr_ip_addr__: { get_param: mr_ip_addr }
857 __public_ip__: { get_attr: [sdc_floating_ip, floating_ip_address] }
858 __docker_version__: { get_param: docker_version }
859 __gerrit_branch__: { get_param: gerrit_branch }
860 __cloud_env__: { get_param: cloud_env }
861 __external_dns__: { get_param: external_dns }
865 # Create configuration files
867 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
868 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
869 echo "__nexus_username__" > /opt/config/nexus_username.txt
870 echo "__nexus_password__" > /opt/config/nexus_password.txt
871 echo "__env_name__" > /opt/config/env_name.txt
872 echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
873 echo "__public_ip__" > /opt/config/public_ip.txt
874 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
875 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
876 echo "__docker_version__" > /opt/config/docker_version.txt
877 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
878 echo "__cloud_env__" > /opt/config/cloud_env.txt
879 echo "__external_dns__" > /opt/config/external_dns.txt
881 # Download and run install script
882 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/asdc_install.sh -o /opt/asdc_install.sh
884 chmod +x asdc_install.sh
888 # PORTAL instantiation
890 type: OS::Neutron::Port
892 network: { get_resource: oam_ecomp }
893 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: portal_ip_addr }}]
896 type: OS::Neutron::FloatingIP
898 floating_network_id: { get_param: public_net_id }
899 port_id: { get_resource: portal_private_port }
902 type: OS::Nova::Server
904 image: { get_param: ubuntu_1404_image }
905 flavor: { get_param: flavor_large }
908 template: base-portal
910 base: { get_param: vm_base_name }
911 key_name: { get_resource: vm_key }
913 - port: { get_resource: portal_private_port }
914 user_data_format: RAW
918 __nexus_repo__: { get_param: nexus_repo }
919 __nexus_docker_repo__: { get_param: nexus_docker_repo }
920 __nexus_username__: { get_param: nexus_username }
921 __nexus_password__: { get_param: nexus_password }
922 __artifacts_version__: { get_param: artifacts_version }
923 __dns_ip_addr__: { get_param: dns_ip_addr }
924 __public_ip__: { get_attr: [portal_floating_ip, floating_ip_address] }
925 __docker_version__: { get_param: docker_version }
926 __gerrit_branch__: { get_param: gerrit_branch }
927 __cloud_env__: { get_param: cloud_env }
928 __external_dns__: { get_param: external_dns }
932 # Create configuration files
934 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
935 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
936 echo "__nexus_username__" > /opt/config/nexus_username.txt
937 echo "__nexus_password__" > /opt/config/nexus_password.txt
938 echo "__public_ip__" > /opt/config/public_ip.txt
939 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
940 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
941 echo "__docker_version__" > /opt/config/docker_version.txt
942 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
943 echo "__cloud_env__" > /opt/config/cloud_env.txt
944 echo "__external_dns__" > /opt/config/external_dns.txt
946 # Download and run install script
947 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/portal_install.sh -o /opt/portal_install.sh
949 chmod +x portal_install.sh
953 # DCAE Controller instantiation
955 type: OS::Neutron::Port
957 network: { get_resource: oam_ecomp }
958 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
961 type: OS::Neutron::FloatingIP
963 floating_network_id: { get_param: public_net_id }
964 port_id: { get_resource: dcae_c_private_port }
967 type: OS::Nova::Server
969 image: { get_param: ubuntu_1404_image }
970 flavor: { get_param: flavor_medium }
973 template: base-dcae-controller
975 base: { get_param: vm_base_name }
976 key_name: { get_resource: vm_key }
978 - port: { get_resource: dcae_c_private_port }
979 user_data_format: RAW
983 __nexus_repo__: { get_param: nexus_repo }
984 __nexus_docker_repo__: { get_param: nexus_docker_repo }
985 __nexus_username__: { get_param: nexus_username }
986 __nexus_password__: { get_param: nexus_password }
987 __nexus_url_snapshots__: { get_param: nexus_url_snapshot }
988 __gitlab_branch__: { get_param: gitlab_branch }
989 __dns_ip_addr__: { get_param: dns_ip_addr }
990 __dcae_zone__: { get_param: dcae_zone }
991 __dcae_state__: { get_param: dcae_state }
992 __artifacts_version__: { get_param: artifacts_version }
993 __tenant_id__: { get_param: openstack_tenant_id }
994 __openstack_private_network_name__: { get_attr: [oam_ecomp, name] }
995 __openstack_user__: { get_param: openstack_username }
996 __openstack_password__: { get_param: openstack_api_key }
997 __openstack_auth_method__: { get_param: openstack_auth_method }
998 __key_name__: { get_param: key_name }
999 __rand_str__: { get_resource: random-str }
1000 __pub_key__: { get_param: pub_key }
1001 __nexus_repo_root__: { get_param: nexus_repo_root }
1002 __openstack_region__: { get_param: openstack_region }
1003 __horizon_url__: { get_param: horizon_url }
1004 __keystone_url__: { get_param: keystone_url }
1005 __docker_version__: { get_param: docker_version }
1006 __gerrit_branch__: { get_param: gerrit_branch }
1007 __dcae_code_version__: { get_param: dcae_code_version }
1008 __cloud_env__: { get_param: cloud_env }
1009 __public_net_id__: { get_param: public_net_id }
1010 __dcae_base_environment__: { get_param: dcae_base_environment }
1011 __dcae_ip_addr__: { get_param: dcae_ip_addr }
1012 __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
1013 __dcae_db_ip_addr__: { get_param: dcae_db_ip_addr }
1014 __dcae_hdp1_ip_addr__: { get_param: dcae_hdp1_ip_addr }
1015 __dcae_hdp2_ip_addr__: { get_param: dcae_hdp2_ip_addr }
1016 __dcae_hdp3_ip_addr__: { get_param: dcae_hdp3_ip_addr }
1017 __external_dns__: { get_param: external_dns }
1018 __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
1019 __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
1020 __flavor_small__: { get_param: flavor_small }
1021 __flavor_medium__: { get_param: flavor_medium }
1022 __flavor_large__: { get_param: flavor_large }
1023 __flavor_xlarge__: { get_param: flavor_xlarge }
1027 # Create configuration files
1028 mkdir -p /opt/config
1029 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1030 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1031 echo "__nexus_username__" > /opt/config/nexus_username.txt
1032 echo "__nexus_password__" > /opt/config/nexus_password.txt
1033 echo "__nexus_url_snapshots__" > /opt/config/nexus_url_snapshots.txt
1034 echo "__gitlab_branch__" > /opt/config/gitlab_branch.txt
1035 echo "__docker_version__" > /opt/config/docker_version.txt
1036 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1037 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1038 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1039 echo "__dcae_zone__" > /opt/config/dcae_zone.txt
1040 echo "__dcae_state__" > /opt/config/dcae_state.txt
1041 echo "__tenant_id__" > /opt/config/tenant_id.txt
1042 echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
1043 echo "__openstack_user__" > /opt/config/openstack_user.txt
1044 echo "__openstack_password__" > /opt/config/openstack_password.txt
1045 echo "__openstack_auth_method__" > /opt/config/openstack_auth_method.txt
1046 echo "__key_name__" > /opt/config/key_name.txt
1047 echo "__rand_str__" > /opt/config/rand_str.txt
1048 echo "__pub_key__" > /opt/config/pub_key.txt
1049 echo "__nexus_repo_root__" > /opt/config/nexus_repo_root.txt
1050 echo "__openstack_region__" > /opt/config/openstack_region.txt
1051 echo "__horizon_url__" > /opt/config/horizon_url.txt
1052 echo "__keystone_url__" > /opt/config/keystone_url.txt
1053 echo "__cloud_env__" > /opt/config/cloud_env.txt
1054 echo "__public_net_id__" > /opt/config/public_net_id.txt
1055 echo "__dcae_base_environment__" > /opt/config/dcae_base_environment.txt
1056 echo "__dcae_code_version__" > /opt/config/dcae_code_version.txt
1057 echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
1058 echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
1059 echo "__dcae_db_ip_addr__" > /opt/config/dcae_db_ip_addr.txt
1060 echo "__dcae_hdp1_ip_addr__" > /opt/config/dcae_hdp1_ip_addr.txt
1061 echo "__dcae_hdp2_ip_addr__" > /opt/config/dcae_hdp2_ip_addr.txt
1062 echo "__dcae_hdp3_ip_addr__" > /opt/config/dcae_hdp3_ip_addr.txt
1063 echo "__external_dns__" > /opt/config/external_dns.txt
1064 echo "__ubuntu_1404_image__" > /opt/config/ubuntu_1404_image.txt
1065 echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
1066 echo "__flavor_small__" > /opt/config/flavor_small.txt
1067 echo "__flavor_medium__" > /opt/config/flavor_medium.txt
1068 echo "__flavor_large__" > /opt/config/flavor_large.txt
1069 echo "__flavor_xlarge__" > /opt/config/flavor_xlarge.txt
1071 # Download and run install script
1072 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dcae_install.sh -o /opt/dcae_install.sh
1074 chmod +x dcae_install.sh
1078 # Policy Engine instantiation
1079 policy_private_port:
1080 type: OS::Neutron::Port
1082 network: { get_resource: oam_ecomp }
1083 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: policy_ip_addr }}]
1086 type: OS::Neutron::FloatingIP
1088 floating_network_id: { get_param: public_net_id }
1089 port_id: { get_resource: policy_private_port }
1092 type: OS::Nova::Server
1094 image: { get_param: ubuntu_1404_image }
1095 flavor: { get_param: flavor_xlarge }
1098 template: base-policy
1100 base: { get_param: vm_base_name }
1101 key_name: { get_resource: vm_key }
1103 - port: { get_resource: policy_private_port }
1104 user_data_format: RAW
1108 __nexus_repo__: { get_param: nexus_repo }
1109 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1110 __nexus_username__: { get_param: nexus_username }
1111 __nexus_password__: { get_param: nexus_password }
1112 __artifacts_version__: { get_param: artifacts_version }
1113 __dns_ip_addr__: { get_param: dns_ip_addr }
1114 __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
1115 __docker_version__: { get_param: docker_version }
1116 __gerrit_branch__: { get_param: gerrit_branch }
1117 __cloud_env__: { get_param: cloud_env }
1118 __external_dns__: { get_param: external_dns }
1122 # Create configuration files
1123 mkdir -p /opt/config
1124 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1125 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1126 echo "__nexus_username__" > /opt/config/nexus_username.txt
1127 echo "__nexus_password__" > /opt/config/nexus_password.txt
1128 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1129 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1130 echo "__public_ip__" > /opt/config/public_ip.txt
1131 echo "__docker_version__" > /opt/config/docker_version.txt
1132 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1133 echo "__cloud_env__" > /opt/config/cloud_env.txt
1134 echo "__external_dns__" > /opt/config/external_dns.txt
1136 # Download and run install script
1137 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
1139 chmod +x policy_install.sh
1143 # APP-C instantiation
1145 type: OS::Neutron::Port
1147 network: { get_resource: oam_ecomp }
1148 fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: appc_ip_addr }}]
1151 type: OS::Neutron::FloatingIP
1153 floating_network_id: { get_param: public_net_id }
1154 port_id: { get_resource: appc_private_port }
1157 type: OS::Nova::Server
1159 image: { get_param: ubuntu_1404_image }
1160 flavor: { get_param: flavor_large }
1165 base: { get_param: vm_base_name }
1166 key_name: { get_resource: vm_key }
1168 - port: { get_resource: appc_private_port }
1169 user_data_format: RAW
1173 __nexus_repo__: { get_param: nexus_repo }
1174 __nexus_docker_repo__: { get_param: nexus_docker_repo }
1175 __nexus_username__: { get_param: nexus_username }
1176 __nexus_password__: { get_param: nexus_password }
1177 __dmaap_topic__: { get_param: dmaap_topic }
1178 __artifacts_version__: { get_param: artifacts_version }
1179 __dns_ip_addr__: { get_param: dns_ip_addr }
1180 __docker_version__: { get_param: docker_version }
1181 __gerrit_branch__: { get_param: gerrit_branch }
1182 __cloud_env__: { get_param: cloud_env }
1183 __external_dns__: { get_param: external_dns }
1187 # Create configuration files
1188 mkdir -p /opt/config
1189 echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1190 echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1191 echo "__nexus_username__" > /opt/config/nexus_username.txt
1192 echo "__nexus_password__" > /opt/config/nexus_password.txt
1193 echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1194 echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1195 echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
1196 echo "__docker_version__" > /opt/config/docker_version.txt
1197 echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1198 echo "__cloud_env__" > /opt/config/cloud_env.txt
1199 echo "__external_dns__" > /opt/config/external_dns.txt
1201 # Download and run install script
1202 curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
1204 chmod +x appc_install.sh