Configure storage class mount options

Configure the WEKA CSI Plugin to use specific mount options for tailored storage control.

Overview

The CSI Plugin exposes mount options that control how WEKA volumes are presented to pods. These options provide fine-grained control over storage behavior, enabling performance tuning and predictable data management for containerized workloads.

Mount options are key–value pairs and flags specified at volume mount time. They override default filesystem behavior and affect caching, data integrity, and filesystem limits.

Use mount options to:

  • Optimize performance: Adjust caching and access semantics for read-heavy or write-intensive workloads (for example, noatime, readcache).

  • Enforce data integrity: Apply stricter consistency and reliability guarantees (for example, sync).

  • Resolve issues: Tune mount behavior to address performance bottlenecks or compatibility constraints.

Supported mount options

The CSI Plugin supports standard mount options except for the read-only (ro) option. Use the following table to identify appropriate settings for your workload.

Name
Description
Use case

sync

Forces data writes to disk before the mount completes.

Databases requiring high integrity.

noatime

Disables access timestamp updates.

Reduces write amplification.

nodev

Prevents the use of device nodes.

Security-sensitive environments.

noexec

Disallows program execution on the volume.

Security-focused deployments.

atime

Enables access time recording.

Monitoring file access patterns.

diratime

Enables directory access time recording.

Tracking directory access.

relatime

Updates access times relative to modification times.

Improved performance.

data=ordered

Ensures sequential writes flush to disk immediately.

Strict write ordering.

Apply custom mount options using the CSI Plugin

Define and apply custom mount options to optimize storage behavior for specific applications.

Before you begin

  • Ensure the Kubernetes environment is accessible.

  • Install and configure the kubectl command-line tool.

Procedure

  1. Create the StorageClass:

    • Create a YAML file named storageclass-wekafs-mountoptions.yaml.

    • Add the following configuration:

    • Apply the StorageClass:

  2. Create the CSI secret:

  3. Provision a new volume:

    • Apply your Persistent Volume Claim (PVC) manifest that references the new StorageClass:

  4. Deploy the application:

    • Create a deployment manifest file named csi-app-fs-mountoptions.yaml.

    • Define the container and reference the PVC:

    • Deploy the application:

  5. Validate the mount settings:

    • Access the application pod to check the mount status:

    • Verify the output displays the configured options:

Last updated