Configuration Reference
CSI driver flags
Section titled “CSI driver flags”The csi.flexfs start command accepts the following flags:
| Flag | Type | Default | Description |
|---|---|---|---|
--bindAddr | string | unix:///csi/csi.sock | Address to bind the CSI gRPC socket. Must use the unix:// scheme. |
--verbose, -v | bool | false | Enable verbose logging. |
Secret fields
Section titled “Secret fields”The Kubernetes Secret referenced by PersistentVolumes and StorageClasses supports the following fields in stringData:
| Field | Required | Description |
|---|---|---|
adminAddr | Yes | Address of the admin server (e.g., admin.example.com:443). For Community edition, use the free server address. |
token | Yes | Account token for authenticating with the admin server. |
secret | No | Encryption secret for volumes with end-to-end encryption enabled. |
Example
Section titled “Example”apiVersion: v1kind: Secretmetadata: name: flexfs-secret namespace: defaultstringData: adminAddr: "admin.example.com:443" token: "$TOKEN" secret: "$SECRET"StorageClass parameters
Section titled “StorageClass parameters”When using dynamic provisioning, the following parameters can be set on the StorageClass to control how new volumes are created:
Required secret references
Section titled “Required secret references”| Parameter | Description |
|---|---|
csiProvisionerSecretNamespace | Namespace of the Secret used for volume creation/deletion (controller operations). |
csiProvisionerSecretName | Name of the Secret used for volume creation/deletion. |
csiNodePublishSecretNamespace | Namespace of the Secret used for mounting (node operations). |
csiNodePublishSecretName | Name of the Secret used for mounting. |
Volume creation parameters
Section titled “Volume creation parameters”| Parameter | Type | Default | Description |
|---|---|---|---|
blockAPI | string | (auto) | Block storage API code (e.g., s3, gcs, abs, oci). |
blockSize | string | 4Mi | Block size. Accepts human-readable values: 256Ki, 512Ki, 1Mi, 2Mi, 4Mi, 8Mi, or raw byte values (262144, 524288, 1048576, 2097152, 4194304, 8388608). |
blockStore | string | (auto) | Block store ID (integer). |
compression | string | true | Enable block compression. Accepts true/false/yes/no. |
compressionAlgo | string | (lz4) | Compression algorithm: lz4 or zstd. Setting this implicitly enables compression. |
encryption | string | false | Enable end-to-end encryption. Requires a secret in the referenced Secret. |
flags | string | (none) | Volume-level mount flags (e.g., ro,noatime). |
metaStore | string | (auto) | Metadata store ID (integer). |
notes | string | (none) | Descriptive notes for the volume. |
provider | string | (auto) | Provider code (e.g., aws, gcp, azure, oci). |
proxyGroup | string | (none) | Proxy group ID or auto for automatic selection. |
region | string | (auto) | Region code (e.g., us-east-1). |
retention | string | (none) | Data retention period in seconds. Controls how long deleted data is preserved for time-travel. |
Example StorageClass
Section titled “Example StorageClass”apiVersion: storage.k8s.io/v1kind: StorageClassmetadata: name: flexfs-genomicsprovisioner: csi.flexfs.ioparameters: csiProvisionerSecretNamespace: default csiProvisionerSecretName: flexfs-secret csiNodePublishSecretNamespace: default csiNodePublishSecretName: flexfs-secret blockSize: "4Mi" compression: "true" compressionAlgo: "lz4" region: "us-east-1"Mount option passthrough
Section titled “Mount option passthrough”Mount options can be passed to the underlying mount.flexfs process via the mountOptions field on a PersistentVolume:
spec: mountOptions: - acl - xattr - rootsquash - verboseOptions are normalized to lowercase with hyphens removed before being passed to mount.flexfs via the -o flag.