Skip to main content
Version: 25.8

Portworx CSI Release Notes

Portworx CSI (PX-CSI) is a lightweight storage orchestration solution that uses the Kubernetes Container Storage Interface (CSI) framework to integrate the Pure Storage storage solutions.

PX-CSI integrates with Kubernetes to directly access Pure Storage FlashArray Direct Access volumes (FADA) and FlashBlade Direct Access volumes (FBDA).

If you're setting up PX-CSI for the first time, see Install Portworx CSI. If you're already using PX-CSI, upgrade to the latest version. For upgrade instructions, see Upgrade Portworx CSI.

For information about supported versions, release numbering, and support phases, refer to the PX-CSI Life Cycle Support Policy.

Removal of pxctl CLI

The pxctl CLI is removed starting with PX-CSI 25.8.0. Use standard Kubernetes tools such as kubectl, oc, or apply YAML manifests to manage CustomResource objects for operational and configuration tasks.

PX-CSI 25.8.1

November 04, 2025

What's New

  • Support for FlashArray volume snapshots using type: clone
    PX-CSI now supports volume snapshots of type clone for FlashArray. To enable this, set the parameters.type field to clone in the VolumeSnapshotClass. When type is set to clone, each snapshot is created as a new volume on FlashArray, which prevents its deletion when the original PVC is deleted. For more information, see Snapshot of FlashArray PVC.

  • Volume deletion does not automatically eradicate volume on the backing FlashArray or FlashBlade
    When a PersistentVolume (PV) is deleted in Kubernetes, PX-CSI destroys the corresponding volume on the associated FlashArray or FlashBlade, but does not eradicate it. Eradication is handled according to the eradication settings configured on the FlashArray or FlashBlade.

    Note: This feature is not supported for FlashArray File Services. If you delete a PVC backed by FlashArray File Services, PX-CSI does not delete the persistent volume (PV) on the FlashArray if the volume contains data and remains in the Released state. You must manually delete the PVs. For more information, see Delete persistent volumes in a released state in FA file systems.

Resolved Issues

Issue NumberIssue DescriptionSeverity
PWX-47994In FlashBlade-only environments, px-node-plugin pods enter a CrashLoopBackOff state if the /etc/iscsi/initiatorname.iscsi file is missing on the node, even though iSCSI is not required. During startup, the CSI node plugin attempts to parse the initiatorname.iscsi file regardless of backend type. If the file is missing or contains invalid content, the driver fails to retrieve a TransportID and crashes.Minor
PWX-47914When using the Emulex Fibre Channel adapter, LUNs with a LUN ID greater than 255 will fail to attach due to an issue in decoding LUN ID.Minor
PWX-48084FlashArray secure multi-tenancy API token fails when using the Fibre Channel (FC) protocol. The following error appears during volume provisioning:
Warning ProvisioningFailed pxd.portworx.com_px-pure-csi-controller[...] failed to provision volume with StorageClass "px-fa-direct-access-pod": rpc error: code = Internal desc = flasharray backend provisioning failed: all potential backends failed to provision: <ip_address>: 'failed to list network interfaces: Failed to list network interfaces: Msg1: Operation not permitted.'
Minor
PWX-47985If a StorageCluster resource includes a toleration with operator: Exists, the upgrade to Portworx version 25.8.0 will fail. This occurs because such tolerations match all taints, which interferes with the CSI migration logic during upgrade.
Note: This issue is resolved in Portworx Operator version 25.5.0
Minor
PWX-48180PVC provisioning fails when the storage size specified in bytes is not a multiple of 512 bytes, as required by FlashArray.Minor

PX-CSI 25.8.0

October 16, 2025

