[GLOBAL] Migrate to helm v3
[oom.git] / docs / oom_quickstart_guide.rst
index 2c1e48e..79a3056 100644 (file)
@@ -26,19 +26,40 @@ where <BRANCH> can be an official release tag, such as
 * 5.0.1-ONAP for El Alto
 * 6.0.0 for Frankfurt
 * 7.0.0 for Guilin
 * 5.0.1-ONAP for El Alto
 * 6.0.0 for Frankfurt
 * 7.0.0 for Guilin
+* 8.0.0 for Honolulu
+* 9.0.0 for Istanbul
+* 10.0.0 for Jakarta
 
 **Step 2.** Install Helm Plugins required to deploy ONAP::
 
 
 **Step 2.** Install Helm Plugins required to deploy ONAP::
 
-  > sudo cp -R ~/oom/kubernetes/helm/plugins/ ~/.helm
+  > cp -R ~/oom/kubernetes/helm/plugins/ ~/.local/share/helm/plugins
+  > helm plugin install https://github.com/chartmuseum/helm-push.git \
+      --version 0.9.0
 
 
+.. note::
+  The ``--version 0.9.0`` is required as new version of helm (3.7.0 and up) is
+  now using ``push`` directly and helm-push is using ``cm-push`` starting
+  version ``0.10.0`` and up.
+
+**Step 3.** Install Chartmuseum::
+
+  > curl -LO https://s3.amazonaws.com/chartmuseum/release/latest/bin/linux/amd64/chartmuseum
+  > chmod +x ./chartmuseum
+  > mv ./chartmuseum /usr/local/bin
+
+**Step 4.** Install Cert-Manager::
+
+  > kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.2.0/cert-manager.yaml
 
 
-**Step 3.** Customize the Helm charts like `oom/kubernetes/onap/values.yaml` or
+More details can be found :doc:`here <oom_setup_paas>`.
+
+**Step 5.** Customize the Helm charts like `oom/kubernetes/onap/values.yaml` or
 an override file like `onap-all.yaml`, `onap-vfw.yaml` or `openstack.yaml` file
 to suit your deployment with items like the OpenStack tenant information.
 
 .. note::
 an override file like `onap-all.yaml`, `onap-vfw.yaml` or `openstack.yaml` file
 to suit your deployment with items like the OpenStack tenant information.
 
 .. note::
-  Standard and example override files (e.g. `onap-all.yaml`, `openstack.yaml`) can be found in
-  the `oom/kubernetes/onap/resources/overrides/` directory.
+  Standard and example override files (e.g. `onap-all.yaml`, `openstack.yaml`)
+  can be found in the `oom/kubernetes/onap/resources/overrides/` directory.
 
 
  a. You may want to selectively enable or disable ONAP components by changing
 
 
  a. You may want to selectively enable or disable ONAP components by changing
@@ -49,14 +70,15 @@ to suit your deployment with items like the OpenStack tenant information.
     the Robot Helm charts or Robot section of `openstack.yaml`
 
 
     the Robot Helm charts or Robot section of `openstack.yaml`
 
 
- c. Encrypt the OpenStack password using the java based script for SO Helm charts
-    or SO section of `openstack.yaml`.
+ c. Encrypt the OpenStack password using the java based script for SO Helm
+    charts or SO section of `openstack.yaml`.
 
 
  d. Update the OpenStack parameters that will be used by Robot, SO and APPC Helm
     charts or use an override file to replace them.
 
 
 
  d. Update the OpenStack parameters that will be used by Robot, SO and APPC Helm
     charts or use an override file to replace them.
 
- e. Add in the command line a value for the global master password (global.masterPassword).
+ e. Add in the command line a value for the global master password
+    (global.masterPassword).
 
 
 
 
 
 
@@ -78,8 +100,6 @@ openssl algorithm that works with the python based Robot Framework.
     cd so/resources/config/mso/
     /oom/kubernetes/so/resources/config/mso# echo -n "<openstack tenant password>" | openssl aes-128-ecb -e -K `cat encryption.key` -nosalt | xxd -c 256 -p``
 
     cd so/resources/config/mso/
     /oom/kubernetes/so/resources/config/mso# echo -n "<openstack tenant password>" | openssl aes-128-ecb -e -K `cat encryption.key` -nosalt | xxd -c 256 -p``
 
