Storage for serviceability

The operator provides single storage for serviceability.

The operator makes it easy to use a single storage for operations related to serviceability, such as gathering server traces or server diagnostic dumps. The single storage is shared by all pods of a WebSphereLibertyApplication instance. We don't need to mount a separate storage for each pod.

Your cluster must be configured to automatically bind the PersistentVolumeClaim (PVC) to a PersistentVolume or we must bind it manually.

We can specify the size of the persisted storage to request with the serviceability.size parameter.

    spec:
      applicationImage: quay.io/my-repo/my-app:1.0
      serviceability:
        size: 1Gi

We can specify which storage class to request with the serviceability.storageClassName parameter if we don't want to use the default storage class. The operator automatically creates a PersistentVolumeClaim with the specified size and access mode ReadWriteMany. It is mounted at /serviceability inside all pods of the WebSphereLibertyApplication instance.

Alternatively, we can create the PersistentVolumeClaim and specify its name with the serviceability.volumeClaimName parameter. We must create it in the same namespace as the WebSphereLibertyApplication instance.

    spec:
      applicationImage: quay.io/my-repo/my-app:1.0
      serviceability:
        volumeClaimName: my-pvc

After a PersistentVolumeClaim is created by the operator, its size cannot be updated. It is not deleted when serviceability is not available or when the WebSphereLibertyApplication is deleted.