blob: cc9ceb7ba94acb045e6802f096903c7f8b2796f9 [file] [log] [blame]
Gary Wu35455562018-11-28 13:00:26 -08001.. _onap-oom-heat:
2
Gary Wue6b9ef42018-11-28 11:17:10 -08003ONAP OOM HEAT Template
Gary Wu35455562018-11-28 13:00:26 -08004----------------------
5
Gary Wue6b9ef42018-11-28 11:17:10 -08006
7Source files
8~~~~~~~~~~~~
9
10- HEAT template files: https://git.onap.org/integration/tree/deployment/heat/onap-oom?h=casablanca
11- Sample OpenStack RC file: https://git.onap.org/integration/tree/deployment/heat/onap-oom/env/windriver/Integration-SB-00-openrc?h=casablanca
12- Sample environment file: https://git.onap.org/integration/tree/deployment/heat/onap-oom/env/windriver/onap-oom.env?h=casablanca
13- Deployment script: https://git.onap.org/integration/tree/deployment/heat/onap-oom/scripts/deploy.sh?h=casablanca
14
Gary Wu35455562018-11-28 13:00:26 -080015
Gary Wue6b9ef42018-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 Wu35455562018-11-28 13:00:26 -080021:ref:`ONAP Operations Manager (OOM) over Kubernetes<installing-onap>`.
Gary Wue6b9ef42018-11-28 11:17:10 -080022
Gary Wu35455562018-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 Wue6b9ef42018-11-28 11:17:10 -080026- 1 Rancher VM that also serves as a shared NFS server
27- 3 etcd VMs for the Kubernetes HA etcd plane
28- 2 orch VMs for the Kubernetes HA orchestration plane
29- 12 k8s VMs for the Kubernetes HA compute hosts
30
31
32Quick Start
Gary Wu35455562018-11-28 13:00:26 -080033~~~~~~~~~~~
Gary Wue6b9ef42018-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 Wu35455562018-11-28 13:00:26 -080040 git clone https://git.onap.org/integration
41 cd integration/deployment/heat/onap-oom/
42 source ./env/windriver/Integration-SB-00-openrc
43 ./scripts/deploy.sh ./env/windriver/onap-oom.env
Gary Wue6b9ef42018-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 Wue6b9ef42018-11-28 11:17:10 -080064
Gary Wu35455562018-11-28 13:00:26 -080065 apt_proxy: 10.12.5.2:8000
66 docker_proxy: 10.12.5.2:5000
Gary Wue6b9ef42018-11-28 11:17:10 -080067
Gary Wu35455562018-11-28 13:00:26 -080068 rancher_vm_flavor: m1.large
69 k8s_vm_flavor: m1.xlarge
70 etcd_vm_flavor: m1.medium
71 orch_vm_flavor: m1.medium
Gary Wue6b9ef42018-11-28 11:17:10 -080072
Gary Wu35455562018-11-28 13:00:26 -080073 key_name: onap_key
74
75 helm_deploy_delay: 2.5m
Gary Wue6b9ef42018-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.
83etcd_vm_flavor needs to have 4 GB of RAM.
84orch_vm_flavor needs to have 4 GB of RAM.
85
86By default the template assumes that you have already imported a
87keypair named "onap_key" into your OpenStack environment. If the
88desired keypair has a different name, change the key_name parameter.
89
90The helm_deploy_delay parameter introduces a delay in-between the
Gary Wu35455562018-11-28 13:00:26 -080091deployments of each ONAP helm subchart to help alleviate system load or
Gary Wue6b9ef42018-11-28 11:17:10 -080092contention issues caused by trying to spin up too many pods
93simultaneously. The value of this parameter is passed to the Linux
94"sleep" command. Adjust this parameter based on the performance and
95load characteristics of your OpenStack environment.
96
Gary Wu35455562018-11-28 13:00:26 -080097
98Exploring the Rancher VM
99~~~~~~~~~~~~~~~~~~~~~~~~
100
101The Rancher VM that is spun up by this HEAT template serves the
102following key roles:
103- Installaion of the Rancher server
104- Hosts the /dockerdata-nfs/ NFS export shared by all the k8s VMs for persistent volumes
105- git clones the oom repo into /root/oom
106- git clones the integration repo into /root/integration
107- Creates the helm override file at /root/integration-override.yaml
108- Deploys ONAP using helm and OOM
109
110
111
112.. _deploy-updated-manifest:
113
114Deploying an Updated Docker Manifest
115~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
116
117Some late changes in the ONAP docker images did not make it in time
118for the Casablanca release. Depending on the Use Case you are trying
119deploy, you may need to update the docker image manifest with certain
120newer docker image versions than what was shipped with ONAP Casablanca
121release.
122
123The ONAP integration repo contains a script that will apply the docker
124versions specified in a given manifest into the OOM helm chart
125definitions.
126
127To apply an updated manifest (on the Rancher VM):
128
129::
130
131 cd /root/integration/version-manifest/src/main/resources
132 cp docker-manifest.csv docker-manifest-custom.csv
133
134 # customize docker-manifest-custom.csv per your requirements
135
136 ../scripts/update-oom-image-versions.sh ./docker-manifest-custom.csv /root/oom/
137
138 cd /root/oom/kubernetes/
139 git diff # verify that the desired docker image changes are applied successfully
140 make all # recompile the helm charts
141
142After that you can update or redeploy ONAP OOM as described here:
143
144.. toctree::
145 :maxdepth: 1
146 :titlesonly:
147
148 ../../../../submodules/oom.git/docs/oom_quickstart_guide.rst