Plug this: Dell open-sources container storage software linking its arrays to CSI pipes

Dell is open-sourcing Container Storage Modules (CSM) — software linking enterprise storage services on its arrays to containers through the Kubernetes CSI plug-in.

The CSI (Container Storage Interface) exposes block and file storage systems to Kubernetes-orchestrated containers. Storage suppliers such as Dell can produce CSI plugins to link their storage systems to containers needing storage services without having to write core Kubernetes code. Dell’s CSMs are additional plug-ins between CSI and its arrays, used to expose six services to containers.

A blog by Dell’s Magi Kapoor, Director, Product Management, states: “Container Storage Modules aim to provide additional capabilities beyond the standard lifecycle management of volumes and snapshots for Kubernetes workloads that is currently available with Container Storage Interface (CSI) drivers.“

The announcement is part of Dell’s Project Karavi, announced in December last year, as an initiative to add enterprise storage features to the Kubernetes CSI interface.

The CSMs inject storage code into Kubernetes so users can access features of Dell’s PowerMax (high-end block and file), PowerStore (mid-range unified file and block), PowerScale (scale-out filers), PowerFlex (HCI Software) and Unity XT (pre-PowerStore unified file and block) arrays.

The six additional services are:

  • Observability — delivers a high-level view of storage capacity and performance usage via Grafana dashboards to the Kubernetes users. Kubernetes admins get insight into CSI Driver persistent storage topology, usage, and performance.
  • Replication — enables array replication to implement a high availability/disaster recovery architecture.
  • Authorization — gives storage administrators the ability to limit and control storage consumption in Kubernetes environments by applying quotas and Role-Based Access Control rules that instantly and automatically restrict cluster tenants’ usage of storage resources.
  • Resiliency — designed to make Kubernetes applications more resilient by detecting node failures (power failure), K8s control plane network failures and array I/O network failures, and move the protected pods to functioning hardware.
  • Volume Placement — analyses capacity and automates volume placement for Kubernetes workloads.
  • Snapshots — Built on top of the CSI snapshot feature, this module delivers additional features such as group/crash consistent snapshots with referential integrity. 

Each of the six modules plus all CSI drivers are available for download from GitHub, such as CSM for authorization. There is also a CSM installer. A CSM FAQ on GitHub supplies more information as well as a CSM module-storage array coverage table: 

Not all arrays are covered by all the CSM modules yet.

There’s a short-term CSM roadmap there as well.