Helm 2 on OpenShift (OKD) 3

· 1 min read

Install the popular Kubernetes package manager and enable cluster-wide install ability.

Helm 3? No Way!

OpenShift 4 has built-in integration with Helm 3. Yet OpenShift 3 does not feature any integration. It is either not possible to install Helm 3 on OpenShift 3.[1] Luckily we still have Helm 2.[2]

Installing Helm Server Portion

First of all we need to prepare some variables:

TILLER_NAMESPACE=tiller
HELM_VERSION=v2.17.0

Then we use the example template in OpenShift source[3]:

$ oc login
$ oc process -f https://github.com/openshift/origin/raw/release-3.11/examples/helm/tiller-template.yaml -p TILLER_NAMESPACE="${TILLER_NAMESPACE}" -p HELM_VERSION=v2.17.0 | oc create -f -

Then install the client and initialize locally:

$ curl -L https://git.io/get_helm.sh | bash
$ helm init --client-only

If you experience RBAC problem:

User "system:serviceaccount:tiller:tiller" cannot create namespaces at the cluster scope: no RBAC policy matched"

You need to grant tiller as cluster admin:

$ oc create clusterrolebinding helm-tiller --clusterrole=cluster-admin --serviceaccount=${TILLER_NAMESPACE}:tiller

References


  1. Overview of Helm 3 Changes ↩︎

  2. Helm v2 Deprecation Timeline ↩︎

  3. Getting started with Helm on OpenShift ↩︎