This page describes storage-related errors you might experience when using Backup for GKE, things to consider when performing the action, and steps on how to troubleshoot the issue.
Error 100010105: Failed to backup PersistentVolumeClaim - Disk referenced by PersistentVolume does not exist
Error 100010105 occurs when an attempt to back up a PersistentVolumeClaim
fails because it references a disk that doesn't exist, resulting in an error
message stating Failed to backup PersistentVolumeClaim - Disk referenced by PersistentVolume does not exist.
In Google Kubernetes Engine, PersistentVolumeClaims request storage from
PersistentVolumes. A PersistentVolume, in turn, represents a piece of
storage, often an underlying Compute Engine Persistent Disk. An error can occur
when a PersistentVolumeClaim is bound to a
PersistentVolume and the PersistentVolume's configuration specifies a
Compute Engine Persistent Disk. However, the actual disk with the name and
location specified in the PersistentVolume configuration cannot be found in
your Google Cloud project. Thus, Backup for GKE cannot proceed with backing up
a non-existent disk, and a failure occurs.
To resolve this error, use the following instructions:
Identify the problematic
PersistentVolumeClaimandPersistentVolume. The names of both the problematicPersistentVolumeClaimand its associatedPersistentVolumeare listed in thestate reasonfield of your failed Backup for GKE operation. We recommend documenting both thePersistentVolumeClaimname, its namespace, and the name of thePersistentVolume.Inspect the
PersistentVolume. To describe thePersistentVolume, use thePersistentVolumename you identified from the state reason field in the following command:kubectl describe pv PERSISTENTVOLUME_NAMEReplace
PERSISTENTVOLUME_NAMEwith the name of your PersistentVolume.In the output, examine the
sourcesection, specifically undercsi. This section describes theVolumeHandlethat thePersistentVolumeis trying to reference. For example:Source: Type: GCEPersistentDisk (a Persistent Disk resource in Google Compute Engine) PDName: my-non-existent-disk FSType: ext4 Partition: 0 ReadOnly: false In this example, the PD name is my-non-existent-disk. Source: Type: CSI (a Container Storage Interface (CSI) volume) Driver: pd.csi.storage.gke.io VolumeHandle: projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME ...In this example, the
VolumeHandlecontains the full path to the disk, including its name and location. For example,projects/my-gcp-project/zones/us-central1-a/disks/my-disk-name.Use the
VolumeHandleobtained from thePersistentVolumedescription to identify the disk name and zone.Verify that the disk exists in your Google Cloud project by using one of the following methods:
Zonal disk
If you're using a zonal disk, use Google Cloud CLI to run the
gcloud compute disks describecommand:gcloud compute disks describe DISK_NAME \ --zone=ZONE_NAME \ --project=PROJECT_IDReplace the following:
DISK_NAME: the name of the disk you obtained from thePersistentVolumedescription.ZONE_NAME: the zone of the disk you obtained from thePersistentVolumedescription.PROJECT_ID: your Google Cloud project ID.
Regional disk
If you're using a regional disk, use Google Cloud CLI to run the
gcloud compute disks describecommand:gcloud compute disks describe DISK_NAME \ --region=REGION_NAME \ --project=PROJECT_IDReplace the following:
DISK_NAME: the name of the disk you obtained from thePersistentVolumedescription.REGION_NAME: the region of the disk you obtained from thePersistentVolumedescription.PROJECT_ID: your Google Cloud project ID.
If you get a
Resource not foundorThe resource DISK_NAME was not founderror message, the disk doesn't exist. Use one of the following methods to resolve the issue depending on the scenario that best fits your needs:If the disk was accidentally deleted or misnamed and you want to keep the data or
PersistentVolumeClaim, or thePersistentVolumewas configured with an incorrect disk name, use one of the following methods to resolve the issue:Restore the disk: if you have a backup of the disk, restore it with the exact same name and location that the
PersistentVolumereferences.Create a new disk: if restoring the disk isn't an option, create a new disk with the same name and location that's in the
PersistentVolumeconfiguration.
If the
PersistentVolumeClaimorPersistentVolume, their data, or the application are no longer needed, we recommend removing the unneeded entity:- Delete the
PersistentVolumeClaim: delete thePersistentVolumeClaimby using thekubectlcommand-line tool to run thekubectl delete pvccommand:
kubectl delete pvc PVC_NAME -n NAMESPACEReplace the following:
PVC_NAME: the name of thePersistentVolumeClaimyou want to delete.NAMESPACE: the namespace of thePersistentVolumeClaimyou want to delete.
- Delete the
The
PersistentVolumeis still present after you delete thePersistentVolumeClaim: if thePersistentVolume'sPersistentVolumeReclaimPolicyis set toDelete, thePersistentVolumeis automatically deleted when thePersistentVolumeClaimis deleted. If thepersistentVolumeReclaimPolicyis set toRetain, you need to manually delete thePersistentVolumeafter thePersistentVolumeClaimis deleted. To delete thePersistentVolume, use thekubectlcommand-line tool to run thekubectl delete pvcommand:kubectl delete pv PV_NAMEReplace
PV_NAMEwith the name of thePersistentVolumeyou want to delete.
If the operation continues to fail, contact Cloud Customer Care for further assistance.