Containers and Kubernetes storage

Persistent data must outlive the Pod that uses it

Kubernetes makes applications replaceable by design. Stateful services therefore need a storage lifecycle that remains predictable through rescheduling, node maintenance, upgrades and failures.

Kubernetes requests storage; an integration layer fulfils it
POD A
POD B
POD C
PVC → STORAGECLASS → PROVISIONER OR ADMIN WORKFLOW
PERSISTENT VOLUME
EXTERNAL STORAGE

Kubernetes objects and the underlying storage system are separate operational layers.

A container filesystem is not a data-protection planWrites in the container layer can disappear when the container is replaced.
Persistence and availability are differentA retained volume can still become unavailable if its path or storage service fails.
StorageClass is a policy interfaceThe provisioner, reclaim policy, binding mode and backend determine what the class actually delivers.
Protocol support does not imply CSI supportAutomatic Kubernetes provisioning requires an independently supported and qualified integration.
Storage fundamentals

Use the right lifecycle for every data set

Kubernetes separates the application request from the storage resource. That abstraction is useful only when the underlying lifecycle and failure behaviour are understood.

E

Ephemeral storage

Scratch data, writable container layers, logs and some temporary volumes follow the Pod or node lifecycle.

  • Useful for caches and rebuildable working data
  • May be lost when a node fails
  • Needs requests, limits and capacity monitoring
PV

PersistentVolume

A PV represents storage made available to the cluster. It exists independently from the lifecycle of any individual Pod.

  • Can be created statically or dynamically
  • Has access modes, capacity and reclaim behaviour
  • Still depends on the backend and attachment method
C

PersistentVolumeClaim

A PVC is the workload request for capacity, access mode and a particular storage class.

  • Separates developers from backend details
  • Binds to a compatible PV
  • Does not by itself guarantee backup or high availability
Provisioning lifecycle

A StorageClass is only as capable as its provisioner

01 · REQUEST

Pod references a PVC

The application declares storage requirements without selecting a physical disk or target.

02 · POLICY

StorageClass is selected

It defines a provisioner plus backend-specific parameters and reclaim behaviour.

03 · DELIVERY

PV is created or matched

A supported driver or administrator workflow presents and records the actual storage resource.

04 · MOUNT

Node exposes it to the Pod

Attachment, mounting and path recovery must work wherever the workload may be scheduled.

Important: without a suitable provisioner, storage can still be statically presented and represented by pre-created PersistentVolumes. That is an operational model—not dynamic provisioning.

Stateful workload profiles

Different services need different access semantics

DATABASES

Predictable block or supported file access

Latency-led
  • Write durability and recovery must match the database.
  • Access modes and rescheduling behaviour require testing.
  • Application-level replication may overlap with storage protection.
SHARED APPLICATION DATA

A common namespace for several Pods

File semantics
  • NFS can provide shared file access where supported.
  • Locking, permissions and concurrent writers matter.
  • Metadata performance can dominate small-file workloads.
OBJECT-BASED SERVICES

Use S3 through the application API

Scale + API
  • S3 is normally accessed by the application, not mounted as a PV.
  • Suitable for artefacts, backups, media and data pipelines.
  • Credentials and tenant separation belong in the application design.
LOGS, CACHE & SCRATCH

Decide what is truly disposable

Ephemeral or retained
  • Local ephemeral storage may be fastest for rebuildable data.
  • Central logs require a separate export and retention path.
  • Eviction and node-loss behaviour should be explicit.
Data paths

Separate storage access from Kubernetes automation

A protocol may be suitable for a node while still requiring a separate driver, provisioner or administrator process to become a Kubernetes volume.

Access methodCommon container rolePotential advantageKubernetes integration to validate
NFSShared files and ReadWriteMany-style application designsFamiliar shared namespace across nodesStatic PV or supported external provisioner/CSI path, permissions, locking and failover remount behaviour
iSCSIPersistent block volumes for stateful applicationsMature IP block access and broad host supportQualified node initiator, multipathing, attachment workflow and supported provisioner
NVMe-oFLatency-sensitive block storage where the full host stack supports itEfficient NVMe access over TCP or RDMANo native euroNAS Kubernetes provisioning is claimed; qualify attachment, multipathing and the chosen CSI or administrator workflow
Ceph-backed servicesScale-out block, file or object storageDistributed protection and growth across failure domainsAny direct Kubernetes/Ceph integration needs its own supported driver, version matrix and operational validation
S3-compatible APIApplication objects, repositories, backup and data pipelinesApplication-level access without a mounted volumeSDK/CLI compatibility, credentials, endpoint availability and application consistency
Integration boundary

Do not infer a Kubernetes driver from a storage protocol

