Optional: Implementing storage

There are several reasons why you might want to set up your own persistent volume (PV) and persistent volume claim (PVC).

  • You want IBM Resource Registry to be backed up automatically. Otherwise, you can do manual backups.
  • You want to use shared storage to share the file upload cache among servers for Application Engine.

Procedure

  1. To automatically back up Resource Registry, you must enable persistent storage for the backup using a PV. You can either use dynamic provisioning that you already set up in your cluster, or you can create the PV manually.
    Important: Resource Registry auto-backup is enabled by default for the Pattern installation only. If you do not have the Pattern installation, set up Resource Registry auto-backup to make the Resource Registry stable.
    1. Set resource_registry_configuration.auto_backup.enable to true in the configuration parameters. See Application Engine configuration parameters.
    2. Create the PV.
      • Using dynamic provisioning:
        1. Set resource_registry_configuration.auto_backup.dynamic_provision.enable to true in the configuration parameters.
        2. Get the name of a storage class from your dynamic provisioning setting, by setting resource_registry_configuration.auto_backup.dynamic_provision.storage_class to the name of the storage class that you chose. See Dynamic provisioning.
      • Creating the PV manually:
        1. Set resource_registry_configuration.auto_backup.dynamic_provision.enable to false in the configuration parameters.
        2. Create the PV and PVC. Set resource_registry_configuration.auto_backup.pvc_name to the name of the PV that you create.

          The PV must be shareable by pods across the whole cluster. For a single-node Kubernetes cluster, you can create a hostPath PV. For multiple nodes in a cluster, create the PV using shareable storage, such as Gluster File System (GlusterFS).

  2. To use shared storage to share the file upload cache among servers for Application Engine, you must enable persistent storage for the shared storage using a PV. You can either use dynamic provisioning that you already set up in your cluster, or you can create the PV manually.
    Note: To make the replica size more than 1 for this cluster, you must enable the shared storage.
    1. Set application_engine_configuration[*].share_storage.enabled to true in the configuration parameters. See Application Engine configuration parameters.
    2. Create the PV.
      • Using dynamic provisioning:
        1. Set application_engine_configuration[*].share_storage.auto_provision.enabled to true in the configuration parameters.
        2. Get the name of a storage class from your dynamic provisioning setting, by setting application_engine_configuration[*].share_storage. auto_provision.storage_class to the name of the storage class that you chose. See Dynamic provisioning.
      • Creating the PV manually:
        1. Set application_engine_configuration[*].share_storage.auto_provision.enabled to false in the configuration parameters.
        2. Create the PV and PVC. Set application_engine_configuration[*].share_storage.pvc_name to the name of the PVC that you create. Add volumeName to the Application Engine file PVC.
          kind: PersistentVolumeClaim
          apiVersion: v1
          metadata:
            name: ae-file-pvc
          spec:
            storageClassName: manual
            accessModes:
              - ReadWriteMany
            resources:
              requests:
                storage: 3Gi
            volumeName: ae-pv-volume

          The PV must be shareable by pods across the whole cluster. For a single-node Kubernetes cluster, you can create a hostPath PV. For multiple nodes in a cluster, create the PV using shareable storage, such as Gluster File System (GlusterFS),

What to do next

There are some optional steps you can do next.

After you've done any optional steps and prepared for each capability that you want to install, deploy the custom resource (CR) file. See Creating a production deployment.