blob: 54c226114f59cef6b426b35d1173130f4f3cdf76 [file] [log] [blame]
mrichomme950afce2020-06-04 11:57:18 +02001.. _integration-installation:
2
mrichommee4643892020-11-30 18:31:29 +01003:orphan:
4
mrichommea958b982020-04-13 18:46:35 +02005Integration Environment Installation
mrichomme842d3222019-10-09 14:02:17 +02006-------------------------------------
Gary Wuf6118ca2018-11-28 13:00:26 -08007
mrichomme842d3222019-10-09 14:02:17 +02008ONAP is deployed on top of kubernetes through the OOM installer.
9Kubernetes can be installed on bare metal or on different environments such as
10OpenStack (private or public cloud), Azure, AWS,..
11
12The integration team maintains a heat template to install ONAP on OpenStack.
13This template creates the needed resources (VMs, networks, security groups,
14...) in order to support a HA Kubernetes then a full ONAP installation.
15
16Sample OpenStack RC (credential) files environment files or deployment scripts
17are provided, they correspond to files used on windriver environment.
18This environment is used by the integration team to validate the installation,
19perform tests and troubleshoot.
20
mrichommea958b982020-04-13 18:46:35 +020021If you intend to deploy your own environment, they can be used as reference but
mrichomme842d3222019-10-09 14:02:17 +020022must be adapted according to your context.
Gary Wu2985eb22018-11-28 11:17:10 -080023
24Source files
25~~~~~~~~~~~~
26
mrichommee4643892020-11-30 18:31:29 +010027- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-rke?h=guilin
28- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/Integration-SB-00-openrc?h=guilin
29- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/onap-oom.env?h=guilin
30- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-rke/scripts/deploy.sh?h=guilin
Gary Wu2985eb22018-11-28 11:17:10 -080031
Gary Wuf6118ca2018-11-28 13:00:26 -080032
mrichomme842d3222019-10-09 14:02:17 +020033Heat Template Description
34~~~~~~~~~~~~~~~~~~~~~~~~~
Gary Wu2985eb22018-11-28 11:17:10 -080035
36The ONAP Integration Project provides a sample HEAT template that
37fully automates the deployment of ONAP using OOM as described in
mrichomme59305b42020-12-01 18:23:57 +010038OOM documentation, see :ref:`OOM <onap-oom:oom_quickstart_guide>` for details.
Gary Wu2985eb22018-11-28 11:17:10 -080039
Gary Wuf6118ca2018-11-28 13:00:26 -080040The ONAP OOM HEAT template deploys the entire ONAP platform. It spins
41up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM onto
42this cluster.
Gary Wucd47a012018-11-30 07:18:36 -080043
Gary Wu17797b42019-06-21 16:27:42 -070044- 1 Shared NFS server (called Rancher VM for legacy reasons)
45- 3 orch VMs for Kubernetes HA controller and etcd roles
46- 12 k8s VMs for Kubernetes HA worker roles
Gary Wu2985eb22018-11-28 11:17:10 -080047
mrichomme842d3222019-10-09 14:02:17 +020048See OOM documentation for details.
49
Gary Wu2985eb22018-11-28 11:17:10 -080050
51Quick Start
Gary Wuf6118ca2018-11-28 13:00:26 -080052~~~~~~~~~~~
Gary Wu2985eb22018-11-28 11:17:10 -080053
54Using the Wind River lab configuration as an example, here is what
55you need to do to deploy ONAP:
56
57::
58
Gary Wuf6118ca2018-11-28 13:00:26 -080059 git clone https://git.onap.org/integration
Gary Wu17797b42019-06-21 16:27:42 -070060 cd integration/deployment/heat/onap-rke/
Gary Wuf6118ca2018-11-28 13:00:26 -080061 source ./env/windriver/Integration-SB-00-openrc
62 ./scripts/deploy.sh ./env/windriver/onap-oom.env
Gary Wu2985eb22018-11-28 11:17:10 -080063
64
65Environment and RC files
66~~~~~~~~~~~~~~~~~~~~~~~~
67
68Before deploying ONAP to your own environment, it is necessary to
69customize the environment and RC files. You should make a copy of the
70sample RC and environment files shown above and customize the values
71for your specific OpenStack environments.
72
mrichomme842d3222019-10-09 14:02:17 +020073The environment file contains a block called integration_override_yaml.
74
75The content of this block will be used by OOM to overwrite some parts of its
76installation parameters used in the helm charts.
77
78This file may deal with:
79
80* Cloud adaptation (use the defined flavors, available images)
81* Proxies (apt, docker,..)
82* Pre-defined resources for use cases (networks, tenant references)
83* performance tuning (initialization timers)
84
85Performance tuning reflects the adaptation to the hardware at a given time.
86The lab may evolve and the timers shall follow.
87
88Be sure to customize the necessary values within this block to match your
Gary Wu2985eb22018-11-28 11:17:10 -080089OpenStack environment as well.
90
91**Notes on select parameters**
92
93::
Gary Wu2985eb22018-11-28 11:17:10 -080094
Gary Wuf6118ca2018-11-28 13:00:26 -080095 apt_proxy: 10.12.5.2:8000
96 docker_proxy: 10.12.5.2:5000
Gary Wu2985eb22018-11-28 11:17:10 -080097
Gary Wuf6118ca2018-11-28 13:00:26 -080098 rancher_vm_flavor: m1.large
99 k8s_vm_flavor: m1.xlarge
Gary Wu17797b42019-06-21 16:27:42 -0700100 etcd_vm_flavor: m1.medium # not currently used
Gary Wuf6118ca2018-11-28 13:00:26 -0800101 orch_vm_flavor: m1.medium
Gary Wu2985eb22018-11-28 11:17:10 -0800102
Gary Wuf6118ca2018-11-28 13:00:26 -0800103 key_name: onap_key
104
105 helm_deploy_delay: 2.5m
Gary Wu2985eb22018-11-28 11:17:10 -0800106
107It is recommended that you set up an apt proxy and a docker proxy
108local to your lab. If you do not wish to use such proxies, you can
109set the apt_proxy and docker_proxy parameters to the empty string "".
110
111rancher_vm_flavor needs to have 8 GB of RAM.
mrichomme842d3222019-10-09 14:02:17 +0200112k8s_vm_flavor needs to have at least 16 GB of RAM.
Gary Wu2985eb22018-11-28 11:17:10 -0800113orch_vm_flavor needs to have 4 GB of RAM.
Gary Wu2985eb22018-11-28 11:17:10 -0800114By default the template assumes that you have already imported a
115keypair named "onap_key" into your OpenStack environment. If the
116desired keypair has a different name, change the key_name parameter.
117
118The helm_deploy_delay parameter introduces a delay in-between the
Gary Wuf6118ca2018-11-28 13:00:26 -0800119deployments of each ONAP helm subchart to help alleviate system load or
Gary Wu2985eb22018-11-28 11:17:10 -0800120contention issues caused by trying to spin up too many pods
121simultaneously. The value of this parameter is passed to the Linux
122"sleep" command. Adjust this parameter based on the performance and
123load characteristics of your OpenStack environment.
124
Gary Wuf6118ca2018-11-28 13:00:26 -0800125
126Exploring the Rancher VM
127~~~~~~~~~~~~~~~~~~~~~~~~
128
129The Rancher VM that is spun up by this HEAT template serves the
130following key roles:
mrichommeefb859d2020-03-19 19:02:41 +0100131- Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent volumes
Gary Wuf6118ca2018-11-28 13:00:26 -0800132- git clones the oom repo into /root/oom
133- git clones the integration repo into /root/integration
134- Creates the helm override file at /root/integration-override.yaml
135- Deploys ONAP using helm and OOM