Cloud Block Storage Caps Your Performance

Cloud disk APIs limit IOPS and throughput per instance — regardless of how much backend storage you attach. Databases stall, GPUs sit idle waiting on I/O, and teams overprovision expensive provisioned disk to work around the ceiling.

Kubernetes makes it harder: stateful workloads need fast, HA persistent volumes with per-tenant guardrails, but managed clusters offer no high-performance shared block tier that bypasses the per-instance disk limits.

MayaScale delivers disaggregated NVMe block storage over standard NVMe-over-TCP, with a Kubernetes CSI driver, flexible pools, and ephemeral-SSD protection — 2M+ IOPS per node at sub-millisecond latency, inside your own cloud account.

Benefits

  • 2M+ IOPS per node, sub-millisecond latency
  • Network-attached — not limited by per-instance cloud disk caps
  • Kubernetes CSI for EKS, GKE, and AKS — zero client footprint
  • Ephemeral-SSD protected — HA + DR to cold object storage
  • Runs in your own cloud — full data sovereignty
Disaggregated NVMe Block, Kubernetes-Native
Clients — Databases · Vector DBs · Kubernetes Pods · GPU VMs
NVMe-oF / TCPiSCSI Standard kernel nvme-tcp — no proprietary client
↓ ↓ ↓ ↓
MayaScale Block Engine Millions of IOPS · sub-millisecond · per-volume QoS · active-active HA
Server-side RAID10 RAID1 mirror across nodes for HA · client RAID0 stripe for throughput
Bypasses cloud disk API caps Connects over the VM network — limited by bandwidth, not the per-instance disk API
Storage Node A — local NVMeRAID1 mirror
Storage Node B — local NVMeRAID1 mirror
Manage & Deploy
Kubernetes CSIEKS · GKE · AKS — NVMe-oF block volumes
TerraformDeploy as code · Marketplace
Web GUImayagui console
CLI & APImayacli · REST

High-performance block storage, Kubernetes-native

MayaScale presents standard NVMe-over-TCP block devices and a Kubernetes CSI driver, so databases, vector stores, and stateful workloads get sub-millisecond block storage on any cluster — without a proprietary client and without the per-instance disk caps of native cloud disk.

Kubernetes-Native — CSI for EKS, GKE, and AKS

A CSI driver provisions block volumes as PersistentVolumes on Amazon EKS, Google GKE, Azure AKS, and self-managed Kubernetes. A single StorageClass pool parameter names the backend pool; the volume kind is auto-derived. Dynamic provisioning, snapshots, clones, online expansion, and per-volume QoS.

NVMe-over-TCP — Zero Client Footprint, No-Touch Networking

Clients connect with the standard in-kernel Linux nvme-tcp initiator — no proprietary agent, no special NICs, no switch configuration. Because storage is served over the VM network rather than the cloud's block-disk service, aggregate throughput scales with network bandwidth instead of the fixed per-instance limits native cloud disks impose.

Flexible Storage Pools — ZFS, LVM, or RAID

Choose the backend that fits the workload: a ZFS zpool mirror (FSx-style data services), an LVM volume group (thin or thick), or vanilla mdadm RAID1 volumes — selected per StorageClass, with the volume kind derived automatically.

Sub-Millisecond, 2M+ IOPS per Node

Server-side RAID10 — RAID1 mirroring across nodes for HA, client-side RAID0 striping for throughput — delivers 2M+ IOPS per node at sub-millisecond latency, scaling with added nodes and clients.

Per-Volume Guardrails, Sovereign

IOPS and throughput limits set per volume via StorageClass and enforced below the application — noisy-neighbor isolation for multi-tenant clusters. Everything runs on standard cloud VMs inside your own account; your data never leaves your cloud.

Ephemeral SSD Protection — HA, DR to Object, and Drain

Local NVMe is fast but ephemeral. MayaScale protects it in layers: a 2-node RAID1 mirror for drive/node failure, automatic replication to a cold pool on standard object storage (S3 / Blob / GCS) for DR, and a CSI drain service that evacuates volumes to the cold pool before planned shutdown or scale-in — so data survives instance stop and termination.

