Home

StorageClasses

StorageClass is a Kubernetes resource that describes a class of storage offered in a cluster. It defines how storage should be provisioned and managed for PersistentVolumeClaims, allowing administrators to provide dynamic, provider-specific storage without manually creating PVs.

A StorageClass includes fields such as provisioner (the driver that provisions volumes), parameters (driver-specific settings), reclaimPolicy

Workflow: when a PVC references a StorageClass, Kubernetes calls the provisioner to create a matching PV and

VolumeBindingMode controls when provisioning and binding occur (Immediate vs WaitForFirstConsumer). ReclaimPolicy determines whether the PV is

(what
happens
to
a
PV
when
the
PVC
is
released),
volumeBindingMode,
and
allowedTopologies.
The
provisioner
may
be
a
cloud
provider
driver
(for
example,
AWS
EBS
or
GCE
PD)
or
a
container
storage
interface
(CSI)
driver.
Some
fields
are
optional,
and
features
vary
by
driver.
binds
the
PVC
to
that
PV.
If
no
StorageClass
is
specified
but
a
defaultStorageClass
exists,
the
default
is
used
automatically.
If
no
StorageClass
is
present
and
no
default
exists,
dynamic
provisioning
may
fail,
and
manual
PV
creation
is
required.
deleted
or
retained
when
the
PVC
is
deleted.
AllowedTopologies
constraining
storage
to
certain
nodes
or
zones
enables
multi-zone
or
regional
storage.
StorageClasses
enable
management
of
storage
types
across
clouds
and
on-premises,
while
remaining
transparent
to
applications.