-  Use OS_PASSWORD value from openstack .RC file for "openstack tenant password"
-
 c. Generating SO Encrypted Password:
 The SO Encrypted Password uses a java based encryption utility since the
 Java encryption library is not easy to integrate with openssl/python that
 c. Generating SO Encrypted Password:
 The SO Encrypted Password uses a java based encryption utility since the
 Java encryption library is not easy to integrate with openssl/python that
@@ -89,7 +109,7 @@ Robot uses in Dublin and upper versions.
   To generate SO ``openStackEncryptedPasswordHere`` and ``openStackSoEncryptedPassword``
   ensure `default-jdk` is installed::
 
   To generate SO ``openStackEncryptedPasswordHere`` and ``openStackSoEncryptedPassword``
   ensure `default-jdk` is installed::
 
-    sudo apt-get update; sudo apt-get install default-jdk
+    apt-get update; apt-get install default-jdk
 
   Then execute::
 
 
   Then execute::
 
@@ -132,10 +152,6 @@ observe the following constraints.
   deployment need not worry about this setting but for the demonstration VNFs
   the ip asssignment strategy assumes 10.0 ip prefix.
 
   deployment need not worry about this setting but for the demonstration VNFs
   the ip asssignment strategy assumes 10.0 ip prefix.
 
-.. note::
-  Copy below required openstack.yaml file and update the parameters for the variables
-  accordingly from openstack environment (openrc file) and replace
-
 Example Keystone v2.0
 
 .. literalinclude:: example-integration-override.yaml
 Example Keystone v2.0
 
 .. literalinclude:: example-integration-override.yaml
@@ -147,33 +163,33 @@ Example Keystone v3  (required for Rocky and later releases)
    :language: yaml
 
 
    :language: yaml
 
 
-**Step 4.** To setup a local Helm server to server up the ONAP charts::
+**Step 6.** To setup a local Helm server to server up the ONAP charts::
 
 
-  > helm serve &
+  > chartmuseum --storage local --storage-local-rootdir ~/helm3-storage -port 8879 &
 
 Note the port number that is listed and use it in the Helm repo add as
 follows::
 
   > helm repo add local http://127.0.0.1:8879
 
 
 Note the port number that is listed and use it in the Helm repo add as
 follows::
 
   > helm repo add local http://127.0.0.1:8879
 
-**Step 5.** Verify your Helm repository setup with::
+**Step 7.** Verify your Helm repository setup with::
 
   > helm repo list
   NAME   URL
   local  http://127.0.0.1:8879
 
 
   > helm repo list
   NAME   URL
   local  http://127.0.0.1:8879
 
-**Step 6.** Build a local Helm repository (from the kubernetes directory)::
+**Step 8.** Build a local Helm repository (from the kubernetes directory)::
 
 
-  > make SKIP_LINT=TRUE [HELM_BIN=<HELM_PATH>] all
+  > make SKIP_LINT=TRUE [HELM_BIN=<HELM_PATH>] all ; make SKIP_LINT=TRUE [HELM_BIN=<HELM_PATH>] onap
 
 `HELM_BIN`
 
 `HELM_BIN`
-  Sets the helm binary to be used. The default value use helm from PATH. Allow
-  the user to have multiple version of helm in operating system and choose
-  which one to use.
+  Sets the helm binary to be used. The default value use helm from PATH
+
 
 
-**Step 7.** Display the onap charts that available to be deployed::
+**Step 9.** Display the onap charts that available to be deployed::
 
 
-  > helm search onap -l
+  > helm repo update
+  > helm search repo onap
 
 .. literalinclude:: helm-search.txt
 
 
 .. literalinclude:: helm-search.txt
 
