Installation with Helm

IBM DataPower Operator can be installed using helm.

Prerequisites

Platform

IBM DataPower Operator currently supports installation via Helm on both Kubernetes and OpenShift Container Platform (OCP), see Prerequisites for supported versions.

Note: While it is supported to use Helm to install on OCP, the preferred installation method for OCP is OLM.

Coexistence

When installing via Helm, the values.yaml in the DataPower Operator Helm Chart offers an operator.installMode configuration in which you can choose between the following modes:

  • OwnNamespace
  • SingleNamespace
  • MultiNamespace
  • AllNamespaces

See the README.md in the Helm chart directory (same directory as values.yaml) for details on this configuration.

The following rules apply:

  1. If installing more than one instance of DataPower Operator on the same cluster (e.g., two OwnNamespace installs in different namespaces), all installs MUST be at the exact same version.
  2. It is unsupported for two Operator installs to overlap their watched namespace(s).

As a best-practice:

  • If you wish to manage DataPower operands across several namespaces, use a single AllNamespaces install.
  • If you wish to isolate the DataPower Operator and Operands to a single namespace, use a single OwnNamespace install, and create your Operands in the same namespace as the Operator.

Chart

The IBM DataPower Operator Helm Chart is hosted on GitHub:

https://github.com/IBM/datapower-operator-chart

Downloading a release

The preferred method for acquiring the chart is to download the desired version from releases.

Documentation

Refer to the chart's README.md for details on the available configuration options in values.yaml that control the Operator's installation.

Install

This process assumes a fresh install is being performed, and that DataPower Operator is not already installed on the target cluster.

  1. Download the desired release source code ZIP or tarball. The file will be named similar to one of the following, where X.Y.Z corresponds to the version you chose:

    • datapower-operator-chart-X.Y.Z.zip
    • datapower-operator-chart-X.Y.Z.tar.gz
  2. Unpack the chart archive using your preferred tooling (e.g., unzip, tar, or some alternative). This should yield a directory named datapower-operator-chart-X.Y.Z (where X.Y.Z correspond to the version you chose in step 1).

  3. In the terminal of your choice, cd into the chart directory (example shown below). This directory should contain the Chart.yaml and values.yaml files, as well as other files and directories.

    cd datapower-operator-chart-X.Y.Z/charts/stable/datapower-operator
    
  4. Customize the values.yaml as desired. Review the README.md in this directory for available configuration options.

  5. Check if your cluster has any DataPower Operator CustomResourceDefinitions (CRDs) installed already.

    kubectl get crd | grep 'datapower.ibm.com'
    

    If any exist, continue with step 6; otherwise, proceed to step 7.

  6. Manually apply the CRDs from the Helm chart to update them in the cluster.

    for crd in crds/*; do kubectl apply -f $crd; done
    
  7. Install the DataPower Operator using helm install.

    helm install datapower-operator .
    

    Here datapower-operator is the Helm release name. You can customize this if you wish; note that this is the name you'll use in the future when performing an upgrade.

  8. Validate the install via helm list.

Reference