Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/minio/directpv
Simple Kubernetes CSI driver for Direct Attached Storage :minidisc:
https://github.com/minio/directpv
csi csi-driver jbod kubernetes minio stateful storage
Last synced: 6 days ago
JSON representation
Simple Kubernetes CSI driver for Direct Attached Storage :minidisc:
- Host: GitHub
- URL: https://github.com/minio/directpv
- Owner: minio
- License: agpl-3.0
- Created: 2020-06-17T23:09:16.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-04-22T11:59:30.000Z (7 months ago)
- Last Synced: 2024-04-22T12:55:27.717Z (7 months ago)
- Topics: csi, csi-driver, jbod, kubernetes, minio, stateful, storage
- Language: Go
- Homepage: https://directpv.io
- Size: 7.33 MB
- Stars: 517
- Watchers: 19
- Forks: 79
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DirectPV
[DirectPV](https://github.com/minio/directpv) is a [CSI](https://kubernetes.io/blog/2019/01/15/container-storage-interface-ga/) driver for [Direct Attached Storage](https://en.wikipedia.org/wiki/Direct-attached_storage). In a simpler sense, it is a distributed persistent volume manager, and not a storage system like SAN or NAS. It is useful to *discover, format, mount, schedule and monitor* drives across servers.
Distributed data stores such as object storage, databases and message queues are designed for direct attached storage, and they handle high availability and data durability by themselves. Running them on traditional SAN or NAS based CSI drivers (Network PV) adds yet another layer of replication/erasure coding and extra network hops in the data path. This additional layer of disaggregation results in increased-complexity and poor performance.
![Architecture Diagram](https://github.com/minio/directpv/blob/master/docs/images/architecture.png?raw=true)
## Quickstart
1. Install DirectPV Krew plugin
```sh
$ kubectl krew install directpv
```2. Install DirectPV in your kubernetes cluster
```sh
$ kubectl directpv install
```3. Get information of the installation
```sh
$ kubectl directpv info
```4. Add drives
```sh
# Probe and save drive information to drives.yaml file.
$ kubectl directpv discover# Initialize selected drives.
$ kubectl directpv init drives.yaml
```5. Deploy a demo MinIO server
```sh
$ curl -sfL https://github.com/minio/directpv/raw/master/functests/minio.yaml | kubectl apply -f -
```## Further information
Refer [detailed documentation](./docs/README.md)## Join Community
DirectPV is a MinIO project. You can contact the authors over the [slack channel](https://slack.min.io/)## License
DirectPV is released under GNU AGPLv3 license. Refer the [LICENSE document](https://github.com/minio/directpv/blob/master/LICENSE) for a complete copy of the license.