##########################################################################
#
#==================LICENSE_START==========================================
-#
#
-# Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+#
+# Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# Parameters used across all ONAP components #
# #
##############################################
-
+
public_net_id:
type: string
- description: Public network for floating IP address allocation
+ description: The ID of the Public network for floating IP address allocation
+
+ public_net_name:
+ type: string
+ description: The name of the Public network referred by public_net_id
ubuntu_1404_image:
type: string
type: string
description: Name of the Extra Large Flavor supported by the cloud provider
+ flavor_xxlarge:
+ type: string
+ description: Name of the Extra Extra Large Flavor supported by the cloud provider
+
vm_base_name:
type: string
description: Base name of ONAP VMs
type: string
description: Artifacts version of ONAP components
- docker_version:
- type: string
- label: Version number of ONAP docker images
-
- gerrit_branch:
- type: string
- label: Gerrit code branch
- description: Gerrit branch where to download the code from
-
dmaap_topic:
type: string
description: DMaaP Topic name
openstack_tenant_id:
type: string
- description: Openstack tenant ID
+ description: OpenStack tenant ID
+
+ openstack_tenant_name:
+ type: string
+ description: OpenStack tenant name (matching with the openstack_tenant_id)
openstack_username:
type: string
- description: Openstack username
+ description: OpenStack username
openstack_auth_method:
type: string
- description: Openstack authentication method (password VS. api-key)
+ description: OpenStack authentication method (password VS. api-key)
openstack_api_key:
type: string
- description: Openstack API Key
+ description: OpenStack password or API Key
horizon_url:
type: string
- description: URL of Openstack Horizon
+ description: URL of OpenStack Horizon
keystone_url:
type: string
- description: URL of Openstack Keystone
+ description: URL of OpenStack Keystone
cloud_env:
type: string
- description: Cloud Provider Name
+ description: Cloud Provider Name in lower case
+
+ openstack_region:
+ type: string
+ description: Region where the DCAE controller will spin the VMs
######################
# #
external_dns:
type: string
- description: First element of the dns_list for ONAP network
+ description: Public IP of the external DNS for ONAP network
+
+ dns_forwarder:
+ type: string
+ description: the forwarder address for setting up ONAP's private DNS server
- ### Private IP addresses ###
oam_network_cidr:
type: string
description: CIDR of the OAM ONAP network
+ ### Private IP addresses ###
aai1_ip_addr:
type: string
- description: AAI Instance 1 IP Address
-
aai2_ip_addr:
type: string
- description: AAI Instance 2 IP Address
-
appc_ip_addr:
type: string
- description: APP-C IP Address
-
dcae_ip_addr:
type: string
- description: DCAE IP Address
-
- dcae_coll_ip_addr:
+ dns_ip_addr:
type: string
- description: DCAE Collector IP Address
-
- dcae_db_ip_addr:
+ so_ip_addr:
type: string
- description: DCAE Database IP Address
-
- dcae_hdp1_ip_addr:
+ mr_ip_addr:
type: string
- description: Hadoop VM1 IP Address
-
- dcae_hdp2_ip_addr:
+ policy_ip_addr:
type: string
- description: Hadoop VM2 IP Address
-
- dcae_hdp3_ip_addr:
+ portal_ip_addr:
type: string
- description: Hadoop VM3 IP Address
-
- dns_ip_addr:
+ robot_ip_addr:
type: string
- description: DNS IP Address
-
- mso_ip_addr:
+ sdc_ip_addr:
+ type: string
+ sdnc_ip_addr:
+ type: string
+ vid_ip_addr:
+ type: string
+ clamp_ip_addr:
+ type: string
+ openo_ip_addr:
+ type: string
+ music_ip_addr:
+ type: string
+ oof_ip_addr:
+ type: string
+ aaf_ip_addr:
+ type: string
+ sms_ip_addr:
+ type: string
+ nbi_ip_addr:
type: string
- description: MSO IP Address
- mr_ip_addr:
+ ###########################
+ # #
+ # Parameters used by DCAE #
+ # #
+ ###########################
+
+ dcae_deployment_profile:
type: string
- description: Message Router IP Address
+ description: DCAE deployment profile. Currently supported profiles R1, R2MVP.
- policy_ip_addr:
+ dnsaas_config_enabled:
type: string
- description: Policy Engine IP Address
+ description: whether the DNSaaS configuration section is enabled
- portal_ip_addr:
+ dnsaas_region:
type: string
- description: Portal IP Address
+ description: the region of the cloud instance providing the Designate DNS as a Service
- robot_ip_addr:
+ dnsaas_keystone_url:
type: string
- description: Robot Framework IP Address
+ description: the keystone URL of the cloud instance providing the Designate DNS as a Service
- sdc_ip_addr:
+ dnsaas_username:
type: string
- description: SDC IP Address
+ description: the username of the cloud instance providing the Designate DNS as a Service
- sdnc_ip_addr:
+ dnsaas_password:
type: string
- description: SDN-C IP Address
+ description: the password of the cloud instance providing the Designate DNS as a Service
- vid_ip_addr:
+ dnsaas_tenant_name:
type: string
- description: VID IP Address
+ description: the name of the tenant in the cloud instance providing the Designate DNS as a Service
- dcae_coll_float_ip:
+ dcae_keystone_url:
type: string
- description: DCAE Collector Floating IP Address
+ description: the keystone URL for DCAE to use (via MultiCloud)
- dcae_db_float_ip:
+ dcae_private_key:
type: string
- description: DCAE Collector Database Floating IP Address
+ description: the private key of the key-apir used between the DCAE bootstrap container and DCAE VMs
- dcae_hdp1_float_ip:
+ dcae_public_key:
type: string
- description: Hadoop VM1 Floating IP Address
+ description: the prublic key of the key-apir used between the DCAE bootstrap container and DCAE VMs
- dcae_hdp2_float_ip:
+ dcae_centos_7_image:
type: string
- description: Hadoop VM2 Floating IP Address
+ description: the id/name of the CentOS 7 VM imange
- dcae_hdp3_float_ip:
+ dcae_domain:
type: string
- description: Hadoop VM3 Floating IP Address
+ description: the top level domain to register DCAE VMs (the zone will be random-str.dcae_domain)
- ###########################
- # #
- # Parameters used by DCAE #
- # #
- ###########################
+ #####################
+ # #
+ # ONAP repositories #
+ # #
+ #####################
- dcae_base_environment:
+ aai_repo:
type: string
- description: DCAE Base Environment configuration (RACKSPACE/2-NIC/1-NIC-FLOATING-IPS)
-
- dcae_zone:
+ appc_repo:
type: string
- description: DCAE Zone to use in VM names created by DCAE controller
-
- dcae_state:
+ mr_repo:
+ type: string
+ so_repo:
+ type: string
+ policy_repo:
+ type: string
+ portal_repo:
+ type: string
+ robot_repo:
+ type: string
+ sdc_repo:
+ type: string
+ sdnc_repo:
+ type: string
+ vid_repo:
+ type: string
+ clamp_repo:
+ type: string
+ vnfsdk_repo:
+ type: string
+ music_repo:
+ type: string
+ nbi_repo:
+ type: string
+ aaf_repo:
+ type: string
+ sms_repo:
type: string
- description: DCAE State to use in VM names created by DCAE controller
+ oof_repo:
+ type: string
+
+ ################################
+ # #
+ # Docker versions and branches #
+ # #
+ ################################
- nexus_repo_root:
+ aai_docker:
+ type: string
+ aai_sparky_docker:
+ type: string
+ appc_docker:
+ type: string
+ so_docker:
type: string
- description: Root URL of Nexus repository
- nexus_url_snapshot:
+ dcae_docker:
+ type: string
+ default: latest
+ dcae_snmptrap_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.collectors.snmptrap
+ dcae_ves_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.collectors.ves.vescollector
+ dcae_bootstrap_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.deployments.bootstrap
+ dcae_cm_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.deployments.cm-container
+ dcae_k8sbootstrap_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.deployments.k8s-bootstrap-container
+ dcae_redisc_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.deployments.redis-cluster-container
+ dcae_tca_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.deployments.tca-cdap-container
+ dcae_cb_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.cdapbroker
+ dcae_cbs_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.configbinding
+ dcae_dh_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.deployment-handler
+ dcae_inv_docker:
type: string
- description: Snapshot of Maven repository for DCAE deployment
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.inventory-api
+ dcae_ph_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.deployment-handler
+ dcae_sch_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.platform.servicechange-handler
+ dcae_heartbeat_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.services.heartbeat
+ dcae_prh_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/org.dcaegen2.services.prh.prh-app-server
+ holmes_em_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/holmes/engine-management
+ holmes_rm_docker:
+ type: string
+ default: latest
+ description: Docker image version for onap/holmes/rule-management
- openstack_region:
+ policy_docker:
+ type: string
+ portal_docker:
+ type: string
+ robot_docker:
+ type: string
+ sdc_docker:
+ type: string
+ sdc_wfd_docker:
+ type: string
+ sdnc_docker:
+ type: string
+ vid_docker:
+ type: string
+ clamp_docker:
+ type: string
+ msb_docker:
+ type: string
+ mvim_docker:
+ type: string
+ mvim_openstack_docker:
+ type: string
+ uui_docker:
+ type: string
+ esr_docker:
+ type: string
+ dgbuilder_docker:
+ type: string
+ cli_docker:
+ type: string
+ music_docker:
+ type: string
+ oof_docker:
+ type: string
+ aaf_docker:
+ type: string
+ sms_docker:
+ type: string
+ nbi_docker:
+ type: string
+ dbcl_docker:
type: string
- description: Region where the DCAE controller will spin the VMs
- gitlab_branch:
+ vfc_nokia_docker:
+ type: string
+ vfc_nokiav2_docker:
+ type: string
+ vfc_ztevnfmdriver_docker:
+ type: string
+ vfc_ztesdncdriver_docker:
+ type: string
+ vfc_vnfres_docker:
type: string
- description: Branch of the Gitlab repository
-
- dcae_code_version:
+ vfc_vnfmgr_docker:
+ type: string
+ vfc_vnflcm_docker:
+ type: string
+ vfc_resmanagement_docker:
+ type: string
+ vfc_nslcm_docker:
+ type: string
+ vfc_huawei_docker:
+ type: string
+ vfc_jujudriver_docker:
+ type: string
+ vfc_gvnfmdriver_docker:
+ type: string
+ vfc_emsdriver_docker:
+ type: string
+ vfc_catalog_docker:
+ type: string
+ vfc_wfengine_mgrservice_docker:
+ type: string
+ vfc_wfengine_activiti_docker:
+ type: string
+ vfc_multivimproxy_docker:
type: string
- description: DCAE Code Version Number
+ aai_branch:
+ type: string
+ appc_branch:
+ type: string
+ so_branch:
+ type: string
+ mr_branch:
+ type: string
+ policy_branch:
+ type: string
+ portal_branch:
+ type: string
+ robot_branch:
+ type: string
+ sdc_branch:
+ type: string
+ sdnc_branch:
+ type: string
+ vid_branch:
+ type: string
+ clamp_branch:
+ type: string
+ vnfsdk_branch:
+ type: string
+ music_branch:
+ type: string
+ nbi_branch:
+ type: string
+ aaf_branch:
+ type: string
+ sms_branch:
+ type: string
+ oof_branch:
+ type: string
#############
# #
properties:
length: 4
-
# Public key used to access ONAP components
vm_key:
type: OS::Nova::KeyPair
save_private_key: false
+ # ONAP security group
+ onap_sg:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: base_rand
+ params:
+ base: onap_sg
+ rand: { get_resource: random-str }
+ description: security group used by ONAP
+ rules:
+ # All egress traffic
+ - direction: egress
+ ethertype: IPv4
+ - direction: egress
+ ethertype: IPv6
+ # ingress traffic
+ # ICMP
+ - protocol: icmp
+ - protocol: udp
+ port_range_min: 1
+ port_range_max: 65535
+ - protocol: tcp
+ port_range_min: 1
+ port_range_max: 65535
+
+
+
# ONAP management private network
- oam_ecomp:
+ oam_onap:
type: OS::Neutron::Net
properties:
name:
str_replace:
- template: oam_ecomp_rand
+ template: oam_onap_rand
params:
rand: { get_resource: random-str }
- oam_ecomp_subnet:
+ oam_onap_subnet:
type: OS::Neutron::Subnet
properties:
name:
str_replace:
- template: oam_ecomp_rand
+ template: oam_onap_rand
params:
rand: { get_resource: random-str }
- network_id: { get_resource: oam_ecomp }
+ network_id: { get_resource: oam_onap }
cidr: { get_param: oam_network_cidr }
dns_nameservers: { get_param: dns_list }
type: OS::Neutron::RouterInterface
properties:
router_id: { get_resource: router }
- subnet_id: { get_resource: oam_ecomp_subnet }
+ subnet_id: { get_resource: oam_onap_subnet }
# DNS Server instantiation
dns_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dns_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: dns_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
dns_floating_ip:
type: OS::Neutron::FloatingIP
params:
__nexus_repo__: { get_param: nexus_repo }
__artifacts_version__: { get_param: artifacts_version }
- __oam_network_cidr__: { get_attr: [oam_ecomp_subnet, cidr] }
+ __oam_network_cidr__: { get_attr: [oam_onap_subnet, cidr] }
__dns_ip_addr__: { get_param: dns_ip_addr }
__aai1_ip_addr__: { get_param: aai1_ip_addr }
__aai2_ip_addr__: { get_param: aai2_ip_addr }
__appc_ip_addr__: { get_param: appc_ip_addr }
__dcae_ip_addr__: { get_param: dcae_ip_addr }
- __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
- __mso_ip_addr__: { get_param: mso_ip_addr }
+ __so_ip_addr__: { get_param: so_ip_addr }
__mr_ip_addr__: { get_param: mr_ip_addr }
__policy_ip_addr__: { get_param: policy_ip_addr }
__portal_ip_addr__: { get_param: portal_ip_addr }
__sdc_ip_addr__: { get_param: sdc_ip_addr }
__sdnc_ip_addr__: { get_param: sdnc_ip_addr }
__vid_ip_addr__: { get_param: vid_ip_addr }
+ __clamp_ip_addr__: { get_param: clamp_ip_addr }
+ __openo_ip_addr__: { get_param: openo_ip_addr }
+ __music_ip_addr__: { get_param: music_ip_addr }
+ __oof_ip_addr__: { get_param: oof_ip_addr }
+ __aaf_ip_addr__: { get_param: aaf_ip_addr }
+ __sms_ip_addr__: { get_param: sms_ip_addr }
+ __nbi_ip_addr__: { get_param: nbi_ip_addr }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __dns_forwarder__: { get_param: dns_forwarder }
template: |
#!/bin/bash
echo "__aai2_ip_addr__" > /opt/config/aai2_ip_addr.txt
echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
- echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
- echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
+ echo "__so_ip_addr__" > /opt/config/so_ip_addr.txt
echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
+ echo "__clamp_ip_addr__" > /opt/config/clamp_ip_addr.txt
+ echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+ echo "__music_ip_addr__" > /opt/config/music_ip_addr.txt
+ echo "__oof_ip_addr__" > /opt/config/oof_ip_addr.txt
+ echo "__aaf_ip_addr__" > /opt/config/aaf_ip_addr.txt
+ echo "__sms_ip_addr__" > /opt/config/sms_ip_addr.txt
+ echo "__nbi_ip_addr__" > /opt/config/nbi_ip_addr.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__dns_forwarder__" > /opt/config/dns_forwarder.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/dns_install.sh -o /opt/dns_install.sh
aai1_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai1_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: aai1_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
aai1_floating_ip:
type: OS::Neutron::FloatingIP
str_replace:
template: base-aai-inst1
params:
- base: { get_param: vm_base_name }
+ base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- port: { get_resource: aai1_private_port }
__dmaap_topic__: { get_param: dmaap_topic }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: aai_docker }
+ __aai_sparky_docker__ : { get_param: aai_sparky_docker }
+ __gerrit_branch__: { get_param: aai_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __aai_repo__: { get_param: aai_repo }
template: |
#!/bin/bash
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__aai_sparky_docker__" > /opt/config/sparky_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "aai_instance_1" > /opt/config/aai_instance.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__aai_repo__" > /opt/config/remote_repo.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
aai2_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai2_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: aai2_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
aai2_floating_ip:
type: OS::Neutron::FloatingIP
str_replace:
template: base-aai-inst2
params:
- base: { get_param: vm_base_name }
+ base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- port: { get_resource: aai2_private_port }
__dmaap_topic__: { get_param: dmaap_topic }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: aai_docker }
+ __gerrit_branch__: { get_param: aai_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __aai_repo__: { get_param: aai_repo }
template: |
#!/bin/bash
echo "aai_instance_2" > /opt/config/aai_instance.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__aai_repo__" > /opt/config/remote_repo.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
./aai_install.sh
- # MSO instantiation
- mso_private_port:
+ # SO instantiation
+ so_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mso_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: so_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
- mso_floating_ip:
+ so_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
- port_id: { get_resource: mso_private_port }
+ port_id: { get_resource: so_private_port }
- mso_vm:
+ so_vm:
type: OS::Nova::Server
properties:
image: { get_param: ubuntu_1604_image }
flavor: { get_param: flavor_large }
name:
str_replace:
- template: base-mso
+ template: base-so
params:
- base: { get_param: vm_base_name }
+ base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- - port: { get_resource: mso_private_port }
+ - port: { get_resource: so_private_port }
user_data_format: RAW
user_data:
str_replace:
__dmaap_topic__: { get_param: dmaap_topic }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __openo_ip__: { get_param: openo_ip_addr }
+ __docker_version__: { get_param: so_docker }
+ __gerrit_branch__: { get_param: so_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __so_repo__: { get_param: so_repo }
template: |
#!/bin/bash
echo "__nexus_password__" > /opt/config/nexus_password.txt
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__openo_ip__" > /opt/config/openo_ip.txt
echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
echo "__openstack_username__" > /opt/config/openstack_username.txt
echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__so_repo__" > /opt/config/remote_repo.txt
# Download and run install script
- curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/mso_install.sh -o /opt/mso_install.sh
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/so_install.sh -o /opt/so_install.sh
cd /opt
- chmod +x mso_install.sh
- ./mso_install.sh
+ chmod +x so_install.sh
+ ./so_install.sh
# Message Router instantiation
mrouter_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mr_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: mr_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
mrouter_floating_ip:
type: OS::Neutron::FloatingIP
image: { get_param: ubuntu_1404_image }
flavor: { get_param: flavor_large }
name:
- str_replace:
+ str_replace:
template: base-message-router
params:
base: { get_param: vm_base_name }
__nexus_password__: { get_param: nexus_password }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __gerrit_branch__: { get_param: mr_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __mr_repo__: { get_param: mr_repo }
+ __dbcl_docker__: { get_param: dbcl_docker }
template: |
#!/bin/bash
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__mr_repo__" > /opt/config/remote_repo.txt
+ echo "__dbcl_docker__" > /opt/config/docker_version.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh
robot_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: robot_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: robot_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
robot_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
port_id: { get_resource: robot_private_port }
-
+
robot_vm:
type: OS::Nova::Server
properties:
image: { get_param: ubuntu_1604_image }
- flavor: { get_param: flavor_small }
+ flavor: { get_param: flavor_medium }
name:
- str_replace:
+ str_replace:
template: base-robot
params:
base: { get_param: vm_base_name }
__nexus_docker_repo__: { get_param: nexus_docker_repo }
__nexus_username__: { get_param: nexus_username }
__nexus_password__: { get_param: nexus_password }
- __network_name__: { get_attr: [oam_ecomp, name] }
+ __network_name__: { get_attr: [oam_onap, name] }
__openstack_username__: { get_param: openstack_username }
__openstack_api_key__: { get_param : openstack_api_key }
+ __openstack_tenant_id__: { get_param: openstack_tenant_id }
__artifacts_version__: { get_param: artifacts_version }
__openstack_region__: { get_param: openstack_region }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __gerrit_branch__: { get_param: robot_branch }
__cloud_env__: { get_param: cloud_env }
__keystone_url__: { get_param: keystone_url }
__aai1_ip_addr__: { get_param: aai1_ip_addr }
__aai2_ip_addr__: { get_param: aai2_ip_addr }
__appc_ip_addr__: { get_param: appc_ip_addr }
__dcae_ip_addr__: { get_param: dcae_ip_addr }
- __mso_ip_addr__: { get_param: mso_ip_addr }
+ __so_ip_addr__: { get_param: so_ip_addr }
__mr_ip_addr__: { get_param: mr_ip_addr }
__policy_ip_addr__: { get_param: policy_ip_addr }
__portal_ip_addr__: { get_param: portal_ip_addr }
__sdc_ip_addr__: { get_param: sdc_ip_addr }
+ __sdc_fe_ip_addr__: { get_param: sdc_ip_addr }
+ __sdc_be_ip_addr__: { get_param: sdc_ip_addr }
+ __sdc_be_onboard_ip_addr__: { get_param: sdc_ip_addr }
__sdnc_ip_addr__: { get_param: sdnc_ip_addr }
__vid_ip_addr__: { get_param: vid_ip_addr }
+ __clamp_ip_addr__: { get_param: clamp_ip_addr }
+ __openo_ip_addr__: { get_param: openo_ip_addr }
+ __music_ip_addr__: { get_param: music_ip_addr }
+ __oof_ip_addr__: { get_param: oof_ip_addr }
+ __aaf_ip_addr__: { get_param: aaf_ip_addr }
+ __nbi_ip_addr__: { get_param: nbi_ip_addr }
__external_dns__: { get_param: external_dns }
- __vm_image_name__: { get_param: ubuntu_1404_image}
- __vm_flavor__: { get_param: flavor_medium}
+ __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
+ __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
+ __vm_flavor__: { get_param: flavor_medium }
+ __public_net_id__: { get_param: public_net_id }
+ __script_version__: { get_param: artifacts_version }
+ __robot_repo__: { get_param: robot_repo }
+ __docker_version__: { get_param: robot_docker }
template: |
#!/bin/bash
echo "__network_name__" > /opt/config/network.txt
echo "__openstack_username__" > /opt/config/openstack_username.txt
echo "__openstack_api_key__" > /opt/config/openstack_password.txt
+ echo "__openstack_tenant_id__" > /opt/config/openstack_tenant_id.txt
echo "__openstack_region__" > /opt/config/region.txt
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__docker_version__" > /opt/config/docker_version.txt
echo "__aai2_ip_addr__" > /opt/config/aai2_ip_addr.txt
echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
- echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
+ echo "__so_ip_addr__" > /opt/config/so_ip_addr.txt
echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
+ echo "__portal_ip_addr__" > /opt/config/cli_ip_addr.txt
echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
+ echo "__sdc_fe_ip_addr__" > /opt/config/sdc_fe_ip_addr.txt
+ echo "__sdc_be_ip_addr__" > /opt/config/sdc_be_ip_addr.txt
+ echo "__sdc_be_onboard_ip_addr__" > /opt/config/sdc_be_onboard_ip_addr.txt
echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
+ echo "__clamp_ip_addr__" > /opt/config/clamp_ip_addr.txt
+ echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+ echo "__openo_ip_addr__" > /opt/config/vnfsdk_ip_addr.txt
+ echo "__music_ip_addr__" > /opt/config/music_ip_addr.txt
+ echo "__oof_ip_addr__" > /opt/config/oof_ip_addr.txt
+ echo "__aaf_ip_addr__" > /opt/config/aaf_ip_addr.txt
+ echo "__nbi_ip_addr__" > /opt/config/nbi_ip_addr.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
- echo "__vm_image_name__" > /opt/config/vm_image_name.txt
+ echo "__ubuntu_1404_image__" > /opt/config/vm_image_name.txt
echo "__vm_flavor__" > /opt/config/vm_flavor.txt
+ echo "__ubuntu_1404_image__" > /opt/config/ubuntu_1404_image.txt
+ echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
+ echo "__script_version__" > /opt/config/script_version.txt
+ echo "__public_net_id__" > /opt/config/public_net_id.txt
+ echo "__robot_repo__" > /opt/config/remote_repo.txt
+ echo "localhost" > /opt/config/log_elasticsearch_ip_addr.txt # these tests will be skipped by robot
+ echo "localhost" > /opt/config/log_logstash_ip_addr.txt # these tests will be skipped by robot
+ echo "localhost" > /opt/config/log_kibana_ip_addr.txt # these tests will be skipped by robot
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/robot_install.sh -o /opt/robot_install.sh
vid_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: vid_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: vid_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
vid_floating_ip:
type: OS::Neutron::FloatingIP
image: { get_param: ubuntu_1404_image }
flavor: { get_param: flavor_medium }
name:
- str_replace:
+ str_replace:
template: base-vid
params:
base: { get_param: vm_base_name }
__nexus_password__: { get_param: nexus_password }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: vid_docker }
+ __gerrit_branch__: { get_param: vid_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __vid_repo__: { get_param: vid_repo }
template: |
#!/bin/bash
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__vid_repo__" > /opt/config/remote_repo.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/vid_install.sh -o /opt/vid_install.sh
chmod +x vid_install.sh
./vid_install.sh
-
+
# SDN-C instantiation
sdnc_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
sdnc_floating_ip:
type: OS::Neutron::FloatingIP
image: { get_param: ubuntu_1404_image }
flavor: { get_param: flavor_large }
name:
- str_replace:
+ str_replace:
template: base-sdnc
params:
base: { get_param: vm_base_name }
__nexus_password__: { get_param: nexus_password }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: sdnc_docker }
+ __gerrit_branch__: { get_param: sdnc_branch }
+ __dgbuilder_docker__: { get_param: dgbuilder_docker }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __sdnc_repo__: { get_param: sdnc_repo }
template: |
#!/bin/bash
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
echo "__docker_version__" > /opt/config/docker_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__dgbuilder_docker__" > /opt/config/dgbuilder_version.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__sdnc_repo__" > /opt/config/remote_repo.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/sdnc_install.sh -o /opt/sdnc_install.sh
sdc_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
sdc_floating_ip:
type: OS::Neutron::FloatingIP
image: { get_param: ubuntu_1604_image }
flavor: { get_param: flavor_xlarge }
name:
- str_replace:
+ str_replace:
template: base-sdc
params:
base: { get_param: vm_base_name }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
__mr_ip_addr__: { get_param: mr_ip_addr }
- __public_ip__: { get_attr: [sdc_floating_ip, floating_ip_address] }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __private_ip__: { get_param: sdc_ip_addr }
+ __docker_version__: { get_param: sdc_docker }
+ __sdc_wfd_docker__: { get_param: sdc_wfd_docker }
+ __gerrit_branch__: { get_param: sdc_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __sdc_repo__: { get_param: sdc_repo }
template: |
#!/bin/bash
echo "__nexus_password__" > /opt/config/nexus_password.txt
echo "__env_name__" > /opt/config/env_name.txt
echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
- echo "__public_ip__" > /opt/config/public_ip.txt
+ echo "__private_ip__" > /opt/config/private_ip.txt
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__sdc_wfd_docker__" > /opt/config/sdc_wfd_docker.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__sdc_repo__" > /opt/config/remote_repo.txt
# Download and run install script
- curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/asdc_install.sh -o /opt/asdc_install.sh
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/sdc_install.sh -o /opt/sdc_install.sh
cd /opt
- chmod +x asdc_install.sh
- ./asdc_install.sh
+ chmod +x sdc_install.sh
+ ./sdc_install.sh
# PORTAL instantiation
portal_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: portal_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: portal_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
portal_floating_ip:
type: OS::Neutron::FloatingIP
image: { get_param: ubuntu_1404_image }
flavor: { get_param: flavor_large }
name:
- str_replace:
+ str_replace:
template: base-portal
params:
base: { get_param: vm_base_name }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
__public_ip__: { get_attr: [portal_floating_ip, floating_ip_address] }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: portal_docker }
+ __gerrit_branch__: { get_param: portal_branch }
+ __cli_docker__: { get_param: cli_docker }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __portal_repo__: { get_param: portal_repo }
template: |
#!/bin/bash
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
echo "__docker_version__" > /opt/config/docker_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__cli_docker__" > /opt/config/cli_docker_version.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__portal_repo__" > /opt/config/remote_repo.txt
# Download and run install script
curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/portal_install.sh -o /opt/portal_install.sh
./portal_install.sh
- # DCAE Controller instantiation
- dcae_c_private_port:
+ # Policy Engine instantiation
+ policy_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: policy_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
- dcae_c_floating_ip:
+ policy_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
- port_id: { get_resource: dcae_c_private_port }
+ port_id: { get_resource: policy_private_port }
- dcae_c_vm:
+ policy_vm:
type: OS::Nova::Server
properties:
image: { get_param: ubuntu_1404_image }
- flavor: { get_param: flavor_medium }
+ flavor: { get_param: flavor_xlarge }
name:
- str_replace:
- template: base-dcae-controller
+ str_replace:
+ template: base-policy
params:
base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- - port: { get_resource: dcae_c_private_port }
+ - port: { get_resource: policy_private_port }
user_data_format: RAW
user_data:
str_replace:
__nexus_docker_repo__: { get_param: nexus_docker_repo }
__nexus_username__: { get_param: nexus_username }
__nexus_password__: { get_param: nexus_password }
- __nexus_url_snapshots__: { get_param: nexus_url_snapshot }
- __gitlab_branch__: { get_param: gitlab_branch }
- __dns_ip_addr__: { get_param: dns_ip_addr }
- __dcae_zone__: { get_param: dcae_zone }
- __dcae_state__: { get_param: dcae_state }
__artifacts_version__: { get_param: artifacts_version }
- __tenant_id__: { get_param: openstack_tenant_id }
- __openstack_private_network_name__: { get_attr: [oam_ecomp, name] }
- __openstack_user__: { get_param: openstack_username }
- __openstack_password__: { get_param: openstack_api_key }
- __openstack_auth_method__: { get_param: openstack_auth_method }
- __key_name__: { get_param: key_name }
- __rand_str__: { get_resource: random-str }
- __pub_key__: { get_param: pub_key }
- __nexus_repo_root__: { get_param: nexus_repo_root }
- __openstack_region__: { get_param: openstack_region }
- __horizon_url__: { get_param: horizon_url }
- __keystone_url__: { get_param: keystone_url }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
- __dcae_code_version__: { get_param: dcae_code_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
+ __docker_version__: { get_param: policy_docker }
+ __gerrit_branch__: { get_param: policy_branch }
__cloud_env__: { get_param: cloud_env }
- __public_net_id__: { get_param: public_net_id }
- __dcae_base_environment__: { get_param: dcae_base_environment }
- __dcae_ip_addr__: { get_param: dcae_ip_addr }
- __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
- __dcae_db_ip_addr__: { get_param: dcae_db_ip_addr }
- __dcae_hdp1_ip_addr__: { get_param: dcae_hdp1_ip_addr }
- __dcae_hdp2_ip_addr__: { get_param: dcae_hdp2_ip_addr }
- __dcae_hdp3_ip_addr__: { get_param: dcae_hdp3_ip_addr }
- __dcae_float_ip__: { get_attr: [dcae_c_floating_ip, floating_ip_address] }
- __dcae_coll_float_ip__: { get_param: dcae_coll_float_ip }
- __dcae_db_float_ip__: { get_param: dcae_db_float_ip }
- __dcae_hdp1_float_ip__: { get_param: dcae_hdp1_float_ip }
- __dcae_hdp2_float_ip__: { get_param: dcae_hdp2_float_ip }
- __dcae_hdp3_float_ip__: { get_param: dcae_hdp3_float_ip }
__external_dns__: { get_param: external_dns }
- __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
- __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
- __flavor_small__: { get_param: flavor_small }
- __flavor_medium__: { get_param: flavor_medium }
- __flavor_large__: { get_param: flavor_large }
- __flavor_xlarge__: { get_param: flavor_xlarge }
+ __policy_repo__: { get_param: policy_repo }
template: |
#!/bin/bash
echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
echo "__nexus_username__" > /opt/config/nexus_username.txt
echo "__nexus_password__" > /opt/config/nexus_password.txt
- echo "__nexus_url_snapshots__" > /opt/config/nexus_url_snapshots.txt
- echo "__gitlab_branch__" > /opt/config/gitlab_branch.txt
- echo "__docker_version__" > /opt/config/docker_version.txt
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__public_ip__" > /opt/config/public_ip.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
- echo "__dcae_zone__" > /opt/config/dcae_zone.txt
- echo "__dcae_state__" > /opt/config/dcae_state.txt
- echo "__tenant_id__" > /opt/config/tenant_id.txt
- echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
- echo "__openstack_user__" > /opt/config/openstack_user.txt
- echo "__openstack_password__" > /opt/config/openstack_password.txt
- echo "__openstack_auth_method__" > /opt/config/openstack_auth_method.txt
- echo "__key_name__" > /opt/config/key_name.txt
- echo "__rand_str__" > /opt/config/rand_str.txt
- echo "__pub_key__" > /opt/config/pub_key.txt
- echo "__nexus_repo_root__" > /opt/config/nexus_repo_root.txt
- echo "__openstack_region__" > /opt/config/openstack_region.txt
- echo "__horizon_url__" > /opt/config/horizon_url.txt
- echo "__keystone_url__" > /opt/config/keystone_url.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
- echo "__public_net_id__" > /opt/config/public_net_id.txt
- echo "__dcae_base_environment__" > /opt/config/dcae_base_environment.txt
- echo "__dcae_code_version__" > /opt/config/dcae_code_version.txt
- echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
- echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
- echo "__dcae_db_ip_addr__" > /opt/config/dcae_db_ip_addr.txt
- echo "__dcae_hdp1_ip_addr__" > /opt/config/dcae_hdp1_ip_addr.txt
- echo "__dcae_hdp2_ip_addr__" > /opt/config/dcae_hdp2_ip_addr.txt
- echo "__dcae_hdp3_ip_addr__" > /opt/config/dcae_hdp3_ip_addr.txt
- echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
- echo "__dcae_coll_float_ip__" > /opt/config/dcae_coll_float_ip.txt
- echo "__dcae_db_float_ip__" > /opt/config/dcae_db_float_ip.txt
- echo "__dcae_hdp1_float_ip__" > /opt/config/dcae_hdp1_float_ip.txt
- echo "__dcae_hdp2_float_ip__" > /opt/config/dcae_hdp2_float_ip.txt
- echo "__dcae_hdp3_float_ip__" > /opt/config/dcae_hdp3_float_ip.txt
echo "__external_dns__" > /opt/config/external_dns.txt
- echo "__ubuntu_1404_image__" > /opt/config/ubuntu_1404_image.txt
- echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
- echo "__flavor_small__" > /opt/config/flavor_small.txt
- echo "__flavor_medium__" > /opt/config/flavor_medium.txt
- echo "__flavor_large__" > /opt/config/flavor_large.txt
- echo "__flavor_xlarge__" > /opt/config/flavor_xlarge.txt
+ echo "__policy_repo__" > /opt/config/remote_repo.txt
# Download and run install script
- curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/dcae_install.sh -o /opt/dcae_install.sh
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
cd /opt
- chmod +x dcae_install.sh
- ./dcae_install.sh
+ chmod +x policy_install.sh
+ ./policy_install.sh
- # Policy Engine instantiation
- policy_private_port:
+ # APP-C instantiation
+ appc_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: policy_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: appc_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
- policy_floating_ip:
+ appc_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
- port_id: { get_resource: policy_private_port }
+ port_id: { get_resource: appc_private_port }
- policy_vm:
+ appc_vm:
type: OS::Nova::Server
properties:
image: { get_param: ubuntu_1404_image }
- flavor: { get_param: flavor_xlarge }
+ flavor: { get_param: flavor_large }
name:
- str_replace:
- template: base-policy
+ str_replace:
+ template: base-appc
params:
base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- - port: { get_resource: policy_private_port }
+ - port: { get_resource: appc_private_port }
user_data_format: RAW
user_data:
str_replace:
__nexus_docker_repo__: { get_param: nexus_docker_repo }
__nexus_username__: { get_param: nexus_username }
__nexus_password__: { get_param: nexus_password }
+ __dmaap_topic__: { get_param: dmaap_topic }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: appc_docker }
+ __gerrit_branch__: { get_param: appc_branch }
+ __dgbuilder_docker__: { get_param: dgbuilder_docker }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __appc_repo__: { get_param: appc_repo }
template: |
#!/bin/bash
echo "__nexus_password__" > /opt/config/nexus_password.txt
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
- echo "__public_ip__" > /opt/config/public_ip.txt
+ echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
echo "__docker_version__" > /opt/config/docker_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__dgbuilder_docker__" > /opt/config/dgbuilder_version.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__appc_repo__" > /opt/config/remote_repo.txt
# Download and run install script
- curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
cd /opt
- chmod +x policy_install.sh
- ./policy_install.sh
+ chmod +x appc_install.sh
+ ./appc_install.sh
- # APP-C instantiation
- appc_private_port:
+ # CLAMP instantiation
+ clamp_private_port:
type: OS::Neutron::Port
properties:
- network: { get_resource: oam_ecomp }
- fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: appc_ip_addr }}]
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: clamp_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
- appc_floating_ip:
+ clamp_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
- port_id: { get_resource: appc_private_port }
+ port_id: { get_resource: clamp_private_port }
- appc_vm:
+ clamp_vm:
type: OS::Nova::Server
properties:
- image: { get_param: ubuntu_1404_image }
- flavor: { get_param: flavor_large }
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_medium }
name:
- str_replace:
- template: base-appc
+ str_replace:
+ template: base-clamp
params:
base: { get_param: vm_base_name }
key_name: { get_resource: vm_key }
networks:
- - port: { get_resource: appc_private_port }
+ - port: { get_resource: clamp_private_port }
user_data_format: RAW
user_data:
str_replace:
__nexus_docker_repo__: { get_param: nexus_docker_repo }
__nexus_username__: { get_param: nexus_username }
__nexus_password__: { get_param: nexus_password }
+ __openstack_username__: { get_param: openstack_username }
+ __openstack_tenant_id__: { get_param: openstack_tenant_id }
+ __openstack_api_key__: { get_param: openstack_api_key }
+ __openstack_region__: { get_param: openstack_region }
+ __keystone_url__: { get_param: keystone_url }
__dmaap_topic__: { get_param: dmaap_topic }
__artifacts_version__: { get_param: artifacts_version }
__dns_ip_addr__: { get_param: dns_ip_addr }
- __docker_version__: { get_param: docker_version }
- __gerrit_branch__: { get_param: gerrit_branch }
+ __docker_version__: { get_param: clamp_docker }
+ __gerrit_branch__: { get_param: clamp_branch }
__cloud_env__: { get_param: cloud_env }
__external_dns__: { get_param: external_dns }
+ __clamp_repo__: { get_param: clamp_repo }
template: |
#!/bin/bash
echo "__artifacts_version__" > /opt/config/artifacts_version.txt
echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
+ echo "__openstack_username__" > /opt/config/openstack_username.txt
+ echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
+ echo "__openstack_api_key__" > /opt/config/openstack_api_key.txt
+ echo "__openstack_region__" > /opt/config/openstack_region.txt
+ echo "__keystone_url__" > /opt/config/keystone.txt
echo "__docker_version__" > /opt/config/docker_version.txt
echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
echo "__cloud_env__" > /opt/config/cloud_env.txt
echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__clamp_repo__" > /opt/config/remote_repo.txt
# Download and run install script
- curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/clamp_install.sh -o /opt/clamp_install.sh
cd /opt
- chmod +x appc_install.sh
- ./appc_install.sh
\ No newline at end of file
+ chmod +x clamp_install.sh
+ ./clamp_install.sh
+
+
+ # OPEN-O VM instantiation
+ openo_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: openo_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ openo_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: openo_private_port }
+
+ openo_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_xlarge }
+ name:
+ str_replace:
+ template: base-multi-service
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: openo_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __oam_network_cidr__: { get_param: oam_network_cidr }
+ __aai1_ip_addr__: { get_param: aai1_ip_addr }
+ __aai2_ip_addr__: { get_param: aai2_ip_addr }
+ __appc_ip_addr__: { get_param: appc_ip_addr }
+ __dcae_ip_addr__: { get_param: dcae_ip_addr }
+ __so_ip_addr__: { get_param: so_ip_addr }
+ __mr_ip_addr__: { get_param: mr_ip_addr }
+ __policy_ip_addr__: { get_param: policy_ip_addr }
+ __portal_ip_addr__: { get_param: portal_ip_addr }
+ __robot_ip_addr__: { get_param: robot_ip_addr }
+ __sdc_ip_addr__: { get_param: sdc_ip_addr }
+ __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
+ __vid_ip_addr__: { get_param: vid_ip_addr }
+ __clamp_ip_addr__: { get_param: clamp_ip_addr }
+ __openo_ip_addr__: { get_param: openo_ip_addr }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ __vnfsdk_branch__: { get_param: vnfsdk_branch }
+ __msb_docker__: { get_param: msb_docker }
+ __mvim_docker__: { get_param: mvim_docker }
+ __mvim_openstack_docker__: { get_param: mvim_openstack_docker }
+ __uui_docker__: { get_param: uui_docker }
+ __esr_docker__: { get_param: esr_docker }
+ __vnfsdk_repo__: { get_param: vnfsdk_repo }
+ __vfc_nokia_docker__: { get_param: vfc_nokia_docker }
+ __vfc_nokiav2_docker__: { get_param: vfc_nokiav2_docker }
+ __vfc_ztevnfmdriver_docker__: { get_param: vfc_ztevnfmdriver_docker }
+ __vfc_multivimproxy_docker__: { get_param: vfc_multivimproxy_docker }
+ __vfc_ztesdncdriver_docker__: { get_param: vfc_ztesdncdriver_docker }
+ __vfc_vnfres_docker__: { get_param: vfc_vnfres_docker }
+ __vfc_vnfmgr_docker__: { get_param: vfc_vnfmgr_docker }
+ __vfc_vnflcm_docker__: { get_param: vfc_vnflcm_docker }
+ __vfc_resmanagement_docker__: { get_param: vfc_resmanagement_docker }
+ __vfc_nslcm_docker__: { get_param: vfc_nslcm_docker }
+ __vfc_huawei_docker__: { get_param: vfc_huawei_docker }
+ __vfc_jujudriver_docker__: { get_param: vfc_jujudriver_docker }
+ __vfc_gvnfmdriver_docker__: { get_param: vfc_gvnfmdriver_docker }
+ __vfc_emsdriver_docker__: { get_param: vfc_emsdriver_docker }
+ __vfc_catalog_docker__: { get_param: vfc_catalog_docker }
+ __vfc_wfengine_mgrservice_docker__: { get_param: vfc_wfengine_mgrservice_docker }
+ __vfc_wfengine_activiti_docker__: { get_param: vfc_wfengine_activiti_docker }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__vnfsdk_branch__" > /opt/config/vnfsdk_branch.txt
+ echo "__msb_docker__" > /opt/config/msb_docker.txt
+ echo "__mvim_docker__" > /opt/config/mvim_docker.txt
+ echo "__mvim_openstack_docker__" > /opt/config/mvim_openstack_docker.txt
+ echo "__uui_docker__" > /opt/config/uui_docker.txt
+ echo "__esr_docker__" > /opt/config/esr_docker.txt
+ echo "__vnfsdk_repo__" > /opt/config/vnfsdk_repo.txt
+
+ echo "export NOKIA_DOCKER_VER=__vfc_nokia_docker__" >> /opt/config/vfc_docker.txt
+ echo "export NOKIAV2_DOCKER_VER=__vfc_nokiav2_docker__" >> /opt/config/vfc_docker.txt
+ echo "export MULTIVIMPROXY_DOCKER_VER=__vfc_multivimproxy_docker__" >> /opt/config/vfc_docker.txt
+ echo "export ZTEVNFMDRIVER_DOCKER_VER=__vfc_ztevnfmdriver_docker__" >> /opt/config/vfc_docker.txt
+ echo "export ZTESDNCDRIVER_DOCKER_VER=__vfc_ztesdncdriver_docker__" >> /opt/config/vfc_docker.txt
+ echo "export VNFRES_DOCKER_VER=__vfc_vnfres_docker__" >> /opt/config/vfc_docker.txt
+ echo "export VNFMGR_DOCKER_VER=__vfc_vnfmgr_docker__" >> /opt/config/vfc_docker.txt
+ echo "export VNFLCM_DOCKER_VER=__vfc_vnflcm_docker__" >> /opt/config/vfc_docker.txt
+ echo "export RESMANAGEMENT_DOCKER_VER=__vfc_resmanagement_docker__" >> /opt/config/vfc_docker.txt
+ echo "export NSLCM_DOCKER_VER=__vfc_nslcm_docker__" >> /opt/config/vfc_docker.txt
+ echo "export HUAWEI_DOCKER_VER=__vfc_huawei_docker__" >> /opt/config/vfc_docker.txt
+ echo "export JUJUDRIVER_DOCKER_VER=__vfc_jujudriver_docker__" >> /opt/config/vfc_docker.txt
+ echo "export GVNFMDRIVER_DOCKER_VER=__vfc_gvnfmdriver_docker__" >> /opt/config/vfc_docker.txt
+ echo "export EMSDRIVER_DOCKER_VER=__vfc_emsdriver_docker__" >> /opt/config/vfc_docker.txt
+ echo "export CATALOG_DOCKER_VER=__vfc_catalog_docker__" >> /opt/config/vfc_docker.txt
+ echo "export MGRSERVICE_DOCKER_VER=__vfc_wfengine_mgrservice_docker__" >> /opt/config/vfc_docker.txt
+ echo "export ACTIVITI_DOCKER_VER=__vfc_wfengine_activiti_docker__" >> /opt/config/vfc_docker.txt
+
+ # Create env file with the IP address of all ONAP components
+ echo "export AAI_IP1=__aai1_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export AAI_IP2=__aai2_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export APPC_IP=__appc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export DCAE_IP=__dcae_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SO_IP=__so_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export MR_IP=__mr_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export POLICY_IP=__policy_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export PORTAL_IP=__portal_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export ROBOT_IP=__robot_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SDC_IP=__sdc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SDNC_IP=__sdnc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export VID_IP=__vid_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export CLAMP_IP=__clamp_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export OPENO_IP=__openo_ip_addr__" >> /opt/config/onap_ips.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/openo_install.sh -o /opt/openo_install.sh
+ cd /opt
+ chmod +x openo_install.sh
+ ./openo_install.sh
+
+
+ # DCAE GEN 2 Controller instantiation
+ dcae_c_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ dcae_c_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: dcae_c_private_port }
+
+ dcae_c_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_xlarge }
+ name:
+ str_replace:
+ template: base-dcae
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: dcae_c_private_port }
+ #security_groups:
+ # - { get_resource: onap_sg }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __rand_str__: { get_resource: random-str }
+ # repo related
+ __artifacts_version__: { get_param: artifacts_version }
+ __docker_version__: { get_param: dcae_docker }
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ # conf for the ONAP environment where the DCAE bootstrap vm/conatiner runs
+ __dcae_deployment_profile__: { get_param: dcae_deployment_profile }
+ __mac_addr__: { get_attr: [dcae_c_private_port, mac_address] }
+ __dcae_ip_addr__: { get_param: dcae_ip_addr }
+ __dcae_float_ip__: { get_attr: [dcae_c_floating_ip, floating_ip_address] }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __external_dns__: { get_param: external_dns }
+ __dns_forwarder__: { get_param: dns_forwarder }
+ __dcae_domain__: { get_param: dcae_domain }
+ # conf for VMs DCAE is to bringup
+ __openstack_keystone_url__: { get_param: keystone_url }
+ __dcae_keystone_url__: { get_param: dcae_keystone_url }
+ __dcaeos_cloud_env__: { get_param: cloud_env }
+ __dcaeos_keystone_url__: { get_param: dcae_keystone_url }
+ __dcaeos_region__: { get_param: openstack_region }
+ __dcaeos_tenant_id__: { get_param: openstack_tenant_id }
+ __dcaeos_tenant_name__: { get_param: openstack_tenant_name }
+ __dcaeos_security_group__:
+ str_replace:
+ template: 'onap_sg_rand'
+ params:
+ rand: { get_resource: random-str }
+ #__dcaeos_security_group__: { get_attr: [onap_sg, name] }
+ __dcaeos_username__: { get_param: openstack_username }
+ __dcaeos_password__: { get_param: openstack_api_key }
+ __dcaeos_key_name__: { get_resource: vm_key }
+ __dcaeos_public_key__: { get_param: dcae_public_key }
+ __dcaeos_private_key__: { get_param: dcae_private_key }
+ __dcaeos_private_network_name__: { get_attr: [oam_onap, name] }
+ __dcaeos_public_network_name__: { get_param: public_net_name }
+ __dcaeos_ubuntu_1604_image__: { get_param: ubuntu_1604_image }
+ __dcaeos_centos_7_image__: { get_param: dcae_centos_7_image }
+ __dcaeos_flavor_id__: { get_param: flavor_medium }
+ __dcaeos_flavor_id_cdap__: { get_param: flavor_large }
+ __dcaeos_dnsaas_config_enabled__: { get_param: dnsaas_config_enabled }
+ __dcaeos_dnsaas_region__: { get_param: dnsaas_region }
+ __dcaeos_dnsaas_keystone_url__: { get_param: dnsaas_keystone_url }
+ __dnsaas_tenant_name__: { get_param: dnsaas_tenant_name }
+ __dcaeos_dnsaas_username__: { get_param: dnsaas_username }
+ __dcaeos_dnsaas_password__: { get_param: dnsaas_password }
+ # fixed private IPs
+ __mr_ip_addr__: { get_param: mr_ip_addr }
+ __policy_ip_addr__: { get_param: policy_ip_addr }
+ __sdc_ip_addr__: { get_param: sdc_ip_addr }
+ __openo_ip_addr__: { get_param: openo_ip_addr }
+ __aai1_ip_addr__: { get_param: aai1_ip_addr }
+ __aai2_ip_addr__: { get_param: aai2_ip_addr }
+ # floating IPs
+ __dns_floating_ip_addr__: { get_attr: [dns_floating_ip, floating_ip_address] }
+ __aai1_floating_ip_addr__: { get_attr: [aai1_floating_ip, floating_ip_address] }
+ __aai2_floating_ip_addr__: { get_attr: [aai2_floating_ip, floating_ip_address] }
+ __mrouter_floating_ip_addr__: { get_attr: [mrouter_floating_ip, floating_ip_address] }
+ __sdc_floating_ip_addr__: { get_attr: [sdc_floating_ip, floating_ip_address] }
+ __policy_floating_ip_addr__: { get_attr: [policy_floating_ip, floating_ip_address] }
+ __openo_floating_ip_addr__: { get_attr: [openo_floating_ip, floating_ip_address] }
+ __dcae_c_floating_ip_addr__: { get_attr: [dcae_c_floating_ip, floating_ip_address] }
+ # container versions
+ __dcae_docker__: { get_param: dcae_docker }
+ __dcae_snmptrap_docker__: { get_param: dcae_snmptrap_docker }
+ __dcae_ves_docker__: { get_param: dcae_ves_docker }
+ __dcae_bootstrap_docker__: { get_param: dcae_bootstrap_docker }
+ __dcae_cm_docker__: { get_param: dcae_cm_docker }
+ __dcae_k8sbootstrap_docker__: { get_param: dcae_k8sbootstrap_docker }
+ __dcae_redisc_docker__: { get_param: dcae_redisc_docker }
+ __dcae_tca_docker__: { get_param: dcae_tca_docker }
+ __dcae_cb_docker__: { get_param: dcae_cb_docker }
+ __dcae_cbs_docker__: { get_param: dcae_cbs_docker }
+ __dcae_dh_docker__: { get_param: dcae_dh_docker }
+ __dcae_inv_docker__: { get_param: dcae_inv_docker }
+ __dcae_ph_docker__: { get_param: dcae_ph_docker }
+ __dcae_sch_docker__: { get_param: dcae_sch_docker }
+ __dcae_heartbeat_docker__: { get_param: dcae_heartbeat_docker }
+ __dcae_prh_docker__: { get_param: dcae_prh_docker }
+ __holmes_em_docker__: { get_param: holmes_em_docker }
+ __holmes_rm_docker__: { get_param: holmes_rm_docker }
+
+
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__rand_str__" > /opt/config/dcae_zone.txt
+ echo "__rand_str__" > /opt/config/rand_str.txt
+ # repo related
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ # conf for the ONAP environment where the DCAE bootstrap vm/conatiner runs
+ echo "__dcae_deployment_profile__" > /opt/config/dcae_deployment_profile.txt
+ echo "__mac_addr__" > /opt/config/mac_addr.txt
+ echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
+ echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__dns_forwarder__" > /opt/config/dns_forwarder.txt
+ echo "__dcae_domain__" > /opt/config/dcae_domain.txt
+ # conf for the OpenStack env where DCAE is deployed
+ echo "__openstack_keystone_url__" > /opt/config/openstack_keystone_url.txt
+ echo "__dcaeos_cloud_env__" > /opt/config/cloud_env.txt
+ echo "__dcaeos_keystone_url__" > /opt/config/keystone_url.txt
+ echo "__dcaeos_region__" > /opt/config/openstack_region.txt
+ echo "__dcaeos_tenant_id__" > /opt/config/tenant_id.txt
+ echo "__dcaeos_tenant_name__" > /opt/config/tenant_name.txt
+ echo "__dcaeos_username__" > /opt/config/openstack_user.txt
+ echo "__dcaeos_password__" > /opt/config/openstack_password.txt
+ echo "__dcaeos_key_name__" > /opt/config/key_name.txt
+ echo "__dcaeos_public_key__" > /opt/config/pub_key.txt
+ echo "__dcaeos_private_key__" > /opt/config/priv_key
+ echo "__dcaeos_private_network_name__" > /opt/config/openstack_private_network_name.txt
+ echo "__dcaeos_public_network_name__" > /opt/config/public_net_name.txt
+ echo "__dcaeos_public_network_name__" > /opt/config/public_net_id.txt
+ echo "__dcaeos_ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
+ echo "__dcaeos_centos_7_image__" > /opt/config/centos_7_image.txt
+ echo "__dcaeos_security_group__" > /opt/config/security_group.txt
+ echo "__dcaeos_flavor_id__" > /opt/config/flavor_id.txt
+ echo "__dcaeos_flavor_id_cdap__" > /opt/config/flavor_id_cdap.txt
+ echo "__dcaeos_dnsaas_config_enabled__" > /opt/config/dnsaas_config_enabled.txt
+ echo "__dcaeos_dnsaas_region__" > /opt/config/dnsaas_region.txt
+ echo "__dcaeos_dnsaas_keystone_url__" > /opt/config/dnsaas_keystone_url.txt
+ echo "__dnsaas_tenant_name__" > /opt/config/dnsaas_tenant_name.txt
+ echo "__dcaeos_dnsaas_username__" > /opt/config/dnsaas_username.txt
+ echo "__dcaeos_dnsaas_password__" > /opt/config/dnsaas_password.txt
+ # fixed private IP addresses of other ONAP components
+ echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
+ echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
+ echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
+ echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+ echo "__openo_ip_addr__" > /opt/config/msb_ip_addr.txt
+ echo "__aai1_ip_addr__" > /opt/config/aai1_ip_addr.txt
+ echo "__aai2_ip_addr__" > /opt/config/aai2_ip_addr.txt
+ # floating IPs
+ echo "__dns_floating_ip_addr__" > /opt/config/dns_floating_ip_addr.txt
+ echo "__aai1_floating_ip_addr__" > /opt/config/aai1_floating_ip_addr.txt
+ echo "__aai2_floating_ip_addr__" > /opt/config/aai2_floating_ip_addr.txt
+ echo "__mrouter_floating_ip_addr__" > /opt/config/mrouter_floating_ip_addr.txt
+ echo "__sdc_floating_ip_addr__" > /opt/config/sdc_floating_ip_addr.txt
+ echo "__policy_floating_ip_addr__" > /opt/config/policy_floating_ip_addr.txt
+ echo "__openo_floating_ip_addr__" > /opt/config/openo_floating_ip_addr.txt
+ echo "__dcae_c_floating_ip_addr__" > /opt/config/dcae_c_floating_ip_addr.txt
+ # container versions
+ echo "__dcae_docker__" > /opt/config/dcae_docker.txt
+ echo "__dcae_snmptrap_docker__" > /opt/config/dcae_docker_snmptrap.txt
+ echo "__dcae_ves_docker__" > /opt/config/dcae_docker_ves.txt
+ echo "__dcae_bootstrap_docker__" > /opt/config/dcae_docker_bootstrap.txt
+ echo "__dcae_cm_docker__" > /opt/config/dcae_docker_cm.txt
+ echo "__dcae_k8sbootstrap_docker__" > /opt/config/dcae_docker_k8sbootstrap.txt
+ echo "__dcae_redisc_docker__" > /opt/config/dcae_docker_redisc.txt
+ echo "__dcae_tca_docker__" > /opt/config/dcae_docker_tca.txt
+ echo "__dcae_cb_docker__" > /opt/config/dcae_docker_cb.txt
+ echo "__dcae_cbs_docker__" > /opt/config/dcae_docker_cbs.txt
+ echo "__dcae_dh_docker__" > /opt/config/dcae_docker_dh.txt
+ echo "__dcae_inv_docker__" > /opt/config/dcae_docker_inv.txt
+ echo "__dcae_ph_docker__" > /opt/config/dcae_docker_ph.txt
+ echo "__dcae_sch_docker__" > /opt/config/dcae_docker_sch.txt
+ echo "__dcae_heartbeat_docker__" > /opt/config/dcae_docker_heartbeat.txt
+ echo "__dcae_prh_docker__" > /opt/config/dcae_docker_prh.txt
+ echo "__holmes_em_docker__" > /opt/config/holmes_docker_em.txt
+ echo "__holmes_rm_docker__" > /opt/config/holmes_docker_rm.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/dcae2_install.sh -o /opt/dcae2_install.sh
+ cd /opt
+ chmod +x dcae2_install.sh
+ ./dcae2_install.sh > /tmp/dcae2_install.log 2>&1
+
+
+ # MUSIC instantiation
+ music_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: music_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ music_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: music_private_port }
+
+ music_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1404_image }
+ flavor: { get_param: flavor_large }
+ name:
+ str_replace:
+ template: base-music
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: music_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __docker_version__: { get_param: music_docker }
+ __music_repo__: { get_param: music_repo }
+ __gerrit_branch__: { get_param: music_branch }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__music_repo__" > /opt/config/remote_repo.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/music_install.sh -o /opt/music_install.sh
+ cd /opt
+ chmod +x music_install.sh
+ ./music_install.sh
+
+
+ # OOF instantiation
+ oof_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: oof_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ oof_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: oof_private_port }
+
+ oof_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_large }
+ name:
+ str_replace:
+ template: base-oof
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: oof_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __docker_version__: { get_param: oof_docker }
+ __oof_repo__: { get_param: oof_repo }
+ __gerrit_branch__: { get_param: oof_branch }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__oof_repo__" > /opt/config/remote_repo.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/oof_install.sh -o /opt/oof_install.sh
+ cd /opt
+ chmod +x oof_install.sh
+ ./oof_install.sh
+
+
+ # AAF instantiation
+ aaf_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: aaf_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ aaf_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: aaf_private_port }
+
+ aaf_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_medium }
+ name:
+ str_replace:
+ template: base-aaf
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: aaf_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __docker_version__: { get_param: aaf_docker }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ __aaf_repo__: { get_param: aaf_repo }
+ __gerrit_branch__: { get_param: aaf_branch }
+ __local_ip__: { get_param: aaf_ip_addr }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__aaf_repo__" > /opt/config/remote_repo.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__local_ip__" > /opt/config/local_ip.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aaf_install.sh -o /opt/aaf_install.sh
+ cd /opt
+ chmod +x aaf_install.sh
+ ./aaf_install.sh
+
+ # SMS instantiation
+ sms_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: sms_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ sms_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: sms_private_port }
+
+ sms_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_medium }
+ name:
+ str_replace:
+ template: base-sms
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: sms_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __docker_version__: { get_param: sms_docker }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ __sms_repo__: { get_param: sms_repo }
+ __gerrit_branch__: { get_param: sms_branch }
+ __local_ip__: { get_param: sms_ip_addr }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__sms_repo__" > /opt/config/remote_repo.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__local_ip__" > /opt/config/local_ip.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/sms_install.sh -o /opt/sms_install.sh
+ cd /opt
+ chmod +x sms_install.sh
+ ./sms_install.sh
+
+ # NBI instantiation
+ nbi_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: nbi_ip_addr }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ nbi_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: nbi_private_port }
+
+ nbi_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_small }
+ name:
+ str_replace:
+ template: base-nbi
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - port: { get_resource: nbi_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __docker_version__: { get_param: nbi_docker }
+ __nbi_repo__: { get_param: nbi_repo }
+ __gerrit_branch__: { get_param: nbi_branch }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ __sdc_ip_addr__: { get_param: sdc_ip_addr }
+ __aai1_ip_addr__: { get_param: aai1_ip_addr }
+ __so_ip_addr__: { get_param: so_ip_addr }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__nbi_repo__" > /opt/config/remote_repo.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
+ echo "__aai1_ip_addr__" > /opt/config/aai_ip_addr.txt
+ echo "__so_ip_addr__" > /opt/config/so_ip_addr.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/nbi_install.sh -o /opt/nbi_install.sh
+ cd /opt
+ chmod +x nbi_install.sh
+ ./nbi_install.sh