1. Prepare your platform

Portworx Operator is supported Openshift 4 and above.

Install Portworx Operator

Starting OpenShift 4 you can install the Certified Portworx Operator from OperatorHub under the Catalog tab in Openshift console.

Portworx Operator

Airgapped clusters

If your nodes are airgapped and don’t have access to common internet registries, first follow Airgapped clusters to fetch Portworx images.

Select nodes where Portworx will installed

OpenShift Container Platform 3.9 started restricting where pods can be installed (see reference), Portworx Operator will install pods only on nodes that have the label node-role.kubernetes.io/compute=true.

If you want to install Portworx on additional nodes, you have 2 options.

  1. To allow Portworx pods on all nodes in let’s say kube-system namespace run:

    oc patch namespace kube-system -p '{"metadata": {"annotations": {"openshift.io/node-selector": ""}}}'
  2. Alternatively, add the following label to the individual nodes where you want Portworx to run:

    oc label nodes mynode1 node-role.kubernetes.io/compute=true

Prepare a docker-registry credentials secret

This is required in order to retrieve the images from a secure registry. Set these credentials using access information for the Docker registry.
  • Confirm the username/password works (e.g. user:john, passwd:s3cret)

    docker login -u john -p s3cret mysecure.registry.com
  • Configure username/password as a Kubernetes “docker-registry” secret (e.g. “regcred”)

    oc create secret docker-registry regcred \
    --docker-server=mysecure.registry.com \
    --docker-username=john \
    --docker-password=s3cret \
    --docker-email=test@acme.org \
    -n kube-system

Last edited: Tuesday, Sep 10, 2019