blob: bb9c1abfff4f245a3a40131d89190796bc4d5c50 [file] [log] [blame]
Gary Wuf6118ca2018-11-28 13:00:26 -08001.. _onap-oom-heat:
2
mrichomme842d3222019-10-09 14:02:17 +02003Integration Environement Installation
4-------------------------------------
Gary Wuf6118ca2018-11-28 13:00:26 -08005
mrichomme842d3222019-10-09 14:02:17 +02006ONAP is deployed on top of kubernetes through the OOM installer.
7Kubernetes can be installed on bare metal or on different environments such as
8OpenStack (private or public cloud), Azure, AWS,..
9
10The integration team maintains a heat template to install ONAP on OpenStack.
11This template creates the needed resources (VMs, networks, security groups,
12...) in order to support a HA Kubernetes then a full ONAP installation.
13
14Sample OpenStack RC (credential) files environment files or deployment scripts
15are provided, they correspond to files used on windriver environment.
16This environment is used by the integration team to validate the installation,
17perform tests and troubleshoot.
18
19If you intend to deploy your own environement, they can be used as reference but
20must be adapted according to your context.
Gary Wu2985eb22018-11-28 11:17:10 -080021
22Source files
23~~~~~~~~~~~~
24
mrichomme842d3222019-10-09 14:02:17 +020025- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-rke?h=elalto
26- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/Integration-SB-00-openrc?h=elalto
27- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/onap-oom.env?h=elatlo
28- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-rke/scripts/deploy.sh?h=elalto
Gary Wu2985eb22018-11-28 11:17:10 -080029
Gary Wuf6118ca2018-11-28 13:00:26 -080030
mrichomme842d3222019-10-09 14:02:17 +020031Heat Template Description
32~~~~~~~~~~~~~~~~~~~~~~~~~
Gary Wu2985eb22018-11-28 11:17:10 -080033
34The ONAP Integration Project provides a sample HEAT template that
35fully automates the deployment of ONAP using OOM as described in
Gary Wuf6118ca2018-11-28 13:00:26 -080036:ref:`ONAP Operations Manager (OOM) over Kubernetes<installing-onap>`.
Gary Wu2985eb22018-11-28 11:17:10 -080037
Gary Wuf6118ca2018-11-28 13:00:26 -080038The ONAP OOM HEAT template deploys the entire ONAP platform. It spins
39up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM onto
40this cluster.
Gary Wucd47a012018-11-30 07:18:36 -080041
Gary Wu17797b42019-06-21 16:27:42 -070042- 1 Shared NFS server (called Rancher VM for legacy reasons)
43- 3 orch VMs for Kubernetes HA controller and etcd roles
44- 12 k8s VMs for Kubernetes HA worker roles
Gary Wu2985eb22018-11-28 11:17:10 -080045
mrichomme842d3222019-10-09 14:02:17 +020046See OOM documentation for details.
47
Gary Wu2985eb22018-11-28 11:17:10 -080048
49Quick Start
Gary Wuf6118ca2018-11-28 13:00:26 -080050~~~~~~~~~~~
Gary Wu2985eb22018-11-28 11:17:10 -080051
52Using the Wind River lab configuration as an example, here is what
53you need to do to deploy ONAP:
54
55::
56
Gary Wuf6118ca2018-11-28 13:00:26 -080057 git clone https://git.onap.org/integration
Gary Wu17797b42019-06-21 16:27:42 -070058 cd integration/deployment/heat/onap-rke/
Gary Wuf6118ca2018-11-28 13:00:26 -080059 source ./env/windriver/Integration-SB-00-openrc
60 ./scripts/deploy.sh ./env/windriver/onap-oom.env
Gary Wu2985eb22018-11-28 11:17:10 -080061
62
63Environment and RC files
64~~~~~~~~~~~~~~~~~~~~~~~~
65
66Before deploying ONAP to your own environment, it is necessary to
67customize the environment and RC files. You should make a copy of the
68sample RC and environment files shown above and customize the values
69for your specific OpenStack environments.
70
mrichomme842d3222019-10-09 14:02:17 +020071The environment file contains a block called integration_override_yaml.
72
73The content of this block will be used by OOM to overwrite some parts of its
74installation parameters used in the helm charts.
75
76This file may deal with:
77
78* Cloud adaptation (use the defined flavors, available images)
79* Proxies (apt, docker,..)
80* Pre-defined resources for use cases (networks, tenant references)
81* performance tuning (initialization timers)
82
83Performance tuning reflects the adaptation to the hardware at a given time.
84The lab may evolve and the timers shall follow.
85
86Be sure to customize the necessary values within this block to match your
Gary Wu2985eb22018-11-28 11:17:10 -080087OpenStack environment as well.
88
89**Notes on select parameters**
90
91::
Gary Wu2985eb22018-11-28 11:17:10 -080092
Gary Wuf6118ca2018-11-28 13:00:26 -080093 apt_proxy: 10.12.5.2:8000
94 docker_proxy: 10.12.5.2:5000
Gary Wu2985eb22018-11-28 11:17:10 -080095
Gary Wuf6118ca2018-11-28 13:00:26 -080096 rancher_vm_flavor: m1.large
97 k8s_vm_flavor: m1.xlarge
Gary Wu17797b42019-06-21 16:27:42 -070098 etcd_vm_flavor: m1.medium # not currently used
Gary Wuf6118ca2018-11-28 13:00:26 -080099 orch_vm_flavor: m1.medium
Gary Wu2985eb22018-11-28 11:17:10 -0800100
Gary Wuf6118ca2018-11-28 13:00:26 -0800101 key_name: onap_key
102
103 helm_deploy_delay: 2.5m
Gary Wu2985eb22018-11-28 11:17:10 -0800104
105It is recommended that you set up an apt proxy and a docker proxy
106local to your lab. If you do not wish to use such proxies, you can
107set the apt_proxy and docker_proxy parameters to the empty string "".
108
109rancher_vm_flavor needs to have 8 GB of RAM.
mrichomme842d3222019-10-09 14:02:17 +0200110k8s_vm_flavor needs to have at least 16 GB of RAM.
Gary Wu2985eb22018-11-28 11:17:10 -0800111orch_vm_flavor needs to have 4 GB of RAM.
Gary Wu2985eb22018-11-28 11:17:10 -0800112By default the template assumes that you have already imported a
113keypair named "onap_key" into your OpenStack environment. If the
114desired keypair has a different name, change the key_name parameter.
115
116The helm_deploy_delay parameter introduces a delay in-between the
Gary Wuf6118ca2018-11-28 13:00:26 -0800117deployments of each ONAP helm subchart to help alleviate system load or
Gary Wu2985eb22018-11-28 11:17:10 -0800118contention issues caused by trying to spin up too many pods
119simultaneously. The value of this parameter is passed to the Linux
120"sleep" command. Adjust this parameter based on the performance and
121load characteristics of your OpenStack environment.
122
Gary Wuf6118ca2018-11-28 13:00:26 -0800123
124Exploring the Rancher VM
125~~~~~~~~~~~~~~~~~~~~~~~~
126
127The Rancher VM that is spun up by this HEAT template serves the
128following key roles:
mrichomme842d3222019-10-09 14:02:17 +0200129- Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent
130 volumes
Gary Wuf6118ca2018-11-28 13:00:26 -0800131- git clones the oom repo into /root/oom
132- git clones the integration repo into /root/integration
133- Creates the helm override file at /root/integration-override.yaml
134- Deploys ONAP using helm and OOM