Skip to main contentIBM DataPower Operator Documentation

Getting started

IBM DataPower Operator is capable of packaging, deploying, and managing your IBM DataPower Gateway so that you can focus on developing and deploying your configuration and code, and less on operations.

Installation Methods

There are two methods to install the IBM DataPower Operator:

  1. Helm chart
  2. Operator Lifecycle Manager (OLM)

Intro to DataPowerService

The DataPowerService is a CustomResourceDefinition exposed by the IBM DataPower Operator. It is the primary API you will leverage to create and manage your deployments of IBM DataPower Gateway.

Below is a brief example of what a minimal DataPowerService may look like:

apiVersion: datapower.ibm.com/v1beta3
kind: DataPowerService
metadata:
name: example
spec:
license:
accept: true
use: developers-limited
license: L-RJON-BYDQZF

The above Custom Resource would be translated to a StatefulSet with 3 replicas of developers-limited licensed IBM DataPower Pods (pulled from ibmcom/datapower), each running the latest 10.0 Continuous Delivery release.

For more details, see the complete DataPowerService API documentation.

Managed StatefulSet

The IBM DataPower Operator exposes the DataPowerService Custom Resource Definition as a mechanism to deploy and manage StatefulSets of IBM DataPower Pods. When you create a DataPowerService Custom Resource, the Operator will reconcile this resource by creating and managing the StatefulSet. For each DataPowerService Custom Resource created, another StatefulSet will be created. They are tightly coupled: when you make an update to an DataPowerService instance, its StatefulSet will be automatically updated accordingly.

Creating a DataPowerService instance

Once you’ve built your DataPowerService YAML, you can use oc or kubectl CLI tools to apply that YAML to the cluster, in a target namespace, to create the DataPowerService instance.

oc apply -f my_datapowerservice_cr.yaml

Deleting a DataPowerService instance

You can delete an existing DataPowerService using standard oc delete or kubectl delete commands. When you delete the DataPowerService, the DataPower StatefulSet will also be deleted, thus deleting your DataPower deployment entirely.

oc delete DataPowerService/name