Instance — single VM, no separate storage server PODs CSI driver serves NVMe pool hot · ephemeral Cold pool on this instance drain rehydrate mayascale-drain service triggers on shutdown vdevs S3 buckets external

MayaScale Architecture

Architectural AttributeDescription
Disaggregated NVMe Block NVMe-over-TCP block storage served from local NVMe on standard cloud VMs — compute and storage scale independently.
Kubernetes CSI Driver Provisions block volumes as PersistentVolumes on Amazon EKS, Google GKE, Azure AKS, and self-managed Kubernetes.
No Proprietary Client or Agent Uses the standard in-kernel Linux nvme-tcp initiator; the CSI node plugin is the only Kubernetes component.
Network-Attached Performance Serves storage over the VM network (NVMe-oF/TCP) rather than the cloud block-disk service, so throughput scales with network bandwidth instead of the fixed per-instance IOPS/throughput limits native cloud disks impose.
Server-side RAID10 RAID1 mirror across storage nodes for high availability; client-side RAID0 stripe for aggregate throughput.
Flexible Storage Pools ZFS zpool mirror (FSx-style), LVM volume group (thin/thick), or mdadm RAID1 — selected per StorageClass, volume kind auto-derived.
Cold Object Tier (DR) Automatic replication to a cold pool on standard object storage (S3 / Blob / GCS) for disaster recovery and ephemeral-SSD durability.
CSI Drain to Cold Pool A drain service evacuates volumes to the cold object pool before planned shutdown or scale-in, so data survives instance stop and termination.
Per-Volume QoS IOPS and throughput guardrails set per volume via StorageClass, enforced in the storage layer.
Active-Active HA Both nodes serve traffic; automatic failover with multipath for volume continuity.
Performance 2M+ IOPS per node at sub-millisecond latency; scales by adding storage nodes and clients.
Deploy on VM or Cloud Runs as software on standard cloud VMs in AWS, Google Cloud, and Microsoft Azure.
Data Sovereignty Runs in your own cloud account; data stays on your storage nodes, never a vendor backend.
Powers Zettabranch MayaScale is the storage engine beneath Zettabranch branchable Postgres — a database per agent.

Kubernetes CSI & Data Services

CSI / KubernetesDescription
Managed & self-managedAmazon EKS, Google GKE, Azure AKS, and self-managed / k3s Kubernetes.
StorageClass pool parameterNames the backend pool (ZFS mirror, LVM thin/thick, mdadm RAID1, or cold object); the volume kind is auto-derived.
Dynamic provisioningStorageClass-driven creation of NVMe-oF block PersistentVolumes on demand.
Snapshots & clonesCSI VolumeSnapshots and writable clones for backups, dev/test, and fast restores.
Online expansionGrow volumes in place without downtime.
Per-volume QoSIOPS / throughput limits set per StorageClass, enforced below the application.
Access modesRaw block and filesystem volumes; multipath for HA continuity across failover.
Data Protection & DurabilityDescription
RAID1 mirroringCross-node mirror for high availability and drive/node failure tolerance.
Active-Active HABoth nodes serve traffic with automatic failover and multipath continuity.
DR to cold object poolAutomatic replication to a cold pool on standard object storage (S3 / Blob / GCS) for disaster recovery.
CSI drain to cold poolEvacuates volumes to the cold object pool before planned shutdown or scale-in — ephemeral NVMe data survives instance stop and termination.
EncryptionAt rest and in transit.
WorkloadsExamples
DatabasesPostgreSQL, MySQL, MongoDB, Cassandra — consistent sub-millisecond block.
AI / MLVector databases, KV-cache tiers, and training scratch / checkpoint volumes.
Kubernetes & platformsPersistent volumes for any stateful workload on EKS / GKE / AKS; the engine beneath Zettabranch branchable Postgres.
Programs & Partnerships
Google Cloud Select Technology Partner NVIDIA Inception Program
Available on Amazon Web Services, Microsoft Azure, and Google Cloud Marketplace, and via Terraform.   sales@zettalane.com