What's New

  • PX-CSI without KVDB
    PX-CSI no longer requires a key-value database (KVDB) for operation. This change enables lightweight deployments, reduces CPU and memory usage, and lowers operational overhead. Metadata is now stored in Kubernetes as CustomResource objects. During the upgrade to PX-CSI 25.8.0, volume metadata is automatically migrated to these custom resources. For more information about the new architecture, see What is PX-CSI.

  • Increased volume attachments per node
    PX-CSI now supports attaching up to 512 volumes to a single node, enabling higher workload density without any architectural constraints. This improvement increases scalability and helps reduce total cost of ownership (TCO). For more information, see Volume attachment limits.

  • Faster volume attachment at scale
    PX-CSI improves performance by supporting parallel volume attachments. By default, the node plugin is configured to process 25 requests in parallel. It can be tuned using the NODE_STAGE_CONCURRENCY environment variable in the StorageCluster custom resource. For more information, see StorageCluster CRD reference.

  • Policy-based snapshots for FlashBlade
    PX-CSI now supports policy-based snapshots on FlashBlade. For more information, see Snapshot of FlashBlade PVC.

  • Support for Pure Storage Cloud Dedicated for AWS PX-CSI now integrates with Pure Storage Cloud Dedicated (PSC Dedicated) on AWS. This integration provides enterprise-grade storage capabilities in the cloud. For more information, see Use Pure Storage Cloud Dedicated as backend storage.

  • Support for NVMe CLI version 2.11
    PX-CSI now supports NVMe CLI version 2.11 on RHEL 9.6 or later.

  • Improved support for snapshot limits
    PX-CSI version 25.6.0 and earlier set a fixed limit of 64 snapshots per volume. Starting with 25.8.0, this limit is no longer enforced by PX-CSI. Snapshot limits now depend on the capabilities of the backend storage platform (FlashArray/FlashBlade).

  • ComponentK8sConfig: The ComponentK8sConfig custom resource allows configuration of resources, tolerations, and placement rules for all PX-CSI components. Configurations previously defined in the StorageCluster should now be migrated to the ComponentK8sConfig custom resource. For more information, see Configure resource limits, placements, tolerations, and nodeAffinity for PX-CSI components.

Resolved Issues

Issue NumberIssue DescriptionSeverity
PWX-43797Resolved a false-positive LicenseExpiring alert in PX-CSI. PX-CSI no longer performs license validity checks that previously triggered this alert due to 24-hour renewal behavior.Minor

Known Issues

  • PWX-47647: If the FlashArray is configured with both NVMe-RDMA and NVMe-TCP, and the NVMEOF-RDMA SAN type is specified during PX-CSI installation, PX-CSI incorrectly selects both nvme-tcp and nvme-roce interfaces for PureVolume. This occurs because the CSI driver filters NVMe interfaces without validating their service type. As a result, Pods attempting to mount the volume may remain stuck in the ContainerCreating phase with repeated FailedMount errors.

    Workaround: You can use the environment variable PURE_NVME_ALLOWED_CIDRS in the StorageCluster to specify a subnet with NVMe interfaces.

    Affected version: 25.8.0


  • PWX-47914: When using the Emulex Fibre Channel adapter, LUNs with a LUN ID greater than 255 will fail to attach due to an issue in decoding LUN ID.

    Workaround: No workaround is available.

    Affected Version: 25.8.0


  • PWX-47985: If a StorageCluster resource includes a toleration with operator: Exists, the upgrade to Portworx version 25.8.0 will fail. This occurs because such tolerations match all taints, which interferes with the CSI migration logic during upgrade.

    Workaround: Before upgrading, remove any toleration entries in the StorageCluster that use operator: Exists.

    Affected Version: 25.8.0


  • PWX-47994: In FlashBlade-only environments, px-node-plugin pods enter a CrashLoopBackOff state if the /etc/iscsi/initiatorname.iscsi file is missing on the node, even though iSCSI is not required.

    During startup, the CSI node plugin attempts to parse the initiatorname.iscsi file regardless of backend type. If the file is missing or contains invalid content, the driver fails to retrieve a TransportID and crashes.

    Workaround: Manually create an empty initiatorname.iscsi file on the affected nodes to bypass the parsing failure:

    sudo mkdir -p /etc/iscsi
    echo "InitiatorName=iqn.2025-01.com.example:empty-initiator" | sudo tee /etc/iscsi/initiatorname.iscsi

    Affected Version: 25.8.0


  • PWX-48084: FlashArray secure multi-tenancy API token does not work when using Fibre Channel (FC) protocol. The following error appears during volume provisioning:

    Warning ProvisioningFailed pxd.portworx.com_px-pure-csi-controller[...] failed to provision volume with StorageClass "px-fa-direct-access-pod": rpc error: code = Internal desc = flasharray backend provisioning failed: all potential backends failed to provision: <ip-address>: 'failed to list network interfaces: Failed to list network interfaces: Msg1: Operation not permitted.'

    Workaround: Use a FlashArray admin token. For more information, see the FlashArray without secure multi-tenancy tab in Set up user access in FlashArray.

    Affected Versions: 25.8.0