Skip to main content
Version: 26.1

Static Provisioning of Volumes

Use PX-CSI to import existing volumes from Pure Storage arrays into Kubernetes without creating new volumes. This is useful for scenarios where:

  • Volumes are pre-created on FlashArray or FlashBlade.
  • You need to consume volumes that were created outside of Kubernetes.

With static provisioning, you create a PersistentVolumeClaim (PVC) with special annotations that tell PX-CSI to import an existing volume instead of creating a new one.

How it works

To import an existing volume, you add annotations to your PVC that specify:

  • portworx.io/pure-volume-name (required): The name of the existing volume on the Pure Storage array.
    • For FlashArray block volumes: <realm>::<pod_name>::<volume_name>

      Note: The realm and pod_name are optional; only include them if your volume exists within a specific realm and pod.

    • For FlashArray File Services: pod_name::filesystem_name

      Note: The pod_name is optional; only include it if your file system exists within a specific pod.

    • For FlashBlade file systems: filesystem_name
  • portworx.io/pure-array-id (optional): The ID of the array where the volume exists. Use this to specify which array to import the volume from when multiple arrays are connected to your cluster.

When PX-CSI receives the PVC request, it looks up the existing volume on the Pure Storage array and imports it into Kubernetes instead of creating a new volume.

important

If a volume with the same name exists on multiple arrays and you don't specify the portworx.io/pure-array-id annotation, PX-CSI may import the volume from any of those arrays. To ensure you import from the correct array, always specify the portworx.io/pure-array-id annotation when multiple arrays are connected to your cluster.

Supported storage systems

PX-CSI supports importing pre-provisioned volumes from the following Pure Storage systems: