If you have already deployed your IBM MQ operator in IBM Cloud Pak for Integration (CP4I) but want to increase the total amount of storage available for Persistent Volume Claims of the three log types (if using PVC) then the correct method is to first edit the PV / PVC and then update the MQ Deployment YAML and apply it.
The three log types that can rely on a persistent volume claim are:
- Queue Manager – Holds data normally under /var/mqm. Will contain all persisted data and recovery logs, if no other volumes are specified.
- PersistedData – PersistentVolume details for MQ persisted data, including configuration, queues and messages. Required when using multi-instance Queue Manager
- RecoveryLogs - Persistent volume details for MQ recovery logs.
These must use persistent claims if you are running multi-instance. Here is an example of the Queue Manager specification that is deployed on CP4I. (This is a small snippet of the overall yaml)
Example Recovery Log Storage Size Update
- Login to the OpenShift console as an Administrator
- Navigate to Storage -> Persistent Volume Claim
- In the search bar type "${queueManagerName}-ibm-mq-recovery-logs"
e.g. qm01-ibm-mq-recovery-logs - Select the burger bar menu and select "Expand PVC"
- Type the required value i.e. 700 MiB and select "Expand"
- To validate the change: Navigate to the Workloads -> Pods
- Select the 'Ready' qm01 pod which will be either qm01-ibm-mq-0 OR qm01-ibm-mq-1
- Switch to the 'Terminal' view and run `df -h | grep mqm-logs` which will show the available storage has increased
${ip-address-and-port}:/volumes/csi/csi-vol-550e9a08-f915-11eb-9348-0a580afe140b/a1d2871a-aa2c-46cb-a422-19eca1ef0b36 700M 48M 852M 6% /mnt/mqm-log - It's important to ensure you update the deployment YAML (configuration as code) in order to have a consistent record of your queue manager configuration should you build a new environment etc. from the same config.
Go to your deployment YAML for the Queue Manager which we have stored locally. - Update the recovery log size to 700M and save the file. e.g.recoveryLogs:enabled: truesize: 7000Mclass: rook-cephfstype: persistent-claim
- On a terminal where you are already logged into the OpenShift cluster run the following command:
`oc apply -f ${yamlfilename}.yaml` e.g. `oc apply -f my-qm.yaml`
This should result in "queuemanager.mq.ibm.com/qm01 configured"
Note: updating the Queue Manager YAML before updating the persistent volume will lead to the Queue Manager showing a failed status in the MQ operator view, although the container will continue to run.