Almost all IT organizations will have containerized apps deployed along side traditional apps within the next few years. Many of these new apps will support critical business operations and require the same service levels as traditional apps. While APIs exist to connect containerized apps into enterprise class infrastructure, IT organizations need to build and support environments that can be fully automated and easily scaled. Dell Container Storage Modules (CSM) provide software modules that extend the capabilities of the CSI plugin to meet these requirements. Leveraging CSM allows enterprise storage data services to be exposed and consumed by new containerized apps. CSM with Dell infrastructure solutions provides an effective strategy to support enterprise class containerized app deployments.
What are Container Storage Modules?
CSMs are software modules for storage management that go beyond CSI functionality. The objective of these modules is to further leverage the CSI plug in in a way that exposes enterprise class storage features to Kubernetes users. CSM is a powerful way to improve the monitoring, observability, usability, resiliency, and data mobility for stateful containerized apps with Dell’s storage portfolio. CSM together with the CSI plugins combined with Dell’s app-aware, app-consistent backup and recovery solutions form the most comprehensive enterprise grade storage and data protection solutions for containers.
CSM helps organizations in a number of key ways. It extends enterprise storage to Kubernetes based containers and helps accelerate adoption of cloud native workloads. It enables a high performing, resilient enterprise storage foundation and provides advanced data services for replication, authorization, and recovery.
It also empowers Kubernetes developers and can help speed new app deployment and reduce software development times. Providing developers and administrators with a birds-eye-view of the CSM environment improves resource utilization and reduces complexity. It also standardizes Kubernetes management across deployments to support hybrid and multi-cloud operations strategies.
CSM is also an extremely powerful tool to help automate storage operations. Automation allows users to manage infrastructure “as code” and can help provide frictionless data collection and consumption. CSM brings new and traditional app deployment together and helps bridge the gap between container admins, developers, and traditional IT admins.
Dell’s CSM includes a set of 6 modules to provide additional capabilities beyond what is available with the CSI drivers. It includes;
- Observability – delivers a high-level view of the storage capacity and performance usage via Grafana dashboards to the Kubernetes users.
- Replication – enables array replication capabilities for Kubernetes users.
- Authorization – provides both storage and Kubernetes administrators the ability to apply RBAC for Dell CSI Drivers.
- Resiliency – designed to make Kubernetes applications more resilient to node failures.
- Volume Placement – analyzes capacity and automates volume placement for Kubernetes workloads
- Snapshots – Delivers additional snapshot capabilities such as group/crash consistent snapshots with referential integrity
Let’s take a look at each of these in more detail.
CSM Observability delivers a high-level view of the storage capacity and performance usage via Grafana dashboards to the Kubernetes users. Kubernetes administrators have insight into CSI Driver persistent storage topology, usage, and performance. Metrics data is collected at a fast rate (< 1 minute) pushed to the OpenTelemetry Collector, and exported in a format consumable by Prometheus. Topology data related to containerized volumes that are provisioned by a CSI Driver is also captured.
CSM Replication helps to implement a high availability architecture for business critical applications and it is a key component of any Disaster Recovery plan. Kubernetes users can decide that their StatefulApp will use a volume that is replicated on another site. Behind the scenes the replication module oversees creating the replicated volume, checking the replication process, and mounting the volumes to the workload. In case of a failover / failback, the data replicator will handle reconfiguring the replication group and remounting the volumes. CSM Replication supports stretched Kubernetes cluster (one cluster with nodes on the different sites) or replicated Kubernetes cluster (separate clusters on the different sites). It significantly simplifies the ability to choose the right disaster recovery plan for different workloads.
CSM Authorization enables storage administrators to limit and control storage consumption in Kubernetes environments. The authorization module is an independent service that is installed and owned by the storage administrator. Storage administrators will be able to apply quota and Roll-Based Access Control rules that instantly and automatically restrict cluster tenant’s usage of storage resources. The module does this by deploying a proxy between the CSI driver and the storage system to enforce role-based access and usage rules. The access is granted with an access token that can be revoked at any point in time. Quotas can be changed on the fly to limit or increase storage consumption from the different tenants. Logical resource isolation makes multi-tenant architecture real by enforcing Role Based Access Control on storage objects coming from multiple and independent Kubernetes cluster. Users of storage through CSM Authorization do not need to have storage admin root credentials to access the storage system, therefore, enabling provisioning operations to non admin users.
CSM Resiliency is designed to make Kubernetes applications that utilize persistent storage more resilient to failures. The first component of Resiliency is a Pod monitor that is specifically designed to protect stateful applications from various failures. It is not a standalone application, but rather is deployed as a sidecar to the CSI (Container Storage Interface) drivers, in both the driver’s controller pods and the driver’s node pods. Deploying CSM Resiliency as a sidecar allows it to make direct requests to the driver through the Unix domain socket that Kubernetes sidecars use to make CSI requests. The module is focused on detecting node failures (power failure), K8s control plane network failures and array I/O network failures and move the protected pods to hardware that is functioning correctly.
CMS Volume Placement module provides intelligent volume placing for Kubernetes workloads. The intelligent volume placements module will place the volume on the proper array corresponding to capacity and performance. Additional details on volume placement will be available upon module availability.
CSM Snapshot capabilities are part of the CSI plugins of the different Dell arrays and take advantage of state of-the-art snapshot technology to protect and re-purpose data. In addition to point-in-time recovery, these snapshots are writable and can be mounted for Test/Dev and analytics use cases without impacting the production. The Volumesnapshot group feature is built on top of the CSI snapshots to deliver additional capabilities such as group/ crash consistent snapshots with referential integrity.
The CSM Installer is an added feature included with CSM and offers Dell users a one stop shop to simplify CSI drivers’ and Container Storage Modules deployment, lifecycle management and tech support. The common installer allows all the modules and CSI drivers to be deployed from the online registry or a dark site.
Dell’s Container Storage Modules (CSM) brings powerful enterprise storage features and functionality to containers for easier adoption of cloud native workloads, improved productivity, and scalable operations. This release delivers software modules for storage management that provide developers with access to build automation for enhanced IT needs and other critical enterprise storage features like data replication across data centers, role-based access control authorization, observability and resiliency for disaster recovery and avoidance. CSM will offer full availability for all major storage products in the future. New releases will be coming on a quarterly basis.
Each of the modules will be available for download via the CSM installer found on GitHub.