Container Storage Interface (CSI) Options

Information on CSI

The Kubernetes Container Storage Interface (CSI) provides a consistent mechanism for accessing block and file storage devices in containerized workloads. CSI provides for the support of StorageClasses, PersistentVolumeClaims, and PersistentVolumes objects. Developers create new drivers accessing the storage devices using these objects. Using these objects to provision persistent storage, a Kubernetes service developer, does not need to know the inner workings of the devices. Refer to the CSI Introduction, for more information on creating StorageClasses, PersistentVolumeClaims and provisioning storage with PersistentVolumes.

Additional CSI Third Party Storage Providers

Using the Kubernetes CSI and third party drivers, you can access local volumes and other storage devices in your data center. Possible storage and third party driver options:

Portworx

Portworx is a solution for running stateful containers, designed with DevOps in mind. With Portworx, you can manage any database or stateful service on any infrastructure using Kubernetes. Portworx solves the five most common problems DevOps teams encounter when running stateful services in production: persistence, high availability, data automation, security, and support for multiple data stores and infrastructure.

Portworx offers the following features:

  • Provision PersistentVolumes and PersistentVolumeClaims.
  • Support for VolumeSnapShot to create volume snapshots.
  • Ensure token authorization and encryption for PersistenVolumeClaim and StorageClass objects.
  • Support for sharing volumes.

Pure Storage

Pure Storage provides dynamic storage provisioning capabilities for stateful applications on demand.

Pure Storage offers the following features:

  • On demand automated container storage.
  • File and block on shared infrastructure.
  • Seamless scaling across arrays without the need for manual intervention.
  • Automatic failover that does not disrupt current running services.

Hedvig

The Hedvig Distributed Storage Platform provides a modern software solution that lets you tailor a flexible and efficient data management system built on industry-standard x86 server hardware to support any application, hypervisor, container, or cloud.

Hedvig offers the following features:

  • Dynamic provisioning of application-tailored storage for containers.
  • Data persistence and always-available volumes, even for migrated containers.
  • Support for containers, VMs, and bare metal. This eliminates the need to replace or introduce additional storage silos.
  • Hybrid cloud and multi-cloud applications.

Mayadata OpenEBS

MayaData offers software to accelerate the building and operations of stateful applications on Kubernetes based clouds, whether on-premises, on public or hybrid clouds. Mayadata leverages the open source OpenEBS and other open source components.

OpenEBS is the leading open-source project for container-attached and container-native storage on Kubernetes. OpenEBS adopts a Container Attached Storage (CAS) approach, where each workload is provided with a dedicated storage controller. OpenEBS implements granular storage policies and isolation that enables users to optimize storage for each specific workload.

OpenEBS runs in user space and does not have any Linux kernel module dependencies.

NOTE: Features and functionality implemented may vary among developers and their drivers. Refer to vendor documentation on specific drivers for more information.

CSI Driver information

For information on CSI and CSI drivers, refer to the following information: