1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
6 The purpose of this document is to explain how to build an ONAP SDNC Instance on vanilla Openstack deployment.
7 The document begins with creation of a network, and a VM.
8 Then, the document explains how to run the installation scripts on the VM.
9 Finally, the document shows how to check that the SDNC installation was completed successfully.
10 This document and logs were created on 14 November, 2017.
12 Infrastructure setup on OpenStack
13 ---------------------------------
14 Create the network, we call it “ONAP-net”:
18 cloud@olc-ubuntu2:~$ neutron net-create onap-net
19 neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
20 Created a new network:
21 +-----------------+--------------------------------------+
23 +-----------------+--------------------------------------+
24 | admin_state_up | True |
25 | id | 662650f0-d178-4745-b4fe-dd2cb735160c |
27 | router:external | False |
31 | tenant_id | 324b90de6e9a4ad88e93a100c2cedd5d |
32 +-----------------+--------------------------------------+
35 Create the subnet, “ONAP-subnet”:
39 cloud@olc-ubuntu2:~$ neutron subnet-create --name onap-subnet onap-net 10.0.0.0/16
40 neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
42 +-------------------+----------------------------------------------+
44 +-------------------+----------------------------------------------+
45 | allocation_pools | {"start": "10.0.0.2", "end": "10.0.255.254"} |
46 | cidr | 10.0.0.0/16 |
48 | enable_dhcp | True |
49 | gateway_ip | 10.0.0.1 |
51 | id | 574df42f-15e9-4761-a4c5-e48d64f04b99 |
53 | ipv6_address_mode | |
55 | name | onap-subnet |
56 | network_id | 662650f0-d178-4745-b4fe-dd2cb735160c |
57 | tenant_id | 324b90de6e9a4ad88e93a100c2cedd5d |
58 +-------------------+----------------------------------------------+
61 Boot an Ubuntu 14.04 instance, using the correct flavor name according to your Openstack :
65 cloud@olc-ubuntu2:~$ nova boot --flavor n2.cw.standard-4 --image "Ubuntu 14.04" --key-name olc-
66 key2 --nic net-name=onap-net,v4-fixed-ip=10.0.7.1 vm1-sdnc
67 +--------------------------------------+-----------------------------------------------------+
69 +--------------------------------------+-----------------------------------------------------+
70 | OS-DCF:diskConfig | MANUAL |
71 | OS-EXT-AZ:availability_zone | |
72 | OS-EXT-STS:power_state | 0 |
73 | OS-EXT-STS:task_state | scheduling |
74 | OS-EXT-STS:vm_state | building |
75 | OS-SRV-USG:launched_at | - |
76 | OS-SRV-USG:terminated_at | - |
80 | created | 2017-11-14T15:48:37Z |
81 | flavor | n2.cw.standard-4 (44) |
83 | id | 596e2b1f-ff09-4c8e-b3e8-fc06566306cf |
84 | image | Ubuntu 14.04 (ac9d6735-7c2b-4ff1-90e9-b45225fd80a9) |
85 | key_name | olc-key2 |
88 | os-extended-volumes:volumes_attached | [] |
90 | security_groups | default |
92 | tenant_id | 324b90de6e9a4ad88e93a100c2cedd5d |
93 | updated | 2017-11-14T15:48:38Z |
94 | user_id | 24c673ecc97f4b42887a195654d6a0b9 |
95 +--------------------------------------+-----------------------------------------------------+
98 Create a floating IP and associate to the SDNC VM so that it can access internet to download needed files:
102 cloud@olc-ubuntu2:~$ neutron floatingip-create public
103 neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
104 Created a new floatingip:
105 +---------------------+--------------------------------------+
107 +---------------------+--------------------------------------+
108 | fixed_ip_address | |
109 | floating_ip_address | 84.39.47.153 |
110 | floating_network_id | b5dd7532-1533-4b9c-8bf9-e66631a9be1d |
111 | id | eac0124f-9c92-47e5-a694-53355c06c6b2 |
115 | tenant_id | 324b90de6e9a4ad88e93a100c2cedd5d |
116 +---------------------+--------------------------------------+
118 cloud@olc-ubuntu2:~$ neutron port-list
119 neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
120 +--------------------------------------+--------------------------------------+-------------------+-------------------------------------------------------------------------------------+
121 | id | name | mac_address | fixed_ips |
122 +--------------------------------------+--------------------------------------+-------------------+-------------------------------------------------------------------------------------+
123 | 5d8e8f30-a13a-417d-b5b4-f4038224364b | 5d8e8f30-a13a-417d-b5b4-f4038224364b | 02:5d:8e:8f:30:a1 | {"subnet_id": "574df42f-15e9-4761-a4c5-e48d64f04b99", "ip_address": "10.0.7.1"} |
124 +--------------------------------------+--------------------------------------+-------------------+-------------------------------------------------------------------------------------+
126 cloud@olc-ubuntu2:~$ neutron floatingip-associate eac0124f-9c92-47e5-a694-53355c06c6b25d8e8f30-a13a-417d-b5b4-f4038224364b
127 neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
128 Associated floating IP eac0124f-9c92-47e5-a694-53355c06c6b2
131 Add the security group to the VM in order to open needed ports for SDNC like port 22, 3000, 8282 etc ...:
135 cloud@olc-ubuntu2:~$ nova add-secgroup vm1-sdnc olc-onap
141 Connect to the new VM and change to user "root", and run the following commands to start the installation (the full logs are listed in the attached text file):
145 cloud@vm1-sdnc:~$ sudo -i
146 root@vm1-sdnc:~# mkdir -p /opt/config
148 root@vm1-sdnc:~# echo "https://nexus.onap.org/content/sites/raw" > /opt/config/nexus_repo.txt
149 root@vm1-sdnc:~# echo "nexus3.onap.org:10001" > /opt/config/nexus_docker_repo.txt
150 root@vm1-sdnc:~# echo "docker" > /opt/config/nexus_username.txt
151 root@vm1-sdnc:~# echo "docker" > /opt/config/nexus_password.txt
152 root@vm1-sdnc:~# echo "1.1.0-SNAPSHOT" > /opt/config/artifacts_version.txt
153 root@vm1-sdnc:~# echo "10.0.100.1" > /opt/config/dns_ip_addr.txt
154 root@vm1-sdnc:~# wget https://git.onap.org/integration/plain/version-manifest/src/main/resources/docker-manifest.csv
155 root@vm1-sdnc:~# DOCKER_SDNC_VERSION=$(grep onap/sdnc-image docker-manifest.csv | awk '{v=$1; gsub(".*/*,","",$1); print ($1) }')
156 root@vm1-sdnc:~# echo $DOCKER_SDNC_VERSION > /opt/config/docker_version.txt
157 root@vm1-sdnc:~# echo "master" > /opt/config/gerrit_branch.txt
158 root@vm1-sdnc:~# echo "openstack" > /opt/config/cloud_env.txt
159 root@vm1-sdnc:~# echo "8.8.8.8" > /opt/config/external_dns.txt
160 root@vm1-sdnc:~# echo "http://gerrit.onap.org/r/sdnc/oam.git" > /opt/config/remote_repo.txt
161 root@vm1-sdnc:~# DOCKER_BUILDER_VERSION=$(grep dgbuilder docker-manifest.csv | awk '{v=$1; gsub(".*/*,","",$1); print ($1) }')
162 root@vm1-sdnc:~# echo $DOCKER_BUILDER_VERSION > /opt/config/dgbuilder_version.txt
163 root@vm1-sdnc:~# curl -k https://nexus.onap.org/content/sites/raw/org.onap.demo/boot/1.1.0-
164 SNAPSHOT/sdnc_install.sh -o /opt/sdnc_install.sh
165 % Total % Received % Xferd Average Speed Time Time Time Current
166 Dload Upload Total Spent Left Speed
167 100 3701 100 3701 0 0 5196 0 --:--:-- --:--:-- --:--:-- 5190
168 root@vm1-sdnc:~# cd /opt
169 root@vm1-sdnc:/opt# chmod +x sdnc_install.sh
170 root@vm1-sdnc:/opt# ./sdnc_install.sh
171 cp: cannot stat ‘/home/ubuntu/.ssh/authorized_keys’: No such file or directory
172 Get:1 http://security.ubuntu.com trusty-security InRelease [65.9 kB]
175 The following install logs shows the containers are coming up, meaning a successful deployment of the SDNC:
179 ... truncated output ...
180 Status: Downloaded newer image for mysql/mysql-server:5.6
181 Creating sdnc_db_container
182 Creating sdnc_controller_container
183 Creating sdnc_portal_container
184 Creating sdnc_dgbuilder_container
185 Creating sdnc_dmaaplistener_container
186 Creating sdnc_ueblistener_container
189 Check that the containers are up and running:
193 cloud@vm1-sdnc:~$ sudo docker container list
194 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
195 30fd20166145 onap/sdnc-dmaap-listener-image:latest "/opt/onap/sdnc/dm..." 25 minutes ago Up 25 minutes sdnc_dmaaplistener_container
196 484220f3b38a onap/sdnc-ueb-listener-image:latest "/opt/onap/sdnc/ue..." 25 minutes ago Up 25 minutes sdnc_ueblistener_container
197 674ad3ff7f24 onap/ccsdk-dgbuilder-image:latest "/bin/bash -c 'cd ..." 25 minutes ago Up 25 minutes 0.0.0.0:3000->3100/tcp sdnc_dgbuilder_container
198 d2a915c8e2e5 onap/admportal-sdnc-image:latest "/bin/bash -c 'cd ..." 25 minutes ago Up 25 minutes 0.0.0.0:8843->8843/tcp sdnc_portal_container
199 a65b7fb486e7 onap/sdnc-image:latest "/opt/onap/sdnc/bi..." 25 minutes ago Up 25 minutes 0.0.0.0:8201->8101/tcp, 0.0.0.0:8282->8181/tcp sdnc_controller_container
200 2b9b2f5a79f8 mysql/mysql-server:5.6 "/entrypoint.sh my..." 25 minutes ago Up 25 minutes (healthy) 0.0.0.0:32768->3306/tcp sdnc_db_container
203 Login into APIDOC Explorer and check that you can see Swagger UI interface with all the APIs:
207 APIDOC Explorer URL: http://{SDNC-IP}:8282/apidoc/explorer/index.html
209 Password: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
211 Login into DG Builder and check that you can see the GUI:
215 DG Builder URL: http://dguser:test123@{SDNC-IP}:3000