Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 1 | .. _onap-oom-heat: |
| 2 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 3 | Integration Environement Installation |
| 4 | ------------------------------------- |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 5 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 6 | ONAP is deployed on top of kubernetes through the OOM installer. |
| 7 | Kubernetes can be installed on bare metal or on different environments such as |
| 8 | OpenStack (private or public cloud), Azure, AWS,.. |
| 9 | |
| 10 | The integration team maintains a heat template to install ONAP on OpenStack. |
| 11 | This template creates the needed resources (VMs, networks, security groups, |
| 12 | ...) in order to support a HA Kubernetes then a full ONAP installation. |
| 13 | |
| 14 | Sample OpenStack RC (credential) files environment files or deployment scripts |
| 15 | are provided, they correspond to files used on windriver environment. |
| 16 | This environment is used by the integration team to validate the installation, |
| 17 | perform tests and troubleshoot. |
| 18 | |
| 19 | If you intend to deploy your own environement, they can be used as reference but |
| 20 | must be adapted according to your context. |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 21 | |
| 22 | Source files |
| 23 | ~~~~~~~~~~~~ |
| 24 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 25 | - 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 Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 29 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 30 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 31 | Heat Template Description |
| 32 | ~~~~~~~~~~~~~~~~~~~~~~~~~ |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 33 | |
| 34 | The ONAP Integration Project provides a sample HEAT template that |
| 35 | fully automates the deployment of ONAP using OOM as described in |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 36 | :ref:`ONAP Operations Manager (OOM) over Kubernetes<installing-onap>`. |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 37 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 38 | The ONAP OOM HEAT template deploys the entire ONAP platform. It spins |
| 39 | up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM onto |
| 40 | this cluster. |
Gary Wu | cd47a01 | 2018-11-30 07:18:36 -0800 | [diff] [blame] | 41 | |
Gary Wu | 17797b4 | 2019-06-21 16:27:42 -0700 | [diff] [blame] | 42 | - 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 Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 45 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 46 | See OOM documentation for details. |
| 47 | |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 48 | |
| 49 | Quick Start |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 50 | ~~~~~~~~~~~ |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 51 | |
| 52 | Using the Wind River lab configuration as an example, here is what |
| 53 | you need to do to deploy ONAP: |
| 54 | |
| 55 | :: |
| 56 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 57 | git clone https://git.onap.org/integration |
Gary Wu | 17797b4 | 2019-06-21 16:27:42 -0700 | [diff] [blame] | 58 | cd integration/deployment/heat/onap-rke/ |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 59 | source ./env/windriver/Integration-SB-00-openrc |
| 60 | ./scripts/deploy.sh ./env/windriver/onap-oom.env |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 61 | |
| 62 | |
| 63 | Environment and RC files |
| 64 | ~~~~~~~~~~~~~~~~~~~~~~~~ |
| 65 | |
| 66 | Before deploying ONAP to your own environment, it is necessary to |
| 67 | customize the environment and RC files. You should make a copy of the |
| 68 | sample RC and environment files shown above and customize the values |
| 69 | for your specific OpenStack environments. |
| 70 | |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 71 | The environment file contains a block called integration_override_yaml. |
| 72 | |
| 73 | The content of this block will be used by OOM to overwrite some parts of its |
| 74 | installation parameters used in the helm charts. |
| 75 | |
| 76 | This 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 | |
| 83 | Performance tuning reflects the adaptation to the hardware at a given time. |
| 84 | The lab may evolve and the timers shall follow. |
| 85 | |
| 86 | Be sure to customize the necessary values within this block to match your |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 87 | OpenStack environment as well. |
| 88 | |
| 89 | **Notes on select parameters** |
| 90 | |
| 91 | :: |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 92 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 93 | apt_proxy: 10.12.5.2:8000 |
| 94 | docker_proxy: 10.12.5.2:5000 |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 95 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 96 | rancher_vm_flavor: m1.large |
| 97 | k8s_vm_flavor: m1.xlarge |
Gary Wu | 17797b4 | 2019-06-21 16:27:42 -0700 | [diff] [blame] | 98 | etcd_vm_flavor: m1.medium # not currently used |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 99 | orch_vm_flavor: m1.medium |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 100 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 101 | key_name: onap_key |
| 102 | |
| 103 | helm_deploy_delay: 2.5m |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 104 | |
| 105 | It is recommended that you set up an apt proxy and a docker proxy |
| 106 | local to your lab. If you do not wish to use such proxies, you can |
| 107 | set the apt_proxy and docker_proxy parameters to the empty string "". |
| 108 | |
| 109 | rancher_vm_flavor needs to have 8 GB of RAM. |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 110 | k8s_vm_flavor needs to have at least 16 GB of RAM. |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 111 | orch_vm_flavor needs to have 4 GB of RAM. |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 112 | By default the template assumes that you have already imported a |
| 113 | keypair named "onap_key" into your OpenStack environment. If the |
| 114 | desired keypair has a different name, change the key_name parameter. |
| 115 | |
| 116 | The helm_deploy_delay parameter introduces a delay in-between the |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 117 | deployments of each ONAP helm subchart to help alleviate system load or |
Gary Wu | 2985eb2 | 2018-11-28 11:17:10 -0800 | [diff] [blame] | 118 | contention issues caused by trying to spin up too many pods |
| 119 | simultaneously. The value of this parameter is passed to the Linux |
| 120 | "sleep" command. Adjust this parameter based on the performance and |
| 121 | load characteristics of your OpenStack environment. |
| 122 | |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 123 | |
| 124 | Exploring the Rancher VM |
| 125 | ~~~~~~~~~~~~~~~~~~~~~~~~ |
| 126 | |
| 127 | The Rancher VM that is spun up by this HEAT template serves the |
| 128 | following key roles: |
mrichomme | 842d322 | 2019-10-09 14:02:17 +0200 | [diff] [blame] | 129 | - Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent |
| 130 | volumes |
Gary Wu | f6118ca | 2018-11-28 13:00:26 -0800 | [diff] [blame] | 131 | - 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 |