Changing storage type between shared and dedicated

How to change from dedicated analytics storage to shared, or from shared to dedicated.

If you have a three replica deployment and want to change storage type, follow the steps in this topic.
Note: Dedicated storage is not available on a one replica deployment.
For more information about dedicated storage, see Planning the analytics profile, storage class, and storage type.
Note: For OpenShift users: The example steps in this topic use the Kubernetes kubectl command. On OpenShift, use the equivalent oc command in its place. If you are using a top-level CR you must edit the API Connect cluster CR (the top-level CR), instead of directly in the subsystem CRs. If the subsystem section is not included in the top-level CR, copy and paste the section from the subsystem CR to the top-level CR.

Changing from shared to dedicated storage

Edit your analytics CR, and change storage type to dedicated:
kubectl edit analyticscluster -n <namespace>

...
  storage:
    type: dedicated
    
If your environment does not have a default storage class, or want to use a different storage class for your storage-os-master pods, then also add the spec.storage.master section to specify the storage class, for example:
  storage:
    type: dedicated
...
    master:
      volumeClaimTemplate:
        storageClassName: local_storage
        

Changing from dedicated to shared storage

  1. Edit your analytics CR, and change storage type to shared:
    kubectl edit analyticscluster -n <namespace>
    
    ...
      storage:
        type: shared
        
  2. Wait until all of your storage pods restart and are in the Ready state.
  3. Edit your analytics CR and remove the spec.storage.master section.
  4. Delete the data-analytics-storage-os-master PVCs:
    kubectl delete pvc data-analytics-storage-os-master-<integer> -n <namespace>