Storage configuration

The full installation of IBM Process Mining requires two mandatory persistent volumes and two optional. The mandatory persistent volumes are for storing IBM Process Mining events and IBM Task Mining events. If you install IBM Process Mining and use the embedded Db2 and PostgreSQL, the installer creates the appropriate storage for you. If you choose to deploy IBM Process Mining with your self-provisioned databases (for example, External Databases) - then the installer does not need to provision storage for databases. See the External Database section for more details.

The installation creates Persistent volume claims for the volumes, but it is possible to specify in the CRD Persistent Volume Claim already created. The storage class that is used must access the ReadWriteMany mode. If you pre-create the PVC, you must specify the PVC name in the CRD.

The storage class that is required by IBM Process Mining must support the Read Write Many access mode. You can specify the storage class for dynamic provisioning in the CRD either globally or per storage, You must specify a default storage class in the CRD through the spec.defaultStorageClassName property, make sure that this storage class supports this access mode.

By default when the IBM Process Mining CRD is removed the PVC are removed and the data is lost.

Note: The data inside the persistent volumes must be backed up.

Persistent volumes details

Used by Default name Dynamically created Default size (Gb) Default class Mandatory Access Modes
IBM Process Mining processmining-repository Yes 20 n/a yes ReadWriteMany
IBM Task Mining taskmining-data Yes 50 n/a yes (when IBM Task Mining is installed) ReadWriteMany
IBM Db2 N/A Yes 20 n/a no ReadWriteMany
MonetDB processmining-monetdb Yes 50 n/a yes ReadWriteOnce

Configuring the default storage class

You must specify a default storage class with the defaultStorageClassName property in the CRD. In the following example the storage class is used for dynamic provisioning unless another storage class is specified for a particular component.

apiVersion: processmining.ibm.com/v1beta1
kind: ProcessMining
metadata:
  name: pm1
  namespace: processmining
spec:
  license:
    accept: true
    cloudPak: IBM Cloud Pak for Business Automation
  defaultStorageClassName: rook-cephfs
  processmining:
    storage:
      database:
        external:
          connectionstring: ''
          credential:
            passwordkey: externalpostgrespassword
            secretname: pm-external-postgres-secret
          database: processmining
          host: $EXT_DB_HOSTNAME
          port: 5432
          user: pm_user

Note that if you install in a namespace when no Cloud Pak Platform UI is installed, the Platform UI is installed and the installation requires that you specify the defaultStorageClassName in the CRD with a storage class that is supporting the ReadWriteMany access mode,

Configuring storage size and class per storage in Process Mining and Task Mining

apiVersion: processmining.ibm.com/v1beta1
kind: ProcessMining
metadata:
  name: pm1
  namespace: processmining
spec:
  license:
    accept: true
    cloudPak: IBM Cloud Pak for Business Automation
  defaultStorageClassName: rook-cephfs
  processmining:
    storage:
      database:
        external:
          connectionstring: ''
          credential:
            passwordkey: externalpostgrespassword
            secretname: pm-external-postgres-secret
          database: processmining
          host: $EXT_DB_HOSTNAME
          port: 5432
          user: pm_user
      events: 
        name: 'processmining-repository'
        size: '100'
        class: 'rook-cephfs'
        create: true
    monetdb: 
      pvc: 
        create: true
        name: 'processmining-monetdb'
        size: '50'
        storageClass: 'rook-cephfs'

If the create flag is false, the PVC is not created and must already be present in the namespace.

Note: 50 is the default size value. If you need a different size, you must change it in this step before the data is added to your system.
apiVersion: processmining.ibm.com/v1beta1
kind: ProcessMining
metadata:
  name: pm1
  namespace: processmining
spec:
  version : 2.2.0
  license:
    accept: true
    cloudPak: IBM Cloud Pak for Business Automation
  taskmining:
    storage: 
      database:
        external:
          connectionstring: ''
          credential:
            passwordkey: externalpostgrespassword
            secretname: tm-external-postgres-secret
          database: taskmining
          host: $EXT_DB_HOSTNAME
          port: 5432
          schema: tm
          user: taskminer        
      events: 
        name: 'taskmining-data'
        size: '10'
        class: 'rook-cephfs'
        create: true

If the create flag is false, the PVC is not created and must already be present in the namespace.

IBM Db2

You can configure a different storageClass for DB2Cluster instance. On a ROKS cluster suggested values are: ibmc-file-gold-gid or managed-nfs-storage

apiVersion: processmining.ibm.com/v1beta1
kind: ProcessMining
metadata:
  name: pm1
  namespace: processmining
spec:
  version : 2.2.0
  license:
    accept: true
    cloudPak: IBM Cloud Pak for Business Automation
  defaultStorageClassName: rook-cephfs
  taskmining:
    storage: 
      database:
        external:
          connectionstring: ''
          credential:
            passwordkey: externalpostgrespassword
            secretname: tm-external-postgres-secret
          database: taskmining
          host: $EXT_DB_HOSTNAME
          port: 5432
          schema: tm
          user: taskminer        
      events: 
        class: 'rook-cephfs'
        size: '50'
      database:
        size: '50'
        class: 'ibmc-file-gold-gid'

Backup

Data inside PVC storage must be backed up. For more information, see backup restore.