euroNAS can provide block, file and S3 services that may participate in a Kubernetes architecture. Kubernetes-native dynamic provisioning, snapshots, cloning, expansion and topology awareness depend on the exact CSI driver or provisioner selected for that environment.

Clear scope: this page does not claim a native euroNAS CSI driver, Kubernetes certification or automatic volume provisioning. Any integration layer must be selected, supported and tested independently.

Validate the complete chain

A successful mount is only the first test.

Kubernetes and CSI/provisioner versions
Node OS, initiator, multipath and time-outs
Attach, detach, reschedule and node-drain behaviour
Reclaim, expansion, snapshot and restore semantics
Backend failure, failover and recovery operation
Availability and protection

Stateful containers need more than a persistent mount

PATH RESILIENCE

Keep nodes connected

Redundant links, multipathing and correct time-outs protect the path where the block integration supports them.

STORAGE SERVICE

Survive a storage node fault

Automatic HA or distributed storage protection addresses a different layer from Pod rescheduling.

APPLICATION CONSISTENCY

Coordinate state

Databases and distributed applications may need quiescing or application-native protection.

BACKUP & DR

Recover earlier data

Retained, independent copies protect against deletion, corruption and wider failure boundaries.

Volume snapshots require explicit support: Kubernetes snapshot objects rely on CSI functionality and do not automatically make every backend snapshot application-consistent or independently recoverable.

Scale-out storage operations

Manage Ceph services through guided workflows

eEKAS can provide distributed block, file and S3 services for container platforms and other external consumers. Cluster creation, drives, pools, protection profiles, metadata placement and endpoints are managed through the graphical euroNAS interface.

No command-line prerequisiteRoutine Ceph provisioning and monitoring do not require prior Ceph command knowledge.
Independent storage scalingAdd qualified storage nodes as capacity and performance requirements grow.
Integration remains separateKubernetes provisioning and CSI support are not implied by the managed Ceph backend.
Reference architectures

Use euroNAS products at clearly defined infrastructure layers

These examples describe where storage and virtualisation can fit; they do not prescribe a particular Kubernetes distribution or CSI implementation.

ARCHITECTURE 1

Focused external storage

Standalone
Kubernetes worker nodes
euroNAS Premium

Block or file services for a compact environment where storage integration and complete-server recovery are handled by the surrounding architecture.

  • Suitable for statically managed or independently provisioned storage
  • Can be deployed as a physical or Virtual Storage Appliance
  • No automatic storage-controller failover within one standalone server
Explore euroNAS Premium →
ARCHITECTURE 2

Highly available external storage

Two-node HA
Redundant worker-node paths
euroNAS HA Cluster

Shared storage with automatic local service failover through a synchronous Mirror or dual-controller shared-storage design.

  • Multipathing for supported block access
  • NFS or block services according to application design
  • Separate asynchronous recovery and backup controls remain necessary
Explore HA Cluster →
ARCHITECTURE 3

Scale-out data services

No fixed two-node limit
Container platform and other clients
eEKAS Ceph storage

Distributed block, file and S3 services that scale independently from the Kubernetes compute layer and can serve several consumer groups.

  • Ceph protection across defined failure domains
  • Replication or erasure coding by workload
  • Any direct CSI integration must be independently qualified
Explore eEKAS →
ARCHITECTURE 4

Kubernetes nodes as virtual machines

Virtual infrastructure
Kubernetes control-plane and worker VMs
eEVOS virtualisation

eEVOS can host Kubernetes nodes as virtual machines and provide internal, external shared or Ceph-backed infrastructure according to the cluster design.

  • VM high availability and live migration
  • Integrated Backup & Disaster Recovery for protected VMs
  • Kubernetes application protection still needs its own design
Explore eEVOS →
Before choosing the architecture

Questions to settle before the first StorageClass

01 · ACCESS MODE

Does the workload need one writer, several readers or concurrent read/write access across nodes?

02 · PROVISIONING

Will volumes be created statically, through an external provisioner or through a qualified CSI driver?

03 · RESCHEDULING

What happens to attachment, mounting and application state when a Pod moves to another node?

04 · RECLAIM POLICY

Should data be deleted or retained when a PVC is removed, and who owns the cleanup process?

05 · RECOVERY

Which RPO and RTO apply to deletion, application corruption, node failure and site loss?

06 · SUPPORT MATRIX

Which Kubernetes, driver, node OS, application and storage versions are tested together?

Primary references

Kubernetes storage concepts

Use the current Kubernetes and integration documentation when validating the final deployment.

Architecture discussion

Bring the workload and integration plan

We can review access modes, node connectivity, storage protocols, availability, recovery and scale for a business container or Kubernetes environment.

Discuss your container storage architecture
Scroll to Top