This set of pages describes DirectPV, a Container Storage Interface (CSI) for direct attached storage made by MinIO.
DirectPV consists of two primary components:
- The DirectPV CSI Driver installed directly to the Kubernetes cluster that provisions local volumes
- The DirectPV Plugin installed on the local machine to manage the DirectPV CSI Driver through the command line interface
At the basic level, DirectPV is a distributed persistent volume manager. DirectPV is not a storage system like a SAN (Storage Area Network) or a NAS (Network Attached Storage). Instead, you use DirectPV to discover, format, mount, schedule and monitor drives across servers in a distributed environment.
DirectPV uses these mounted drives to create persistent volumes (PV) that Kubernetes uses to fulfill persistent volume claims (PVCs).
Distributed data stores such as object storage, databases, and message queues benefit the most from direct attached storage. These solutions, built for the distributed environment, should handle high availability and data durability by themselves. Running such data stores on traditional SAN- or NAS-based CSI drivers adds an unnecessary layer of replication or erasure coding, resulting in extra network hops in the data path. Such additional layers of disaggregation result in increased complexity and poor performance.