Skip to main content

Storage Performance

Purpose: For platform engineers, documents storage I/O benchmarks, CSI driver tuning, and provisioning latency for openCenter-supported storage backends.

Storage Backend Benchmarks

BackendSequential ReadSequential WriteRandom Read (4K)Random Write (4K)
Longhorn (3 replicas, NVMe)1.2 GB/s800 MB/s95K IOPS60K IOPS
Longhorn (3 replicas, SSD)550 MB/s350 MB/s45K IOPS25K IOPS
OpenStack Cinder (SSD)600 MB/s400 MB/s50K IOPS30K IOPS
vSphere VMDK (SAN)800 MB/s500 MB/s60K IOPS35K IOPS

Tested with fio, 8 threads, queue depth 32.

Longhorn Tuning

ParameterDefaultTunedEffect
numberOfReplicas32 (non-critical)33% write throughput gain
dataLocalitydisabledbest-effortReduces network hops for reads
guaranteedInstanceManagerCPU12%25%Prevents I/O stalls under load
storageOverProvisioningPercentage200150Tighter capacity planning

PV Provisioning Latency

BackendProvision Time (p95)Notes
Longhorn< 3sPre-existing disk nodes
Cinder< 8sAPI + volume attach
vSphere< 12sVMDK creation + attach

Recommendations

  • Use NVMe-backed nodes for etcd and databases
  • Set dataLocality: best-effort for read-heavy workloads
  • Separate storage pools: system (platform services) vs. workload (application PVs)
  • Monitor longhorn_volume_actual_size_bytes to detect over-provisioning
  • Pre-warm volumes for latency-sensitive workloads by writing zeroes post-provision