Skip to main content
Version: 3.2

Portworx with CSI

Summary and Key concepts

Summary:

This article provides an overview of the Container Storage Interface (CSI) and its integration with Portworx. CSI is a standardized interface for exposing storage systems to Kubernetes, allowing storage vendors to independently upgrade and enhance their drivers. With Portworx's CSI implementation, users can create and manage CSI-enabled persistent volumes, secure them with token authorization and encryption, take snapshots, and create sharedv4 volumes. The flexibility offered by CSI ensures that storage drivers can evolve without requiring updates to the Kubernetes or OpenShift orchestration systems.

Kubernetes Concepts:

  • CSI (Container Storage Interface): A standard for exposing arbitrary storage systems to containerized applications.
  • Persistent Volume: A piece of storage in the cluster that has been provisioned by an administrator or dynamically provisioned using a StorageClass.
  • StorageClass: A way to define different classes of storage in Kubernetes.
  • Snapshot: Allows capturing the state of a volume at a specific point in time.

Portworx Concepts:

  • Portworx CSI Driver: Portworx's implementation of the CSI standard to manage and expose its storage to Kubernetes clusters.
  • Sharedv4 Volumes: A type of Portworx volume that can be mounted simultaneously by multiple pods for shared storage use cases.

CSI, or Container Storage Interface, is a model for integrating storage system service with Kubernetes and other orchestration systems. Kubernetes has supported CSI since 1.10 as beta.

With CSI, Kubernetes gives storage drivers the opportunity to release on their schedule. This allows storage vendors to upgrade, update, and enhance their drivers without the need to update Kubernetes, maintaining a consistent, dependable, orchestration system.

Using Portworx with CSI, you can perform the following operations:

  • Create and use CSI-enabled persistent volumes
  • Secure your CSI-enabled volumes with token authorization and encryption defined at the StorageClass or the PVC level
  • Take snapshots of CSI-enabled volumes
  • Create sharedv4 CSI-enabled volumes