X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=kubernetes%2FREADME.md;h=9d8d4cc9abfc9f9254beb4f61a3d11f91c3808d9;hb=b4a66f9df15d8b10a31cf531ea6e8bf0bf1dd37a;hp=4760d9ec0d4913eddd90a0db36ee3fc3f721b23a;hpb=d17accd32f4f7851dbe7b023f1997aa4e17938e8;p=oom.git diff --git a/kubernetes/README.md b/kubernetes/README.md index 4760d9ec0d..9d8d4cc9ab 100644 --- a/kubernetes/README.md +++ b/kubernetes/README.md @@ -1,35 +1,89 @@ -ONAP on Kubernetes -==================== +## **Quick Start Guide** -Under construction... +This is a quick start guide describing how to deploy ONAP on Kubernetes using Helm. -Creating an ONAP deployment instance requires creating base configuration on the -host node and then deploying the runtime containers. +Pre-requisites: -The following is an example of creating the first deployed instance in a K8s -cluster. The name given to the instance is 'dev1'. This will serve as the -Namespace prefix for each deployed ONAP component (ie. dev1-mso). +- Your Kubernetes environment must be available. For more information see, [ONAP on Kubernetes](https://wiki.onap.org/display/DW/ONAP+on+Kubernetes). +- Deployment artifacts are customized for your location. - 1. oom/kubernetes/config/createConfig.sh -n dev1 - 2. oom/kubernetes/oneclick/createAll.bash -n dev1 +### **Deploy ONAP Instance** -To delete the runtime containers for the deployed instance, use the following: +Step 1. Clone the OOM repository from ONAP gerrit: - 3. oom/kubernetes/oneclick/deleteAll.bash -n dev1 +``` +> git clone http://gerrit.onap.org/r/oom +> cd oom/kubernetes +``` -Note that deleting the runtime containers does not remove the configuration -created in step 1. +Step 2. Customize the oom/kubernetes/onap parent chart, like the values.yaml file, to suit your deployment. You may want to selectively enable or disable ONAP components by changing the subchart **enabled** flags to *true* or *false*. The .yaml file for OpenStackEncryptedPassword should be the MSO ecnrypted value of the openstack tenant password +``` +Example: +... +robot: # Robot Health Check + enabled: true +sdc: + enabled: false +sdnc: + enabled: false +so: # Service Orchestrator + enabled: true +... +``` +Step 3. To setup a local Helm repository to serve up the local ONAP charts: + [Note: ensure helm init has been executed on the node, or run helm init --client-only] +``` +> helm serve & +``` +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 4. Build a local Helm repository (from the kubernetes directory): +``` +> make all +``` -To deploy more than one ONAP instance within the same Kubernetes cluster, you -will need to specify an Instance number. This is currently required due to the -use of NodePort ranges. NodePorts allow external IP:Port access to containers -that are running inside a Kubernetes cluster. +Step 5. Display the charts that are available to be deployed: +``` +> helm search -l +NAME VERSION DESCRIPTION +local/appc 2.0.0 Application Controller +local/clamp 2.0.0 ONAP Clamp +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 +... +``` -Example if this is the 2 instance of an ONAP deployment in the cluster: +**Note:** +Setup of this Helm repository is a one time activity. If you make changes to your deployment charts or values be sure to use **make** to update your local Helm repository. - 1. oom/kubernetes/config/createConfig.sh -n test +Step 6. Once the repo is setup, installation of ONAP can be done with a single command: +``` +> helm install local/onap --name dev --namespace onap +``` +**Note:** the **--namespace onap** is currently required while all onap helm charts are migrated to version 2.0. After this activity is complete, namespaces will be optional. - 2. oom/kubernetes/oneclick/createAll.bash -n test -i 2 +Use the following to monitor your deployment and determine when ONAP is ready for use: +``` +> kubectl get pods --all-namespaces -o=wide +``` + + +#### **Cleanup deployed ONAP instance** + +To delete a deployed instance, use the following command: +``` +> helm del dev --purge +``` + + + +For more information on OOM project documentation, refer to: + + - [Quick Start Guide on Wiki](https://wiki.onap.org/display/DW/ONAP+Operations+Manager+Project#ONAPOperationsManagerProject-QuickStartGuide) + - [Quick Start Guide on readthedocs](http://onap.readthedocs.io/en/latest/submodules/oom.git/docs/OOM%20Project%20Description/oom_project_description.html#quick-start-guide)