csi | ||
deploy/charts/rawfile-csi | ||
orchestrator | ||
protos | ||
templates | ||
.dockerignore | ||
.gitignore | ||
.gitlab-ci.yml | ||
CODE_OF_CONDUCT.md | ||
consts.py | ||
declarative.py | ||
Dockerfile | ||
GOVERNANCE.md | ||
LICENSE | ||
MAINTAINERS | ||
metrics.py | ||
rawfile_servicer.py | ||
rawfile_util.py | ||
rawfile.py | ||
README.md | ||
remote.py | ||
requirements.in | ||
requirements.txt | ||
SECURITY.md | ||
util.py |
RawFilePV
Kubernetes LocalPVs on Steroids
Install
helm install -n kube-system rawfile-csi ./deploy/charts/rawfile-csi/
Usage
Create a StorageClass
with your desired options:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: my-sc
provisioner: rawfile.hamravesh.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
Features
- Direct I/O: Near-zero disk performance overhead
- Dynamic provisioning
- Enforced volume size limit
- Thin provisioned
- Access Modes
- ReadWriteOnce
ReadOnlyManyReadWriteMany
- Volume modes
Filesystem
modeBlock
mode
- Volume metrics
- Supports fsTypes
- Online expansion: If fs supports it (e.g. ext4, btrfs)
- Online shrinking: If fs supports it (e.g. btrfs)
- Offline expansion/shrinking
- Ephemeral inline volume
- Snapshots: If the fs supports it (e.g. btrfs)