| title | Kubernetes MountVolume SetUp failed | |||||
|---|---|---|---|---|---|---|
| slug | kubernetes-mountvolume-setup-failed | |||||
| technologies |
|
|||||
| severity | high | |||||
| tags |
|
|||||
| related |
|
|||||
| last_reviewed | 2026-06-27 |
Warning FailedMount kubelet
MountVolume.SetUp failed for volume "pvc-3a9f2c1e-...":
rpc error: code = Internal desc = Could not mount
"/dev/disk/by-id/...": mount failed: exit status 32
mount: /var/lib/kubelet/pods/.../mount: wrong fs type, bad option,
bad superblock ...
Warning FailedAttachVolume attachdetach-controller
AttachVolume.Attach failed for volume "pvc-3a9f2c1e-...":
rpc error: code = NotFound desc = volume not found
MountVolume.SetUp failed (often shown as a FailedMount event) means the
kubelet bound the PVC and the volume exists, but the volume could not be attached
to the node or mounted into the pod. The pod is stuck in ContainerCreating. This
is distinct from a Pending PVC: the claim is Bound; the failure is in the
attach/mount stage performed by the CSI node plugin on the target node.
- kubernetes (kubelet, CSI node plugin, attach/detach controller)
high — the pod cannot start without its mounted volume. For stateful workloads (databases, queues) this blocks the service until the mount succeeds.
- The volume is already attached to (and mounted on) another node — a stuck
ReadWriteOncevolume left behind by a previous pod that did not detach. - Filesystem mismatch or corruption (
wrong fs type, bad superblock), or the requestedfsTypedoes not match the volume. - The CSI node plugin daemonset is unhealthy or missing on the target node.
- A
subPathor mount path that does not exist, or permission/SELinux denial. - Underlying cloud volume was deleted out-of-band (
volume not found) or is in a different AZ than the node.
Mounting a CSI volume is a two-step dance: the attach/detach controller calls
ControllerPublishVolume to attach the disk to the node, then the kubelet calls
the node plugin's NodeStageVolume/NodePublishVolume to format (if needed) and
bind-mount it into the pod directory. A failure at attach surfaces as
FailedAttachVolume; a failure at mount surfaces as MountVolume.SetUp failed.
The most common production cause is RWO contention: a previous pod on another node
still holds the volume, so the new node's attach is rejected. Filesystem and
plugin errors show up directly in the mount exit status.
# The FailedMount/FailedAttachVolume event detail
kubectl describe pod <pod> -n <namespace>
# Is the volume attached elsewhere? (which node holds it)
kubectl get volumeattachment | grep <pv-name>
# CSI node plugin health on the target node
kubectl get pods -n kube-system -o wide | grep -i csi
# Kubelet mount errors on the node
journalctl -u kubelet -n 200 --no-pager | grep -iE 'mount|attach'Warning FailedMount kubelet MountVolume.SetUp failed ... wrong fs type, bad superblock
or, for RWO contention:
Multi-Attach error for volume "pvc-..." Volume is already exclusively attached
to one node and can't be attached to another
A healthy mount produces no FailedMount events and the pod proceeds past
ContainerCreating.
- For RWO multi-attach, ensure the old pod is fully terminated so the volume
detaches; if a node is dead, force-detach by deleting the stale
VolumeAttachmentafter confirming the old pod is gone. - For filesystem errors, verify the PV's
fsTypematches the volume and the filesystem is not corrupt; reformat only an empty volume. - For a missing/unhealthy CSI plugin, restore the node daemonset pod.
- For
volume not found, the backing disk was deleted — restore from snapshot or recreate the PV/PVC.
kubectl get pod <pod> -n <namespace> -w
# Expect: leaves ContainerCreating, mounts succeed, reaches Running 1/1.
kubectl exec <pod> -n <namespace> -- df -h /data- Use
StatefulSetwith stable identities and proper termination so RWO volumes detach cleanly on reschedule. - Monitor CSI node-plugin health on every node.
- Alert on
Multi-AttachandFailedMountevents. - Snapshot critical volumes so a deleted disk is recoverable.
kubernetes · storage · volume · csi · production