StorageClass Parameters¶
All MeshStor StorageClass parameters, their types, defaults, and constraints. Parameters are set in the parameters field of a Kubernetes StorageClass resource.
Provisioner¶
Parameters¶
| Parameter | Type | Default | Minimum | Description |
|---|---|---|---|---|
numberOfCopies |
string (integer) | "2" |
"1" |
Number of data replicas. Each copy is placed on a different node. Higher values increase fault tolerance and storage overhead. |
drivesPerCopy |
string (integer) | "1" |
"1" |
Number of drives used per copy. Values >1 create RAID10 (striped mirrors). Requires enough nodes with available drives. |
memberMissingTimeout |
string (integer, seconds) | "900" |
"60" |
How long to wait before replacing a missing RAID member. Lower values recover faster but may trigger unnecessary rebuilds during transient failures. |
String values
All parameters are strings in the Kubernetes StorageClass API. MeshStor parses them as integers internally. Invalid values (non-numeric, below minimum) return an InvalidArgument error on volume creation.
StorageClass Fields¶
These standard Kubernetes StorageClass fields are relevant to MeshStor:
| Field | Recommended Value | Notes |
|---|---|---|
reclaimPolicy |
Delete |
Retain is supported but leaves orphaned partitions on drives |
allowVolumeExpansion |
true |
Set to false when drivesPerCopy > 1 (expansion not supported for RAID10) — see Volume Expansion |
volumeBindingMode |
Immediate (default) |
WaitForFirstConsumer is not currently supported |
Effective RAID Levels¶
numberOfCopies |
drivesPerCopy |
RAID Level | Total Partitions | Storage Overhead | Fault Tolerance |
|---|---|---|---|---|---|
1 |
1 |
RAID1 (1+placeholder) | 2 | 2x | Relocatable, no redundancy |
2 |
1 |
RAID1 | 2 | 2x | 1 node failure |
3 |
1 |
RAID1 | 3 | 3x | 2 node failures |
2 |
2 |
RAID10 | 4 | 2x | 1 failure per mirror |
Example¶
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: mesh-2copy-tcp
provisioner: io.meshstor.csi.mesh
parameters:
numberOfCopies: "2"
drivesPerCopy: "1"
memberMissingTimeout: "900"
reclaimPolicy: Delete
allowVolumeExpansion: true
See StorageClass Examples for ready-to-use configurations.
What's Next¶
- StorageClass Examples — copy-paste configurations
- Volume Expansion — grow a volume online without downtime
- Limitations — feature support and roadmap
- CRD Specification — how volumes are tracked after provisioning