DevOps Plan persistent volumes
Learn the default value settings for persistent volumes in DevOps Plan.
Persistent Volumes that will hold the devopsplan data, config, share, and logs folders for DevOps
Plan are required. If your cluster supports default StorageClass and dynamic volume provisioning,
you will not need to create a StorageClass (SC) and PersistentVolume (PV) before installing DevOps Plan. If your cluster does not support default
SC and dynamic volume provisioning, you must either ensure an SC and PV is available, or disable the
persistent volume by setting persistence.enabled to false before
installing DevOps Plan.
Deploying DevOps Plan requires non-root access to persistent storage. When using IBM File Storage, you need to either use the IBM provided “gid” File storage class with default group ID 65531 or create your own customized storage class to specify a different group ID. For more information, see https://cloud.ibm.com/docs/containers?topic=containers-cs_storage_nonroot.
persistence.ccm.storageClass=ibmc-file-gold-gid for the persistence volume with
sharing the data and securityContext.fsGroup=65531. The default setting for the
StorageClass and fsGroup shown as below and you can update based on your cluster
environment.```bash
persistence:
storageClass= ''
ccm:
storageClass=ibmc-file-gold-gid
securityContext:
fsGroup: 65531
```- ibm-devopsplan data, config, share and logs folders.
- ibm-devopsplan-analytics data, config, share and logs folders.
- ibm-devopsplan-opensearch data folder.
- ibm-devopsplan-keycloak data folder.
- ibm-devopsplan-postgresql data folder.
ibm-devopsplan:
persistence:
## Enable persistence
enabled: true
ccm:
storageClass: ''
enabled: true
data:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
config:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
share:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
logs:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
analytics:
enabled: true
storageClass: ''
data:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
config:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
share:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
logs:
enabled: true
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
opensearch:
enabled: true
storageClass: ''
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
postgresql:
enabled: true
storageClass: ''
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
initPostgres: false
tag: data
keycloak:
enabled: true
storageClass: ''
accessModes:
- ReadWriteOnce
size: 2Gi
reclaimPolicy: Retain
existingClaim: ""
connectOption:
ccm: false
path: ""
## Type of storage class to be used
## If defined, storageClassName: <storageClass>
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
storageClass: ''
## Annotations for PVC
annotations: {}
## Enabling/disabling the application.properties and analytics.properties configmap.
## If it is enabled, then it will update the values of the application.properties
## and analytics.properties files as set in the /config/ folder.
properties:
application:
enabled: false
analytics:
enabled: false
You can list PVs and PVCs using *kubectl get pv* and *kubectl get pvc* commands.
```bash
$ kubectl get pvc --namespace [namespace_name]persistence.storageClass or disable the persistent volume by setting
persistence.enabled=false.