@@ -182,13 +198,14 @@ follows::
   to your deployment charts or values be sure to use ``make`` to update your
   local Helm repository.
 
   to your deployment charts or values be sure to use ``make`` to update your
   local Helm repository.
 
-**Step 8.** Once the repo is setup, installation of ONAP can be done with a
+**Step 10.** Once the repo is setup, installation of ONAP can be done with a
 single command
 
 .. note::
 single command
 
 .. note::
-  The ``--timeout 900`` is currently required in Guilin and up to address long
-  running initialization tasks for DMaaP and SO. Without this timeout value both
-  applications may fail to deploy.
+  The ``--timeout 900s`` is currently required in Dublin and later
+  versions up to address long running initialization tasks for DMaaP
+  and SO. Without this timeout value both applications may fail to
+  deploy.
 
 .. danger::
   We've added the master password on the command line.
 
 .. danger::
   We've added the master password on the command line.
@@ -202,7 +219,7 @@ single command
 To deploy all ONAP applications use this command::
 
     > cd oom/kubernetes
 To deploy all ONAP applications use this command::
 
     > cd oom/kubernetes
-    >  helm deploy dev local/onap --namespace onap --set global.masterPassword=myAwesomePasswordThatINeedToChange -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/environment.yaml -f onap/resources/overrides/openstack.yaml --timeout 900
+    >  helm deploy dev local/onap --namespace onap --create-namespace --set global.masterPassword=myAwesomePasswordThatINeedToChange -f onap/resources/overrides/onap-all.yaml -f onap/resources/overrides/environment.yaml -f onap/resources/overrides/openstack.yaml --timeout 900s
 
 All override files may be customized (or replaced by other overrides) as per
 needs.
 
 All override files may be customized (or replaced by other overrides) as per
 needs.
@@ -229,7 +246,7 @@ needs.
   you want to use to deploy VNFs from ONAP and/or additional parameters for the
   embedded tests.
 
   you want to use to deploy VNFs from ONAP and/or additional parameters for the
   embedded tests.
 
-**Step 9.** Verify ONAP installation
+**Step 11.** Verify ONAP installation
 
 Use the following to monitor your deployment and determine when ONAP is ready
 for use::
 
 Use the following to monitor your deployment and determine when ONAP is ready
 for use::
@@ -237,32 +254,18 @@ for use::
   > kubectl get pods -n onap -o=wide
 
 .. note::
   > kubectl get pods -n onap -o=wide
 
 .. note::
-  While all pods may be in a Running state, it is not a guarantee that all components are running fine.
+  While all pods may be in a Running state, it is not a guarantee that all
+  components are running fine.
 
 
-  Launch the healthcheck tests using Robot to verify that the components are healthy::
+  Launch the healthcheck tests using Robot to verify that the components are
+  healthy::
 
     > ~/oom/kubernetes/robot/ete-k8s.sh onap health
 
 
     > ~/oom/kubernetes/robot/ete-k8s.sh onap health
 
-  Launch Robot distribute health checks to verify whether ONAP runtime components are healthy::
-
-    > ~/oom/kubernetes/robot/ete-k8s.sh onap healthdist
-
-**Step 10.** Undeploy ONAP
-::
-
-  > helm undeploy dev --purge
-
-.. note::
-  After undeploy follow the below steps to cleanup everything before redeplying ONAP
-
+**Step 12.** Undeploy ONAP
 ::
 
 ::
 
-  > kubectl delete namespace onap
-
-  > kubectl delete pv -n onap --all
-
-  > kubectl delete pvc -n onap --all
-
-  > sudo rm -rf /dockerdata-nfs/*
+  > helm undeploy dev
 
 
-More examples of using the deploy and undeploy plugins can be found here: https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins
+More examples of using the deploy and undeploy plugins can be found here:
+https://wiki.onap.org/display/DW/OOM+Helm+%28un%29Deploy+plugins