update link to upper-constraints.txt
[integration.git] / docs / onap-oom-heat.rst
index a49daa3..13e6ca6 100644 (file)
@@ -1,42 +1,65 @@
-ONAP OOM HEAT Template
-------------------
+.. _integration-installation:
+
+:orphan:
+
+Integration Environment Installation
+-------------------------------------
+
+ONAP is deployed on top of kubernetes through the OOM installer.
+Kubernetes can be installed on bare metal or on different environments such as
+OpenStack (private or public cloud), Azure, AWS,..
+
+The integration team maintains a heat template to install ONAP on OpenStack.
+This template creates the needed resources (VMs, networks, security groups,
+...) in order to support a HA Kubernetes then a full ONAP installation.
+
+Sample OpenStack RC (credential) files environment files or deployment scripts
+are provided, they correspond to files used on windriver environment.
+This environment is used by the integration team to validate the installation,
+perform tests and troubleshoot.
+
+If you intend to deploy your own environment, they can be used as reference but
+must be adapted according to your context.
 
 Source files
 ~~~~~~~~~~~~
 
-- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-oom?h=casablanca
-- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-oom/env/windriver/Integration-SB-00-openrc?h=casablanca
-- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-oom/env/windriver/onap-oom.env?h=casablanca
-- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-oom/scripts/deploy.sh?h=casablanca
+- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-rke
+- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/Integration-SB-00-openrc
+- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/onap-oom.env
+- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-rke/scripts/deploy.sh
 
-Description
-~~~~~~~~~~~
+
+Heat Template Description
+~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The ONAP Integration Project provides a sample HEAT template that
 fully automates the deployment of ONAP using OOM as described in
-:ref:`ONAP Operations Manager (OOM) over Kubernetes`.
+OOM documentation.
+
+The ONAP OOM HEAT template deploys the entire ONAP platform.  It spins
+up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM onto
+this cluster.
 
-The ONAP OOM HEAT template deploys up the entire ONAP platform.  It
-spins up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM
-onto this cluster.
-- 1 Rancher VM that also serves as a shared NFS server
-- 3 etcd VMs for the Kubernetes HA etcd plane
-- 2 orch VMs for the Kubernetes HA orchestration plane
-- 12 k8s VMs for the Kubernetes HA compute hosts
+- 1 Shared NFS server (called Rancher VM for legacy reasons)
+- 3 orch VMs for Kubernetes HA controller and etcd roles
+- 12 k8s VMs for Kubernetes HA worker roles
+
+See OOM documentation for details.
 
 
 Quick Start
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~
 
 Using the Wind River lab configuration as an example, here is what
 you need to do to deploy ONAP:
 
 ::
 
- git clone https://git.onap.org/integration
cd integration/deployment/heat/onap-oom/
- source ./env/windriver/Integration-SB-00-openrc
- ./scripts/deploy.sh ./env/windriver/onap-oom.env
  git clone https://git.onap.org/integration
  cd integration/deployment/heat/onap-rke/
  source ./env/windriver/Integration-SB-00-openrc
  ./scripts/deploy.sh ./env/windriver/onap-oom.env
 
 
 Environment and RC files
@@ -47,45 +70,66 @@ customize the environment and RC files.  You should make a copy of the
 sample RC and environment files shown above and customize the values
 for your specific OpenStack environments.
 
-The environment file contains a block called
-integration_override_yaml.  The content of this block will be created
-as the file integration_override.yaml in the deployed Rancher VM, and
-used as the helm override files during the OOM deployment.  Be sure to
-customize the necessary values within this block to match your
+The environment file contains a block called integration_override_yaml.
+
+The content of this block will be used by OOM to overwrite some parts of its
+installation parameters used in the helm charts.
+
+This file may deal with:
+
+* Cloud adaptation (use the defined flavors, available images)
+* Proxies (apt, docker,..)
+* Pre-defined resources for use cases (networks, tenant references)
+* performance tuning (initialization timers)
+
+Performance tuning reflects the adaptation to the hardware at a given time.
+The lab may evolve and the timers shall follow.
+
+Be sure to customize the necessary values within this block to match your
 OpenStack environment as well.
 
 **Notes on select parameters**
 
 ::
- apt_proxy: 10.12.5.2:8000
- docker_proxy: 10.12.5.2:5000
 
- rancher_vm_flavor: m1.large
- k8s_vm_flavor: m1.xlarge
- etcd_vm_flavor: m1.medium
- orch_vm_flavor: m1.medium
+   apt_proxy: 10.12.5.2:8000
+   docker_proxy: 10.12.5.2:5000
 
- key_name: onap_key
+   rancher_vm_flavor: m1.large
+   k8s_vm_flavor: m1.xlarge
+   etcd_vm_flavor: m1.medium # not currently used
+   orch_vm_flavor: m1.medium
 
- helm_deploy_delay: 2.5m
+   key_name: onap_key
+
+   helm_deploy_delay: 2.5m
 
 It is recommended that you set up an apt proxy and a docker proxy
 local to your lab.  If you do not wish to use such proxies, you can
 set the apt_proxy and docker_proxy parameters to the empty string "".
 
 rancher_vm_flavor needs to have 8 GB of RAM.
-k8s_vm_flavor needs to have 16 GB of RAM.
-etcd_vm_flavor needs to have 4 GB of RAM.
+k8s_vm_flavor needs to have at least 16 GB of RAM.
 orch_vm_flavor needs to have 4 GB of RAM.
-
 By default the template assumes that you have already imported a
 keypair named "onap_key" into your OpenStack environment.  If the
 desired keypair has a different name, change the key_name parameter.
 
 The helm_deploy_delay parameter introduces a delay in-between the
-deployment of each ONAP helm subchart to help alleviate system load or
+deployments of each ONAP helm subchart to help alleviate system load or
 contention issues caused by trying to spin up too many pods
 simultaneously.  The value of this parameter is passed to the Linux
 "sleep" command.  Adjust this parameter based on the performance and
 load characteristics of your OpenStack environment.
 
+
+Exploring the Rancher VM
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+The Rancher VM that is spun up by this HEAT template serves the
+following key roles:
+- Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent volumes
+- git clones the oom repo into /root/oom
+- git clones the integration repo into /root/integration
+- Creates the helm override file at /root/integration-override.yaml
+- Deploys ONAP using helm and OOM