blob: 4426275f20749a17b4529b7ca34ee7c93a02910a [file] [log] [blame]
Gary Wuf6118ca2018-11-28 13:00:26 -08001.. _onap-oom-heat:
2
Gary Wu2985eb22018-11-28 11:17:10 -08003ONAP OOM HEAT Template
Gary Wuf6118ca2018-11-28 13:00:26 -08004----------------------
5
Gary Wu2985eb22018-11-28 11:17:10 -08006
7Source files
8~~~~~~~~~~~~
9
Gary Wu17797b42019-06-21 16:27:42 -070010- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-rke?h=dublin
11- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/Integration-SB-00-openrc?h=dublin
12- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-rke/env/windriver/onap-oom.env?h=dublin
13- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-rke/scripts/deploy.sh?h=dublin
Gary Wu2985eb22018-11-28 11:17:10 -080014
Gary Wuf6118ca2018-11-28 13:00:26 -080015
Gary Wu2985eb22018-11-28 11:17:10 -080016Description
17~~~~~~~~~~~
18
19The ONAP Integration Project provides a sample HEAT template that
20fully automates the deployment of ONAP using OOM as described in
Gary Wuf6118ca2018-11-28 13:00:26 -080021:ref:`ONAP Operations Manager (OOM) over Kubernetes<installing-onap>`.
Gary Wu2985eb22018-11-28 11:17:10 -080022
Gary Wuf6118ca2018-11-28 13:00:26 -080023The ONAP OOM HEAT template deploys the entire ONAP platform. It spins
24up an HA-enabled Kubernetes cluster, and deploys ONAP using OOM onto
25this cluster.
Gary Wucd47a012018-11-30 07:18:36 -080026
Gary Wu17797b42019-06-21 16:27:42 -070027- 1 Shared NFS server (called Rancher VM for legacy reasons)
28- 3 orch VMs for Kubernetes HA controller and etcd roles
29- 12 k8s VMs for Kubernetes HA worker roles
Gary Wu2985eb22018-11-28 11:17:10 -080030
31
32Quick Start
Gary Wuf6118ca2018-11-28 13:00:26 -080033~~~~~~~~~~~
Gary Wu2985eb22018-11-28 11:17:10 -080034
35Using the Wind River lab configuration as an example, here is what
36you need to do to deploy ONAP:
37
38::
39
Gary Wuf6118ca2018-11-28 13:00:26 -080040 git clone https://git.onap.org/integration
Gary Wu17797b42019-06-21 16:27:42 -070041 cd integration/deployment/heat/onap-rke/
Gary Wuf6118ca2018-11-28 13:00:26 -080042 source ./env/windriver/Integration-SB-00-openrc
43 ./scripts/deploy.sh ./env/windriver/onap-oom.env
Gary Wu2985eb22018-11-28 11:17:10 -080044
45
46Environment and RC files
47~~~~~~~~~~~~~~~~~~~~~~~~
48
49Before deploying ONAP to your own environment, it is necessary to
50customize the environment and RC files. You should make a copy of the
51sample RC and environment files shown above and customize the values
52for your specific OpenStack environments.
53
54The environment file contains a block called
55integration_override_yaml. The content of this block will be created
56as the file integration_override.yaml in the deployed Rancher VM, and
57used as the helm override files during the OOM deployment. Be sure to
58customize the necessary values within this block to match your
59OpenStack environment as well.
60
61**Notes on select parameters**
62
63::
Gary Wu2985eb22018-11-28 11:17:10 -080064
Gary Wuf6118ca2018-11-28 13:00:26 -080065 apt_proxy: 10.12.5.2:8000
66 docker_proxy: 10.12.5.2:5000
Gary Wu2985eb22018-11-28 11:17:10 -080067
Gary Wuf6118ca2018-11-28 13:00:26 -080068 rancher_vm_flavor: m1.large
69 k8s_vm_flavor: m1.xlarge
Gary Wu17797b42019-06-21 16:27:42 -070070 etcd_vm_flavor: m1.medium # not currently used
Gary Wuf6118ca2018-11-28 13:00:26 -080071 orch_vm_flavor: m1.medium
Gary Wu2985eb22018-11-28 11:17:10 -080072
Gary Wuf6118ca2018-11-28 13:00:26 -080073 key_name: onap_key
74
75 helm_deploy_delay: 2.5m
Gary Wu2985eb22018-11-28 11:17:10 -080076
77It is recommended that you set up an apt proxy and a docker proxy
78local to your lab. If you do not wish to use such proxies, you can
79set the apt_proxy and docker_proxy parameters to the empty string "".
80
81rancher_vm_flavor needs to have 8 GB of RAM.
82k8s_vm_flavor needs to have 16 GB of RAM.
Gary Wu2985eb22018-11-28 11:17:10 -080083orch_vm_flavor needs to have 4 GB of RAM.
84
85By default the template assumes that you have already imported a
86keypair named "onap_key" into your OpenStack environment. If the
87desired keypair has a different name, change the key_name parameter.
88
89The helm_deploy_delay parameter introduces a delay in-between the
Gary Wuf6118ca2018-11-28 13:00:26 -080090deployments of each ONAP helm subchart to help alleviate system load or
Gary Wu2985eb22018-11-28 11:17:10 -080091contention issues caused by trying to spin up too many pods
92simultaneously. The value of this parameter is passed to the Linux
93"sleep" command. Adjust this parameter based on the performance and
94load characteristics of your OpenStack environment.
95
Gary Wuf6118ca2018-11-28 13:00:26 -080096
97Exploring the Rancher VM
98~~~~~~~~~~~~~~~~~~~~~~~~
99
100The Rancher VM that is spun up by this HEAT template serves the
101following key roles:
Gary Wuf6118ca2018-11-28 13:00:26 -0800102- Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent volumes
103- git clones the oom repo into /root/oom
104- git clones the integration repo into /root/integration
105- Creates the helm override file at /root/integration-override.yaml
106- Deploys ONAP using helm and OOM
107
108
109
110.. _deploy-updated-manifest:
111
112Deploying an Updated Docker Manifest
113~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
114
115Some late changes in the ONAP docker images did not make it in time
Gary Wu17797b42019-06-21 16:27:42 -0700116for the Dublin release. Depending on the Use Case you are trying
Gary Wuf6118ca2018-11-28 13:00:26 -0800117deploy, you may need to update the docker image manifest with certain
Gary Wu17797b42019-06-21 16:27:42 -0700118newer docker image versions than what was shipped with ONAP Dublin
Gary Wuf6118ca2018-11-28 13:00:26 -0800119release.
120
121The ONAP integration repo contains a script that will apply the docker
122versions specified in a given manifest into the OOM helm chart
123definitions.
124
125To apply an updated manifest (on the Rancher VM):
126
127::
128
129 cd /root/integration/version-manifest/src/main/resources
130 cp docker-manifest.csv docker-manifest-custom.csv
131
132 # customize docker-manifest-custom.csv per your requirements
133
134 ../scripts/update-oom-image-versions.sh ./docker-manifest-custom.csv /root/oom/
135
136 cd /root/oom/kubernetes/
137 git diff # verify that the desired docker image changes are applied successfully
138 make all # recompile the helm charts
139
140After that you can update or redeploy ONAP OOM as described here:
141
142.. toctree::
143 :maxdepth: 1
144 :titlesonly:
145
146 ../../../../submodules/oom.git/docs/oom_quickstart_guide.rst