You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

In the Casablanca release, ONAP has become very large with many Helm Charts ~6 x that of Amsterdam. Every Helm chart contains some amount of external configuration. And unfortunately,  there is a limit to the amount of configuration that can exist in a Helm chart of 1 MB and we in ONAP have exceeded it. 

ONAP is installed as a umbrella chart containing many subcharts (each with configuration), the amount of configuration that resides in configmaps in K8s causes the installation to fail. To work around this issue, it was necessary to introduce a Helm plugin that will install/upgrade onap by deploying the parent chart and each subchart within its own Helm "release". This is the initial version of the plugins, which has been verified to work and unblock integration in the deployment of all of ONAP. Improvements will be made post M4 to further harden and enhance the plugins. Specifically, the plugins are not currently resilent to network issues which can cause some of the subcharts to fail to deploy. To work around this, the plugins should be run from within the same network as the k8s cluster you are deploying to. 


Examples

To install ONAP using one of the public Helm Chart repos https://nexus.onap.org/content/sites/ (ie. staging)

  1. helm repo add staging https://nexus.onap.org/content/sites/oom-helm-staging/
  2. helm deploy demo staging/onap --namespace onap

Installation

To install, copy oom/kubernetes/helm/plugins directory into your local ~/.helm/ folder. After which you should see 'deploy' and 'undeploy' if you do a 'helm' with no arguments.


> helm

.......

Usage:
helm [command]

Available Commands:
autohelm helm autohelm plot <course.yml>
completion Generate autocompletions script for the specified shell (bash or zsh)
create create a new chart with the given name
delete given a release name, delete the release from Kubernetes
dependency manage a chart's dependencies
deploy install (upgrade if release exists) parent chart and subcharts as separate but related releases
fetch download a chart from a repository and (optionally) unpack it in local directory
...

template locally render templates
test test a release
undeploy delete parent chart and subcharts that were deployed as separate releases
upgrade upgrade a release
verify verify that a chart at the given path has been signed and is valid
version print the client/server version information



  • No labels