modified: docs/installation.rst
[sdnc/oam.git] / docs / installation.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3
4 Introduction
5 ============
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.
11
12 Infrastructure setup on OpenStack
13 ---------------------------------
14 Create the network, we call it “ONAP-net”:
15
16 ::
17
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  +-----------------+--------------------------------------+
22  | Field           | Value                                |
23  +-----------------+--------------------------------------+
24  | admin_state_up  | True                                 |
25  | id              | 662650f0-d178-4745-b4fe-dd2cb735160c |
26  | name            | onap-net                             |
27  | router:external | False                                |
28  | shared          | False                                |
29  | status          | ACTIVE                               |
30  | subnets         |                                      |
31  | tenant_id       | 324b90de6e9a4ad88e93a100c2cedd5d     |
32  +-----------------+--------------------------------------+
33  cloud@olc-ubuntu2:~$
34
35 Create the subnet, “ONAP-subnet”:
36
37 ::
38
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.
41  Created a new subnet:
42  +-------------------+----------------------------------------------+
43  | Field             | Value                                        |
44  +-------------------+----------------------------------------------+
45  | allocation_pools  | {"start": "10.0.0.2", "end": "10.0.255.254"} |
46  | cidr              | 10.0.0.0/16                                  |
47  | dns_nameservers   |                                              |
48  | enable_dhcp       | True                                         |
49  | gateway_ip        | 10.0.0.1                                     |
50  | host_routes       |                                              |
51  | id                | 574df42f-15e9-4761-a4c5-e48d64f04b99         |
52  | ip_version        | 4                                            |
53  | ipv6_address_mode |                                              |
54  | ipv6_ra_mode      |                                              |
55  | name              | onap-subnet                                  |
56  | network_id        | 662650f0-d178-4745-b4fe-dd2cb735160c         |
57  | tenant_id         | 324b90de6e9a4ad88e93a100c2cedd5d             |
58  +-------------------+----------------------------------------------+
59  cloud@olc-ubuntu2:~$
60
61 Boot an Ubuntu 14.04 instance, using the correct flavor name according to your Openstack :
62
63 ::
64
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  +--------------------------------------+-----------------------------------------------------+
68  | Property                             | Value                                               |
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             | -                                                   |
77  | accessIPv4                           |                                                     |
78  | accessIPv6                           |                                                     |
79  | config_drive                         |                                                     |
80  | created                              | 2017-11-14T15:48:37Z                                |
81  | flavor                               | n2.cw.standard-4 (44)                               |
82  | hostId                               |                                                     |
83  | id                                   | 596e2b1f-ff09-4c8e-b3e8-fc06566306cf                |
84  | image                                | Ubuntu 14.04 (ac9d6735-7c2b-4ff1-90e9-b45225fd80a9) |
85  | key_name                             | olc-key2                                            |
86  | metadata                             | {}                                                  |
87  | name                                 | vm1-sdnc                                            |
88  | os-extended-volumes:volumes_attached | []                                                  |
89  | progress                             | 0                                                   |
90  | security_groups                      | default                                             |
91  | status                               | BUILD                                               |
92  | tenant_id                            | 324b90de6e9a4ad88e93a100c2cedd5d                    |
93  | updated                              | 2017-11-14T15:48:38Z                                |
94  | user_id                              | 24c673ecc97f4b42887a195654d6a0b9                    |
95  +--------------------------------------+-----------------------------------------------------+
96  cloud@olc-ubuntu2:~$
97
98 Create a floating IP and associate to the SDNC VM so that it can access internet to download needed files:
99
100 ::
101
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  +---------------------+--------------------------------------+
106  | Field               | Value                                |
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 |
112  | port_id             |                                      |
113  | router_id           |                                      |
114  | status              | ACTIVE                               |
115  | tenant_id           | 324b90de6e9a4ad88e93a100c2cedd5d     |
116  +---------------------+--------------------------------------+
117  cloud@olc-ubuntu2:~$
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  +--------------------------------------+--------------------------------------+-------------------+-------------------------------------------------------------------------------------+
125  cloud@olc-ubuntu2:~$
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
129  cloud@olc-ubuntu2:~$
130
131 Add the security group to the VM in order to open needed ports for SDNC like port 22, 3000, 8282 etc ...:
132
133 ::
134
135  cloud@olc-ubuntu2:~$ nova add-secgroup vm1-sdnc olc-onap
136  cloud@olc-ubuntu2:~$
137
138 Installing SDNC
139 ---------------
140
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):
142
143 ::
144
145  cloud@vm1-sdnc:~$ sudo -i
146  root@vm1-sdnc:~# mkdir -p /opt/config
147  root@vm1-sdnc:~#
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]
173  … output truncated …
174
175 The following install logs shows the containers are coming up, meaning a successful deployment of the SDNC:
176
177 ::
178
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
187  root@vm1-sdnc:/opt#
188
189 Check that the containers are up and running:
190
191 ::
192
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
201  cloud@vm1-sdnc:~$
202
203 Login into APIDOC Explorer and check that you can see Swagger UI interface with all the APIs:
204
205 ::
206
207  APIDOC Explorer URL: http://{SDNC-IP}:8282/apidoc/explorer/index.html
208  Username: admin
209  Password: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
210
211 Login into DG Builder and check that you can see the GUI:
212
213 ::
214
215  DG Builder URL: http://dguser:test123@{SDNC-IP}:3000
216
217