Helm Chart Reference
This page documents all configurable values for the minio/aistor-volumemanager Helm chart.
Chart information
| Field | Value |
|---|---|
| Chart name | minio/aistor-volumemanager |
| Chart version | 0.1.0 |
| App version | 5.1.0 |
| Source | https://github.com/miniohq/directpv |
Global configuration
| Parameter | Type | Default | Description |
|---|---|---|---|
annotations |
object | {} |
Annotations applied to all resources. |
labels |
object | {} |
Labels applied to all resources. |
license |
string | "" |
Deprecated. License verification is no longer required. Accepted for backwards compatibility but ignored. |
Cluster configuration
| Parameter | Type | Default | Description |
|---|---|---|---|
forceOpenShift |
boolean | auto-detect | Override OpenShift auto-detection. If not set, the chart attempts auto-detection using API capabilities. |
forceLegacyFlag |
boolean | auto-detect | Override legacy DirectPV auto-detection. If not set, the chart auto-detects by checking for legacy volumes or migration labels. |
kubeletDirPath |
string | /var/lib/kubelet |
Custom kubelet directory path for non-standard Kubernetes installations. |
Image configuration
| Parameter | Type | Default | Description |
|---|---|---|---|
images.pullPolicy |
string | IfNotPresent |
Image pull policy for all container images. |
images.pullSecrets |
array | [] |
Image pull secrets for private registries. |
images.directpv |
string | See below | DirectPV container image. |
images.livenessprobe |
string | See below | Liveness probe container image. |
images.csiNodeDriverRegistrar |
string | See below | CSI Node Driver Registrar image. |
images.csiProvisioner |
string | See below | CSI Provisioner image. |
images.csiResizer |
string | See below | CSI Resizer image. |
Default images for Kubernetes
| Image | Default value |
|---|---|
directpv |
quay.io/minio/directpv:v5.1.0 |
livenessprobe |
quay.io/minio/livenessprobe:v2.17.0-0 |
csiNodeDriverRegistrar |
quay.io/minio/csi-node-driver-registrar:v2.15.0-0 |
csiProvisioner |
quay.io/minio/csi-provisioner:v6.0.0-0 |
csiResizer |
quay.io/minio/csi-resizer:v2.0.0-0 |
Controller configuration
The controller deployment manages CSI provisioning and resizing operations.
| Parameter | Type | Default | Description |
|---|---|---|---|
controller.replicas |
integer | 3 |
Number of controller pod replicas. |
controller.podAnnotations |
object | {} |
Annotations to apply to controller pods. |
controller.podLabels |
object | {} |
Labels to apply to controller pods. |
controller.hostNetwork |
boolean | false |
Enable host network namespace for controller pods. |
controller.podSecurityContext |
object | {} |
Pod-level security context for controller containers. |
Node server configuration
The node server DaemonSet runs on each node to manage local drives.
| Parameter | Type | Default | Description |
|---|---|---|---|
nodeserver.podAnnotations |
object | {} |
Annotations to apply to node server pods. |
nodeserver.podLabels |
object | {} |
Labels to apply to node server pods. |
nodeserver.hostNetwork |
boolean | false |
Enable host network namespace for node server pods. |
nodeserver.nodeSelector |
object | {} |
Node selector constraints for scheduling node server pods. |
nodeserver.tolerations |
array | [] |
Tolerations for scheduling node server pods on tainted nodes. |
nodeserver.seccompLocalhostProfile |
string | "" |
Seccomp localhost profile path for container security. |
Examples
Limit nodes with node selector
Restrict DirectPV to specific nodes using labels:
nodeserver:
nodeSelector:
aistor.min.io/pool-id: "1"
Allow scheduling on control plane nodes
Add tolerations to schedule on tainted nodes:
nodeserver:
tolerations:
- key: "node-role.kubernetes.io/control-plane"
operator: "Exists"
effect: "NoSchedule"
Configure seccomp profile
Enable seccomp security profile:
nodeserver:
seccompLocalhostProfile: "profiles/seccomp.json"
You must load the seccomp profile on nodes before enabling this option.
See the security profiles documentation.
Use private registry
Configure image pull secrets for air-gapped environments:
images:
pullSecrets:
- name: my-registry-secret
directpv: my-registry.example.com/minio/directpv:v5.1.0
livenessprobe: my-registry.example.com/minio/livenessprobe:v2.17.0-0
csiNodeDriverRegistrar: my-registry.example.com/minio/csi-node-driver-registrar:v2.15.0-0
csiProvisioner: my-registry.example.com/minio/csi-provisioner:v6.0.0-0
csiResizer: my-registry.example.com/minio/csi-resizer:v2.0.0-0
Complete custom values file
Example aistor-volumemanager-values.yaml with common customizations:
annotations:
environment: production
labels:
team: storage
nodeserver:
nodeSelector:
node-role.kubernetes.io/storage: "true"
tolerations:
- key: "dedicated"
operator: "Equal"
value: "storage"
effect: "NoSchedule"
seccompLocalhostProfile: "directpv-seccomp.json"
controller:
replicas: 3
podAnnotations:
prometheus.io/scrape: "true"
Install using the custom values:
helm install directpv minio/aistor-volumemanager -f aistor-volumemanager-values.yaml