Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 |
| 2 | International License. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 3 | http://creativecommons.org/licenses/by/4.0 |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 4 | Copyright 2017-2018 ONAP |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 5 | |
| 6 | |
| 7 | .. contents:: |
| 8 | :depth: 2 |
| 9 | .. |
| 10 | |
Rich Bennett | b921b99 | 2017-11-17 08:28:37 -0500 | [diff] [blame] | 11 | .. index:: Setting Up Full ONAP |
| 12 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 13 | |
| 14 | ======================== |
| 15 | **Setting Up Full ONAP** |
| 16 | ======================== |
| 17 | |
| 18 | .. _demo-installing-running-onap: |
| 19 | |
| 20 | **Context** |
| 21 | =========== |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 22 | ONAP may be deployed in different contexts depending on your requirements. |
| 23 | The recommended installation for Beijng Release over virtual machines is based |
| 24 | on OpenStack HEAT Template. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 25 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 26 | Using the Beijing HEAT Template installer, ONAP can be deployed in a single |
| 27 | tenant or multiple tenants. One tenant for all the components except DCAE, and |
| 28 | another tenant dedicated to the DCAE components. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 29 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 30 | The VNFs managed by ONAP may be deployed in different OpenStack tenants or |
| 31 | based on top of VMware based infrastructure. For details, refer |
| 32 | :ref:`to MultiCloud project<index-multicloud>`. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 33 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 34 | The current installation is based on the single tenant deployment (all the ONAP |
| 35 | components will be hosted in a unique tenant) with DCAE components deployed in |
| 36 | High Availability mode. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 37 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 38 | The installation requires some manual tasks to setup the DCAE components. |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 39 | |
Gildas Lanilis | c10c7c9 | 2017-11-21 11:50:18 -0800 | [diff] [blame] | 40 | .. _demo-installing-running-onap-requirements: |
| 41 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 42 | **Requirements** |
| 43 | ================ |
| 44 | |
| 45 | OpenStack |
| 46 | --------- |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 47 | ONAP installation is validated on |
| 48 | `OpenStack Ocata <https://releases.openstack.org/ocata/>`_ or latter release. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 49 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 50 | You can use various Cloud providers offering OpenStack based solutions. |
| 51 | A list of available Cloud providers on the |
| 52 | `OpenStack marketplace <https://www.openstack.org/marketplace/public-clouds/>`_. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 53 | |
| 54 | You can use your private Cloud infrastructure. |
| 55 | |
| 56 | The following OpenStack components must be deployed in the infrastructure: |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 57 | - *Cinder* |
| 58 | - *Designate* |
| 59 | - *Glance* |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 60 | - *Heat* |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 61 | - *Horizon* |
| 62 | - *Keystone* |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 63 | - *Neutron* |
| 64 | - *Nova* |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 65 | |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 66 | To deploy OpenStack, you can use various solutions: |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 67 | - `OpenStack installation guide <https://docs.openstack.org/install-guide/>`_ |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 68 | - `OPNFV Cross Community Continuous Integration - XCI installer <http://docs.opnfv.org/en/latest/infrastructure/xci.html>`_ |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 69 | - `OpenStack Ocata installation guide <https://docs.openstack.org/ocata/install/>`_ |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 70 | |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 71 | .. tip:: |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 72 | - Notice the documentation version mentioned in the URL, e.g. ocata/, pike/, |
| 73 | latest/ ... |
| 74 | - The installation is pretty huge, some automated scripts have been created by |
| 75 | the community: |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 76 | |
| 77 | - `OpenStack installation with Ansible (All openstack services) <https://docs.openstack.org/openstack-ansible/latest/>`_ |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 78 | - `OpenStack Ocata installation scripts for testing environment(DO NOT install Heat, Designate and Cinder Volume services) <https://github.com/reachsrirams/openstack-scripts>`_ |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 79 | |
| 80 | Use the procedure below to deploy and configure *Designate* manually |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 81 | |
| 82 | .. toctree:: |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 83 | :maxdepth: 1 |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 84 | |
| 85 | install-designate.rst |
| 86 | |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 87 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 88 | The OpenStack infrastructure must enable internet access and you need to have |
| 89 | an "External network" already configured properly. |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 90 | The External network ID will have to be provided in the Heat environment file. |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 91 | |
| 92 | ONAP components |
| 93 | --------------- |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 94 | The following table presents the mapping between the created VM and the ONAP |
| 95 | components, and provides VM information (flavor and image): |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 96 | |
| 97 | =================== ================= ======= ============ |
| 98 | VM name ONAP project(s) Flavor Image |
| 99 | =================== ================= ======= ============ |
| 100 | onap-aai-inst1 AAI xlarge Ubuntu 14.04 |
| 101 | onap-aai-inst2 AAI/UI xlarge Ubuntu 14.04 |
| 102 | onap-appc APPC, CCSDK large Ubuntu 14.04 |
| 103 | onap-clamp CLAMP medium Ubuntu 16.04 |
| 104 | onap-dns-server *Internal DNS* small Ubuntu 14.04 |
| 105 | onap-message-router DMAAP large Ubuntu 14.04 |
| 106 | onap-multi-service MSB, VF-C, VNFSDK xxlarge Ubuntu 16.04 |
| 107 | onap-policy Policy xlarge Ubuntu 14.04 |
| 108 | onap-portal Portal, CLI large Ubuntu 14.04 |
| 109 | onap-robot Integration medium Ubuntu 16.04 |
| 110 | onap-sdc SDC xlarge Ubuntu 16.04 |
| 111 | onap-sdnc SDNC, CCSDK large Ubuntu 14.04 |
| 112 | onap-so SO large Ubuntu 16.04 |
| 113 | onap-vid VID medium Ubuntu 14.04 |
| 114 | onap-dcae-bootstrap DCAE, Holmes small Ubuntu 14.04 |
| 115 | dcaeorcl00 DCAE/Orchestr. medium CentOS 7 |
| 116 | dcaecnsl00 DCAE/Consul medium Ubuntu 16.04 |
| 117 | dcaecnsl01 DCAE/Consul medium Ubuntu 16.04 |
| 118 | dcaecnsl02 DCAE/Consul medium Ubuntu 16.04 |
| 119 | dcaedokp00 DCAE/Policy Hand. medium Ubuntu 16.04 |
| 120 | dcaedoks00 DCAE/VES, Holmes medium Ubuntu 16.04 |
| 121 | dcaepgvm00 DCAE/Postrges medium Ubuntu 16.04 |
| 122 | dcaecdap00 DCAE/CDAP large Ubuntu 16.04 |
| 123 | dcaecdap01 DCAE/CDAP large Ubuntu 16.04 |
| 124 | dcaecdap02 DCAE/CDAP large Ubuntu 16.04 |
| 125 | dcaecdap03 DCAE/CDAP large Ubuntu 16.04 |
| 126 | dcaecdap04 DCAE/CDAP large Ubuntu 16.04 |
| 127 | dcaecdap05 DCAE/CDAP large Ubuntu 16.04 |
| 128 | dcaecdap06 DCAE/CDAP large Ubuntu 16.04 |
| 129 | =================== ================= ======= ============ |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 130 | |
| 131 | Footprint |
| 132 | --------- |
| 133 | The ONAP installation requires the following footprint: |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 134 | - 29 VM |
| 135 | - 148 vCPU |
| 136 | - 336 GB RAM |
| 137 | - 3 TB Storage |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 138 | - 29 floating IP addresses |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 139 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 140 | .. Note: The default flavor size may be optimized. The ONAP community is |
| 141 | working to update flavors of basic ONAP installation. |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 142 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 143 | .. Note: You should also reserve some resources for the VNFs to be deployed. |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 144 | |
| 145 | Artifacts |
| 146 | --------- |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 147 | The following artifacts must be deployed on the OpenStack infrastructure: |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 148 | - a public SSH key to access the various VM |
| 149 | - private SSH key and public key SSH key for the DCAE VM |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 150 | - Ubuntu 14.04 image (https://cloud-images.ubuntu.com/releases/14.04/14.04/) |
| 151 | - Ubuntu 16.04 image (https://cloud-images.ubuntu.com/releases/16.04/release/) |
| 152 | - CentOS 7 image (http://cloud.centos.org/centos/7/images/) |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 153 | - Set of flavors: small, medium, large, medium, large, xlarge, xxlarge |
| 154 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 155 | .. Note: The floating IP may be private IP. |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 156 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 157 | .. Note: Basic flavors can reuse the default flavors as defined by |
| 158 | OpenStack |
| 159 | <https://docs.openstack.org/horizon/latest/admin/manage-flavors.html>`_ |
| 160 | The xxlarge flavor should be configured using the following values: |
| 161 | 12 vCPU, 64 GB RAM and 120 GB storage. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 162 | |
| 163 | Security |
| 164 | -------- |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 165 | The default installation assumes that the Default security group is configured |
| 166 | to enable full access between the ONAP components. |
| 167 | Depending on your environment, we may need to open some security groups |
| 168 | (eg when using the portal from your desktop). |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 169 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 170 | The list of various services and ports used can be found on the |
| 171 | `ONAP wiki - ports <https://wiki.onap.org/display/DW/ONAP+Services+List#ONAPServicesList-ONAPServices>`_. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 172 | |
| 173 | **Deployment** |
| 174 | ============== |
| 175 | |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 176 | Source files |
| 177 | ------------ |
| 178 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 179 | Both following files must be downloaded and configured to match your |
| 180 | configuration: |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 181 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 182 | - Template file: |
| 183 | https://git.onap.org/demo/plain/heat/ONAP/onap_openstack.yaml |
| 184 | - Environment file: |
| 185 | https://git.onap.org/demo/plain/heat/ONAP/onap_openstack.env |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 186 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 187 | The environment file must be customized as described in the following sections. |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 188 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 189 | .. Note Beijing release files |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 190 | |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 191 | Description |
| 192 | ----------- |
| 193 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 194 | The ONAP HEAT template spins up all the components expect the DCAE. |
| 195 | The template, onap_openstack.yaml, comes with an environment file, |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 196 | onap_openstack.env, in which all the default values are defined. |
| 197 | |
| 198 | The HEAT template is composed of two sections: (i) parameters, and (ii) |
| 199 | resources. |
| 200 | The parameter section contains the declaration and |
| 201 | description of the parameters that will be used to spin up ONAP, such as |
| 202 | public network identifier, URLs of code and artifacts repositories, etc. |
| 203 | The default values of these parameters can be found in the environment |
| 204 | file. |
| 205 | |
| 206 | The resource section contains the definition of: |
| 207 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 208 | - ONAP Private Management Network, which ONAP components use to communicate |
| 209 | with each other and with VNFs |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 210 | - ONAP Virtual Machines (VMs) |
| 211 | - Public/private key pair used to access ONAP VMs |
| 212 | - Virtual interfaces towards the ONAP Private Management Network |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 213 | - Disk volumes |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 214 | |
| 215 | Each VM specification includes Operating System image name, VM size |
| 216 | (i.e. flavor), VM name, etc. Each VM has two virtual network interfaces: |
| 217 | one towards the public network and one towards the ONAP Private |
| 218 | Management network, as described above. Furthermore, each VM runs a |
| 219 | post-instantiation script that downloads and installs software |
| 220 | dependencies (e.g. Java JDK, gcc, make, Python, ...) and ONAP software |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 221 | packages and Docker containers from remote repositories. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 222 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 223 | When the HEAT template is executed, the OpenStack HEAT engine creates |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 224 | the resources defined in the HEAT template, based on the parameters |
| 225 | values defined in the environment file. |
| 226 | |
| 227 | Environment file |
| 228 | ---------------- |
| 229 | |
| 230 | Before running HEAT, it is necessary to customize the environment file. |
| 231 | Indeed, some parameters, namely public_net_id, pub_key, |
| 232 | openstack_tenant_id, openstack_username, and openstack_api_key, |
| 233 | need to be set depending on the user's environment: |
| 234 | |
| 235 | **Global parameters** |
| 236 | |
| 237 | :: |
| 238 | |
| 239 | public_net_id: PUT YOUR NETWORK ID/NAME HERE |
| 240 | pub_key: PUT YOUR PUBLIC KEY HERE |
| 241 | openstack_tenant_id: PUT YOUR OPENSTACK PROJECT ID HERE |
| 242 | openstack_username: PUT YOUR OPENSTACK USERNAME HERE |
| 243 | openstack_api_key: PUT YOUR OPENSTACK PASSWORD HERE |
| 244 | horizon_url: PUT THE HORIZON URL HERE |
| 245 | keystone_url: PUT THE KEYSTONE URL HERE (do not include version number) |
| 246 | |
| 247 | openstack_region parameter is set to RegionOne (OpenStack default). If |
| 248 | your OpenStack is using another Region, please modify this parameter. |
| 249 | |
| 250 | public_net_id is the unique identifier (UUID) or name of the public |
| 251 | network of the cloud provider. To get the public_net_id, use the |
| 252 | following OpenStack CLI command (ext is the name of the external |
| 253 | network, change it with the name of the external network of your |
| 254 | installation) |
| 255 | |
| 256 | :: |
| 257 | |
| 258 | openstack network list | grep ext | awk '{print $2}' |
| 259 | |
| 260 | pub_key is string value of the public key that will be installed in |
| 261 | each ONAP VM. To create a public/private key pair in Linux, please |
| 262 | execute the following instruction: |
| 263 | |
| 264 | :: |
| 265 | |
| 266 | user@ubuntu:~$ ssh-keygen -t rsa |
| 267 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 268 | The following operations create the public/private key pair: |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 269 | |
| 270 | :: |
| 271 | |
| 272 | Generating public/private rsa key pair. |
| 273 | Enter file in which to save the key (/home/user/.ssh/id_rsa): |
| 274 | Created directory '/home/user/.ssh'. |
| 275 | Enter passphrase (empty for no passphrase): |
| 276 | Enter same passphrase again: |
| 277 | Your identification has been saved in /home/user/.ssh/id_rsa. |
| 278 | Your public key has been saved in /home/user/.ssh/id_rsa.pub. |
| 279 | |
| 280 | openstack_username, openstack_tenant_id (password), and |
| 281 | openstack_api_key are user's credentials to access the |
| 282 | OpenStack-based cloud. |
| 283 | |
| 284 | **Images and flavors parameters** |
| 285 | |
| 286 | :: |
| 287 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 288 | ubuntu_1404_image: PUT THE UBUNTU 14.04 IMAGE NAME HERE |
| 289 | ubuntu_1604_image: PUT THE UBUNTU 16.04 IMAGE NAME HERE |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 290 | flavor_small: PUT THE SMALL FLAVOR NAME HERE |
| 291 | flavor_medium: PUT THE MEDIUM FLAVOR NAME HERE |
| 292 | flavor_large: PUT THE LARGE FLAVOR NAME HERE |
| 293 | flavor_xlarge: PUT THE XLARGE FLAVOR NAME HERE |
| 294 | flavor_xxlarge: PUT THE XXLARGE FLAVOR NAME HERE |
| 295 | |
| 296 | To get the images in your OpenStack environment, use the following |
| 297 | OpenStack CLI command: |
| 298 | |
| 299 | :: |
| 300 | |
| 301 | openstack image list | grep 'ubuntu' |
| 302 | |
| 303 | To get the flavor names used in your OpenStack environment, use the |
| 304 | following OpenStack CLI command: |
| 305 | |
| 306 | :: |
| 307 | |
| 308 | openstack flavor list |
| 309 | |
| 310 | **Network parameters** |
| 311 | |
| 312 | :: |
| 313 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 314 | dns_list: PUT THE ADDRESS OFTHE EXTERNAL DNS HERE (e.g. a comma-separated list |
| 315 | of IP addresses in your /etc/resolv.conf in UNIX-based Operating Systems). |
| 316 | THIS LIST MUST INCLUDE THE DNS SERVER THAT OFFERS DNS AS AS SERVICE |
| 317 | see DCAE section below for more details) |
| 318 | external_dns: PUT THE FIRST ADDRESS OF THE EXTERNAL DNS LIST HERE |
| 319 | oam_network_cidr: 10.0.0.0/16 |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 320 | dns_forwarder: PUT THE IP OF DNS FORWARDER FOR ONAP DEPLOYMENT'S OWN DNS SERVER |
| 321 | oam_network_cidr: 10.0.0.0/16 |
| 322 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 323 | You can use the Google Public DNS 8.8.8.8 and 4.4.4.4 address or your internal |
| 324 | DNS servers. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 325 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 326 | ONAP installs a DNS server used to resolve IP addresses in the ONAP OAM private |
| 327 | network. |
| 328 | ONAP Beijing Release also requires OpenStack Designate DNS support for the |
| 329 | DCAE platform, so as to allow IP address discovery and communication among |
| 330 | DCAE elements. |
| 331 | This is required because the ONAP HEAT template only installs the DCAE |
| 332 | bootstrap container, which will in turn install the entire DCAE platform. |
| 333 | As such, at installation time, the IP addresses of the DCAE components are |
| 334 | unknown. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 335 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 336 | The DNS server that ONAP installs needs to be connected to the Designate DNS to |
| 337 | allow communication between the DCAE elements and the other ONAP components. |
| 338 | To this end, dns\_list, external\_dns, and dns\_forwarder should all have the |
| 339 | IP address of the Designate DNS. |
| 340 | These three parameters are redundant, but still required for Beijing Release. |
| 341 | Originally, dns\_list and external\_dns were both used to circumvent some |
| 342 | limitations of older OpenStack versions. |
| 343 | In future releases, the DNS settings and parameters in HEAT will be |
| 344 | consolidated. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 345 | The Designate DNS is configured to access the external DNS. |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 346 | As such, the ONAP DNS will forward to the Designate DNS the queries from ONAP |
| 347 | components to the external world. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 348 | The Designate DNS will then forward those queries to the external DNS. |
| 349 | |
| 350 | **DCAE Parameters** |
| 351 | |
| 352 | DCAE spins up ONAP's data collection and analytics system in two phases. |
| 353 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 354 | The first phase consists of launching a bootstrap VM that is specified in the |
| 355 | ONAP HEAT template, as described above. This VM requires a number of |
| 356 | deployment-specific configuration parameters being provided so that it can |
| 357 | subsequently bring up the DCAE system. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 358 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 359 | There are two groups of parameters: |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 360 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 361 | - The first group relates to the launching of DCAE VMs, including parameters |
| 362 | such as the keystone URL and additional VM image IDs/names. Hence these |
| 363 | parameters need to be provided to DCAE. Note that although DCAE VMs will be |
| 364 | launched in the same tenant as the rest of ONAP, because DCAE may use |
| 365 | MultiCloud node as the agent for interfacing with the underlying cloud, it |
| 366 | needs a separate keystone URL (which points to MultiCloud node instead of |
| 367 | the underlying cloud). |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 368 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 369 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 370 | - The second group of configuration parameters relate to DNS As A Service |
| 371 | support(DNSaaS). DCAE requires DNSaaS for registering its VMs into |
| 372 | organization-wide DNS service. For OpenStack, DNSaaS is provided by |
| 373 | Designate, as mentioned above. |
| 374 | Designate support can be provided via an integrated service endpoint listed |
| 375 | under the service catalog of the OpenStack installation; or proxyed by the |
| 376 | ONAP MultiCloud service. For the latter case, a number of parameters are |
| 377 | needed to configure MultiCloud to use the correct Designate service. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 378 | |
| 379 | These parameters are described below: |
| 380 | |
| 381 | :: |
| 382 | |
| 383 | dcae_keystone_url: PUT THE MULTIVIM PROVIDED KEYSTONE API URL HERE |
| 384 | dcae_centos_7_image: PUT THE CENTOS7 VM IMAGE NAME HERE FOR DCAE LAUNCHED CENTOS7 VM |
| 385 | dcae_domain: PUT THE NAME OF DOMAIN THAT DCAE VMS REGISTER UNDER |
| 386 | dcae_public_key: PUT THE PUBLIC KEY OF A KEYPAIR HERE TO BE USED BETWEEN DCAE LAUNCHED VMS |
| 387 | dcae_private_key: PUT THE SECRET KEY OF A KEYPAIR HERE TO BE USED BETWEEN DCAE LAUNCHED VMS |
| 388 | |
| 389 | dnsaas_config_enabled: PUT WHETHER TO USE PROXYED DESIGNATE |
| 390 | dnsaas_region: PUT THE DESIGNATE PROVIDING OPENSTACK'S REGION HERE |
| 391 | dnsaas_keystone_url: PUT THE DESIGNATE PROVIDING OPENSTACK'S KEYSTONE URL HERE |
| 392 | dnsaas_tenant_name: PUT THE TENANT NAME IN THE DESIGNATE PROVIDING OPENSTACK HERE (FOR R1 USE THE SAME AS openstack_tenant_name) |
| 393 | dnsaas_username: PUT THE DESIGNATE PROVIDING OPENSTACK'S USERNAME HERE |
| 394 | dnsaas_password: PUT THE DESIGNATE PROVIDING OPENSTACK'S PASSWORD HERE |
| 395 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 396 | Instantiation |
| 397 | ------------- |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 398 | |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 399 | The ONAP platform can be instantiated via Horizon (OpenStack dashboard) |
| 400 | or Command Line. |
| 401 | |
| 402 | **Instantiation via Horizon:** |
| 403 | |
| 404 | - Login to Horizon URL with your personal credentials |
| 405 | - Click "Stacks" from the "Orchestration" menu |
| 406 | - Click "Launch Stack" |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 407 | - Paste or manually upload the HEAT template file (onap_openstack.yaml) in the |
| 408 | "Template Source" form |
| 409 | - Paste or manually upload the HEAT environment file (onap_openstack.env) in |
| 410 | the "Environment Source" form |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 411 | - Click "Next" - Specify a name in the "Stack Name" form |
| 412 | - Provide the password in the "Password" form |
| 413 | - Click "Launch" |
| 414 | |
| 415 | **Instantiation via Command Line:** |
| 416 | |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 417 | - You need to have the OpenStack Heat service installed: |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 418 | |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 419 | - Create a file (named i.e. ~/openstack/openrc) that sets all the |
| 420 | environmental variables required to access your OpenStack tenant: |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 421 | |
| 422 | :: |
| 423 | |
| 424 | export OS_AUTH_URL=INSERT THE AUTH URL HERE |
| 425 | export OS_USERNAME=INSERT YOUR USERNAME HERE |
| 426 | export OS_TENANT_ID=INSERT YOUR TENANT ID HERE |
| 427 | export OS_REGION_NAME=INSERT THE REGION HERE |
| 428 | export OS_PASSWORD=INSERT YOUR PASSWORD HERE |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 429 | export OS_USER_DOMAIN_NAME=INSERT YOUR DOMAIN HERE |
| 430 | export OS_PROJECT_NAME=INSERT YOUR PROJECT NAME HERE |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 431 | |
| 432 | - Run the script from command line: |
| 433 | |
| 434 | :: |
| 435 | |
| 436 | source ~/openstack/openrc |
| 437 | |
| 438 | - In order to install the ONAP platform, type: |
| 439 | |
| 440 | :: |
| 441 | |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 442 | # Old HEAT client |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 443 | heat stack-create STACK_NAME -f PATH_TO_HEAT_TEMPLATE(YAML FILE) |
| 444 | -e PATH_TO_ENV_FILE |
Determe, Sebastien (sd378r) | 4c83298 | 2017-12-05 18:46:51 +0100 | [diff] [blame] | 445 | |
| 446 | OR |
| 447 | |
| 448 | # New OpenStack client |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 449 | openstack stack create -t PATH_TO_HEAT_TEMPLATE(YAML FILE) |
| 450 | -e PATH_TO_ENV_FILE STACK_NAME |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 451 | |
| 452 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 453 | .. Note The HEAT template deployment may take time (up to one hour) |
| 454 | depending on your hardware environment. |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 455 | |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 456 | Deploy DCAE |
| 457 | ----------- |
| 458 | The HEAT template deployed the onap-dcae-bootstrap virtual machine. |
| 459 | |
| 460 | .. Note To provide the manual tasks to configure the local environment |
| 461 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 462 | |
| 463 | Test the installation |
| 464 | --------------------- |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 465 | Every ONAP component offers a HealthCheck REST API. The Robot Virtual Machine |
| 466 | (*onap-robot*) can be used to test that every components run smoothly. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 467 | Run the following command to perform the HealthCheck: |
| 468 | |
| 469 | .. code-block:: bash |
| 470 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 471 | docker exec -it openecompete_container /var/opt/OpenECOMP_ETE/runTags.sh |
| 472 | -i health |
| 473 | -d ./html |
| 474 | -V /share/config/integration_robot_properties.py |
| 475 | -V /share/config/integration_preload_parameters.py |
| 476 | -V /share/config/vm_properties.py |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 477 | |
Gildas Lanilis | 7b727a5 | 2017-11-20 17:18:00 -0800 | [diff] [blame] | 478 | This test suite will execute 30 tests towards the various ONAP components. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 479 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 480 | After the installation, it is possible to deploy the various use-cases |
| 481 | described in `ONAP wiki - demos <https://wiki.onap.org/display/DW/Running+the+ONAP+Demos>`_. |
Eric Debeau | 5adb178 | 2017-11-17 20:34:11 +0000 | [diff] [blame] | 482 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 483 | Detect problems |
| 484 | --------------- |
| 485 | If all the tests are not OK, many causes are possible. |
| 486 | Here is a simple procedure to detect where the problem occurs: |
| 487 | |
| 488 | * Check the OpenStack Virtual Machine logs |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 489 | * Connect to the Virtual Machine and check that the various containers are |
| 490 | running. |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 491 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 492 | The list of containers are described on the `ONAP wiki - containers <https://wiki.onap.org/display/DW/ONAP+Services+List#ONAPServicesList-ONAPServices>`_. |
| 493 | In case some containers are missing, check the Docker logs using the following |
| 494 | command: |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 495 | |
| 496 | .. code-block:: bash |
| 497 | |
| 498 | sudo docker ps -a |
| 499 | sudo docker logs <containerid> |
| 500 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 501 | **Portal configuration** |
| 502 | ======================== |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 503 | The current ONAP installation is using the *onap.org* domain. |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 504 | To use the portal on your desktop, you must configure the following information |
| 505 | in your *host* file (located in /etc/host for Linux or |
| 506 | /windows/system32/drivers/etc/hosts for Windows): |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 507 | |
| 508 | .. code-block:: bash |
| 509 | |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 510 | <onap-policy_ip> policy.api.simpledemo.onap.org |
| 511 | <onap-portal_ip> portal.api.simpledemo.onap.org |
| 512 | <onap-sdc_ip> sdc.api.simpledemo.onap.org |
| 513 | <onap-vid_ip> vid.api.simpledemo.onap.org |
| 514 | <onap-aai-inst1_ip> aai.api.simpledemo.onap.org |
| 515 | <onap-aai-inst2_ip> aai.ui.simpledemo.onap.org |
| 516 | |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 517 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 518 | You can use the Horizon dashboard to get the IP addresses associated with the |
| 519 | Virtual Machines or use the following command line: |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 520 | |
| 521 | .. code-block:: bash |
| 522 | |
| 523 | openstack server list |
| 524 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 525 | Launch the portal on the |
| 526 | http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 527 | |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 528 | Various users are predefined as presented in the following table: |
| 529 | |
| 530 | .. csv-table:: |
| 531 | :header: Role, Login |
| 532 | :widths: 20, 20 |
| 533 | |
| 534 | Superuser,demo |
| 535 | Designer,cs0008 |
| 536 | Tester,jm0007 |
| 537 | Governor,gv0001 |
| 538 | Ops,op0001 |
| 539 | |
| 540 | The password is *demo123456!* |
| 541 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 542 | Go to the `Portal component user guide |
| 543 | <http://onap.readthedocs.io/en/latest/submodules/portal.git/docs/index.html>`_ |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 544 | |
| 545 | Other UI documentation: |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 546 | - `CLAMP <http://onap.readthedocs.io/en/latest/submodules/clamp.git/docs/index.html>`_ |
Eric Debeau | c0095d1 | 2017-11-15 23:58:49 +0000 | [diff] [blame] | 547 | - `SDC <http://onap.readthedocs.io/en/latest/submodules/sdc.git/docs/index.html>`_ |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 548 | - `UI Use-Case <http://onap.readthedocs.io/en/latest/submodules/usecase-ui.git/docs/index.html>`_ |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 549 | |
| 550 | |
| 551 | **Components** |
| 552 | ============== |
| 553 | |
Eric Debeau | 5fc9132 | 2018-03-20 21:18:58 +0000 | [diff] [blame^] | 554 | The list of various services and ports used can be found on the |
| 555 | `ONAP wiki - services <https://wiki.onap.org/display/DW/ONAP+Services+List#ONAPServicesList-ONAPServices>`_ |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 556 | |
| 557 | .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| 558 | http://creativecommons.org/licenses/by/4.0 |
| 559 | Copyright 2017 ONAP |
Rich Bennett | a4cf27d | 2017-11-12 23:11:28 -0500 | [diff] [blame] | 560 | |
| 561 | |
Eric Debeau | a9634e7 | 2017-11-14 12:32:22 +0000 | [diff] [blame] | 562 | .. contents:: |