X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=docs%2Foom_user_guide.rst;h=0835a93c75eff48faa192caf07080ff74d1e825f;hb=1660a8c5518c45b8a424b15b8c63b71ae0b39c69;hp=3212fd319db2b8d40bafb6be5329a7daf16c61ac;hpb=47b8de5e8160d367f70115bb0c8caa758e60f3f1;p=oom.git diff --git a/docs/oom_user_guide.rst b/docs/oom_user_guide.rst index 3212fd319d..0835a93c75 100644 --- a/docs/oom_user_guide.rst +++ b/docs/oom_user_guide.rst @@ -1,7 +1,7 @@ .. This work is licensed under a Creative Commons Attribution 4.0 .. International License. .. http://creativecommons.org/licenses/by/4.0 -.. Copyright 2018-2020 Amdocs, Bell Canada, Orange, Samsung +.. Copyright 2018-2021 Amdocs, Bell Canada, Orange, Samsung, Nordix Foundation .. _oom_user_guide: .. Links @@ -15,8 +15,8 @@ .. _Kubernetes LoadBalancer: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer .. _user-guide-label: -OOM User Guide helm3 (experimental) -################################### +OOM User Guide +############## The ONAP Operations Manager (OOM) provide the ability to manage the entire life-cycle of an ONAP installation, from the initial deployment to final @@ -27,7 +27,7 @@ This guide provides many examples of Helm command line operations. For a complete description of these commands please refer to the `Helm Documentation`_. -.. figure:: oomLogoV2-medium.png +.. figure:: images/oom_logo/oomLogoV2-medium.png :align: right The following sections describe the life-cycle operations: @@ -41,7 +41,7 @@ The following sections describe the life-cycle operations: impact - Delete_ - cleanup individual containers or entire deployments -.. figure:: oomLogoV2-Deploy.png +.. figure:: images/oom_logo/oomLogoV2-Deploy.png :align: right Deploy @@ -55,7 +55,7 @@ ONAP with a few simple commands. Pre-requisites -------------- -Your environment must have the Kubernetes `kubectl` with Cert-Manager +Your environment must have the Kubernetes `kubectl` with Strimzi Apache Kafka, Cert-Manager and Helm setup as a one time activity. Install Kubectl @@ -64,7 +64,7 @@ Enter the following to install kubectl (on Ubuntu, there are slight differences on other O/Ss), the Kubernetes command line interface used to manage a Kubernetes cluster:: - > curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.11/bin/linux/amd64/kubectl + > curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.19.11/bin/linux/amd64/kubectl > chmod +x ./kubectl > sudo mv ./kubectl /usr/local/bin/kubectl > mkdir ~/.kube @@ -78,24 +78,29 @@ Verify that the Kubernetes config is correct:: At this point you should see Kubernetes pods running. -Install Cert-Manager -~~~~~~~~~~~~~~~~~~~~ -Details on how to install Cert-Manager can be found -:doc:`here `. - Install Helm ~~~~~~~~~~~~ Helm is used by OOM for package and configuration management. To install Helm, enter the following:: - > wget https://get.helm.sh/helm-v3.5.2-linux-amd64.tar.gz - > tar -zxvf helm-v3.5.2-linux-amd64.tar.gz + > wget https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz + > tar -zxvf helm-v3.6.3-linux-amd64.tar.gz > sudo mv linux-amd64/helm /usr/local/bin/helm Verify the Helm version with:: > helm version +Install Strimzi Apache Kafka Operator +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Details on how to install Strimzi Apache Kafka can be found +:doc:`here `. + +Install Cert-Manager +~~~~~~~~~~~~~~~~~~~~ +Details on how to install Cert-Manager can be found +:doc:`here `. + Install the Helm Repo --------------------- Once kubectl and Helm are setup, one needs to setup a local Helm server to @@ -118,7 +123,7 @@ stable which should be removed to avoid confusion:: To prepare your system for an installation of ONAP, you'll need to:: - > git clone -b guilin --recurse-submodules -j2 http://gerrit.onap.org/r/oom + > git clone -b jakarta --recurse-submodules -j2 http://gerrit.onap.org/r/oom > cd oom/kubernetes @@ -156,12 +161,12 @@ system, and looks for matches:: > helm search repo local NAME VERSION DESCRIPTION - local/appc 2.0.0 Application Controller - local/clamp 2.0.0 ONAP Clamp - local/common 2.0.0 Common templates for inclusion in other charts - local/onap 2.0.0 Open Network Automation Platform (ONAP) - local/robot 2.0.0 A helm Chart for kubernetes-ONAP Robot - local/so 2.0.0 ONAP Service Orchestrator + local/appc 10.0.0 Application Controller + local/clamp 10.0.0 ONAP Clamp + local/common 10.0.0 Common templates for inclusion in other charts + local/onap 10.0.0 Open Network Automation Platform (ONAP) + local/robot 10.0.0 A helm Chart for kubernetes-ONAP Robot + local/so 10.0.0 ONAP Service Orchestrator In any case, setup of the Helm repository is a one time activity. @@ -204,7 +209,7 @@ deployment:: To install a specific version of a single ONAP component (`so` in this example) with the given release name enter:: - > helm deploy so onap/so --version 8.0.0 --set global.masterPassword=password --set global.flavor=unlimited --namespace onap + > helm deploy so onap/so --version 10.0.0 --set global.masterPassword=password --set global.flavor=unlimited --namespace onap .. note:: The dependent components should be installed for component being installed @@ -216,7 +221,7 @@ To display details of a specific resource or group of resources type:: where the pod identifier refers to the auto-generated pod identifier. -.. figure:: oomLogoV2-Configure.png +.. figure:: images/oom_logo/oomLogoV2-Configure.png :align: right Configure @@ -244,9 +249,9 @@ precedence of all. oValues [label="values.yaml"] demo [label="onap-demo.yaml"] prod [label="onap-production.yaml"] - oReq [label="requirements.yaml"] + oReq [label="Chart.yaml"] soValues [label="values.yaml"] - soReq [label="requirements.yaml"] + soReq [label="Chart.yaml"] mdValues [label="values.yaml"] } { @@ -316,30 +321,26 @@ To deploy ONAP with this environment file, enter:: > helm deploy local/onap -n onap -f onap/resources/environments/onap-production.yaml --set global.masterPassword=password -.. include:: environments_onap_demo.yaml +.. include:: yaml/environments_onap_demo.yaml :code: yaml -When deploying all of ONAP a requirements.yaml file control which and what -version of the ONAP components are included. Here is an excerpt of this -file: +When deploying all of ONAP, the dependencies section of the Chart.yaml file +controls which and what version of the ONAP components are included. +Here is an excerpt of this file: .. code-block:: yaml - # Referencing a named repo called 'local'. - # Can add this repo by running commands like: - # > helm serve - # > helm repo add local http://127.0.0.1:8879 dependencies: <...> - name: so - version: ~8.0.0 + version: ~10.0.0 repository: '@local' condition: so.enabled <...> -The ~ operator in the `so` version value indicates that the latest "8.X.X" +The ~ operator in the `so` version value indicates that the latest "10.X.X" version of `so` shall be used thus allowing the chart to allow for minor -upgrades that don't impact the so API; hence, version 8.0.1 will be installed +upgrades that don't impact the so API; hence, version 10.0.1 will be installed in this case. The onap/resources/environment/dev.yaml (see the excerpt below) enables @@ -463,7 +464,7 @@ the portal and then simply access now the new ssl-encrypted URL: you can grab this public IP directly (as compared to trying to find the floating IP first) and map this IP in /etc/hosts. -.. figure:: oomLogoV2-Monitor.png +.. figure:: images/oom_logo/oomLogoV2-Monitor.png :align: right Monitor @@ -492,7 +493,7 @@ The Consul server provides a user interface that allows a user to graphically view the current health status of all of the ONAP components for which agents have been created - a sample from the ONAP Integration labs follows: -.. figure:: consulHealth.png +.. figure:: images/consul/consulHealth.png :align: center To see the real-time health of a deployment go to: ``http://:30270/ui/`` @@ -502,7 +503,7 @@ where a GUI much like the following will be found: If Consul GUI is not accessible, you can refer this `kubectl port-forward `_ method to access an application -.. figure:: oomLogoV2-Heal.png +.. figure:: images/oom_logo/oomLogoV2-Heal.png :align: right Heal @@ -531,7 +532,7 @@ creation of a replacement pod:: > kubectl get pods --all-namespaces -o=wide -.. figure:: oomLogoV2-Scale.png +.. figure:: images/oom_logo/oomLogoV2-Scale.png :align: right Scale @@ -562,10 +563,10 @@ Below is the example for the same:: > helm list NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE - dev 1 Wed Oct 14 13:49:52 2020 DEPLOYED onap-8.0.0 Honolulu onap - dev-cassandra 5 Thu Oct 15 14:45:34 2020 DEPLOYED cassandra-8.0.0 onap - dev-contrib 1 Wed Oct 14 13:52:53 2020 DEPLOYED contrib-8.0.0 onap - dev-mariadb-galera 1 Wed Oct 14 13:55:56 2020 DEPLOYED mariadb-galera-8.0.0 onap + dev 1 Wed Oct 14 13:49:52 2020 DEPLOYED onap-10.0.0 Jakarta onap + dev-cassandra 5 Thu Oct 15 14:45:34 2020 DEPLOYED cassandra-10.0.0 onap + dev-contrib 1 Wed Oct 14 13:52:53 2020 DEPLOYED contrib-10.0.0 onap + dev-mariadb-galera 1 Wed Oct 14 13:55:56 2020 DEPLOYED mariadb-galera-10.0.0 onap Here the Name column shows the RELEASE NAME, In our case we want to try the scale operation on cassandra, thus the RELEASE NAME would be dev-cassandra. @@ -579,10 +580,10 @@ Below is the example for the same:: > helm search cassandra NAME CHART VERSION APP VERSION DESCRIPTION - local/cassandra 8.0.0 ONAP cassandra - local/portal-cassandra 8.0.0 Portal cassandra - local/aaf-cass 8.0.0 ONAP AAF cassandra - local/sdc-cs 8.0.0 ONAP Service Design and Creation Cassandra + local/cassandra 10.0.0 ONAP cassandra + local/portal-cassandra 10.0.0 Portal cassandra + local/aaf-cass 10.0.0 ONAP AAF cassandra + local/sdc-cs 10.0.0 ONAP Service Design and Creation Cassandra Here the Name column shows the chart name. As we want to try the scale operation for cassandra, thus the corresponding chart name is local/cassandra @@ -625,7 +626,7 @@ even if the pods are physically distributed across multiple nodes. An example of how these capabilities can be used is described in the Running Consul on Kubernetes tutorial. -.. figure:: oomLogoV2-Upgrade.png +.. figure:: images/oom_logo/oomLogoV2-Upgrade.png :align: right Upgrade @@ -644,7 +645,7 @@ Prior to doing an upgrade, determine of the status of the deployed charts:: > helm list NAME REVISION UPDATED STATUS CHART NAMESPACE - so 1 Mon Feb 5 10:05:22 2020 DEPLOYED so-8.0.0 onap + so 1 Mon Feb 5 10:05:22 2020 DEPLOYED so-10.0.0 onap When upgrading a cluster a parameter controls the minimum size of the cluster during the upgrade while another parameter controls the maximum number of nodes @@ -680,8 +681,8 @@ To fetch release history enter:: > helm history so REVISION UPDATED STATUS CHART DESCRIPTION - 1 Mon Feb 5 10:05:22 2020 SUPERSEDED so-8.0.0 Install complete - 2 Mon Feb 5 10:10:55 2020 DEPLOYED so-8.0.1 Upgrade complete + 1 Mon Feb 5 10:05:22 2020 SUPERSEDED so-9.0.0 Install complete + 2 Mon Feb 5 10:10:55 2020 DEPLOYED so-10.0.0 Upgrade complete Unfortunately, not all upgrades are successful. In recognition of this the lineup of pods within an ONAP deployment is tagged such that an administrator @@ -703,9 +704,9 @@ For example, to roll-back back to previous system revision enter:: > helm history so REVISION UPDATED STATUS CHART DESCRIPTION - 1 Mon Feb 5 10:05:22 2020 SUPERSEDED so-8.0.0 Install complete - 2 Mon Feb 5 10:10:55 2020 SUPERSEDED so-8.0.1 Upgrade complete - 3 Mon Feb 5 10:14:32 2020 DEPLOYED so-8.0.0 Rollback to 1 + 1 Mon Feb 5 10:05:22 2020 SUPERSEDED so-9.0.0 Install complete + 2 Mon Feb 5 10:10:55 2020 SUPERSEDED so-10.0.0 Upgrade complete + 3 Mon Feb 5 10:14:32 2020 DEPLOYED so-9.0.0 Rollback to 1 .. note:: @@ -755,7 +756,7 @@ release v1.1.2: The previous so pod will be terminated and a new so pod with an updated so container will be created. -.. figure:: oomLogoV2-Delete.png +.. figure:: images/oom_logo/oomLogoV2-Delete.png :align: right Delete