En esta página, se describen los errores relacionados con el almacenamiento que puedes experimentar cuando usas Copia de seguridad para GKE, los aspectos que debes tener en cuenta cuando realizas la acción y los pasos para solucionar el problema.
Error 100010105: No se pudo crear una copia de seguridad de PersistentVolumeClaim. No existe el disco al que hace referencia PersistentVolume.
El error 100010105
se produce cuando falla un intento de crear una copia de seguridad de un PersistentVolumeClaim
porque hace referencia a un disco que no existe, lo que genera un mensaje de error que indica Failed to backup PersistentVolumeClaim - Disk referenced by PersistentVolume does not exist
.
En Google Kubernetes Engine, PersistentVolumeClaims
solicita almacenamiento de PersistentVolumes
. A su vez, un PersistentVolume
representa una unidad de almacenamiento, a menudo un disco persistente subyacente de Compute Engine. Se puede producir un error cuando un PersistentVolumeClaim
está vinculado a un PersistentVolume
y la configuración del PersistentVolume
especifica un disco persistente de Compute Engine. Sin embargo, no se puede encontrar el disco real con el nombre y la ubicación especificados en la configuración de PersistentVolume
en tu proyecto de Google Cloud . Por lo tanto, la copia de seguridad para GKE no puede continuar con la copia de seguridad de un disco inexistente y se produce un error.
Para resolver este error, sigue estas instrucciones:
Identifica los elementos
PersistentVolumeClaim
yPersistentVolume
problemáticos. Los nombres delPersistentVolumeClaim
problemático y suPersistentVolume
asociado se enumeran en el campostate reason
de la operación de Copia de seguridad para GKE fallida. Recomendamos documentar el nombre dePersistentVolumeClaim
, su espacio de nombres y el nombre dePersistentVolume
.Inspecciona el
PersistentVolume
. Para describir elPersistentVolume
, usa el nombrePersistentVolume
que identificaste en el campo de motivo del estado en el siguiente comando:kubectl describe pv PERSISTENTVOLUME_NAME
Reemplaza
PERSISTENTVOLUME_NAME
por el nombre de tu PersistentVolume.En el resultado, examina la sección
source
, específicamente encsi
. En esta sección, se describe elVolumeHandle
al que intenta hacer referencia elPersistentVolume
. Por ejemplo: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 ...
En este ejemplo,
VolumeHandle
contiene la ruta de acceso completa al disco, incluidos su nombre y ubicación. Por ejemplo,projects/my-gcp-project/zones/us-central1-a/disks/my-disk-name
Usa el
VolumeHandle
que obtuviste de la descripción dePersistentVolume
para identificar el nombre y la zona del disco.Verifica que el disco exista en tu proyecto Google Cloud con uno de los siguientes métodos:
Disco zonal
Si usas un disco zonal, usa Google Cloud CLI para ejecutar el comando
gcloud compute disks describe
:gcloud compute disks describe DISK_NAME \ --zone=ZONE_NAME \ --project=PROJECT_ID
Reemplaza lo siguiente:
DISK_NAME
: Es el nombre del disco que obtuviste de la descripción dePersistentVolume
.ZONE_NAME
: Es la zona del disco que obtuviste de la descripción dePersistentVolume
.PROJECT_ID
: Es el ID de tu proyecto de Google Cloud .
Disco regional
Si usas un disco regional, usa Google Cloud CLI para ejecutar el comando
gcloud compute disks describe
:gcloud compute disks describe DISK_NAME \ --region=REGION_NAME \ --project=PROJECT_ID
Reemplaza lo siguiente:
DISK_NAME
: Es el nombre del disco que obtuviste de la descripción dePersistentVolume
.REGION_NAME
: Es la región del disco que obtuviste de la descripción dePersistentVolume
.PROJECT_ID
: Es el ID de tu proyecto de Google Cloud .
Si recibes un mensaje de error
Resource not found
oThe resource DISK_NAME was not found
, significa que el disco no existe. Usa uno de los siguientes métodos para resolver el problema según la situación que mejor se adapte a tus necesidades:Si el disco se borró o se le cambió el nombre por accidente y quieres conservar los datos o
PersistentVolumeClaim
, o si elPersistentVolume
se configuró con un nombre de disco incorrecto, usa uno de los siguientes métodos para resolver el problema:Restablece el disco: Si tienes una copia de seguridad del disco, restablécela con el mismo nombre y ubicación a los que hace referencia
PersistentVolume
.Crea un disco nuevo: Si no es posible restablecer el disco, crea uno nuevo con el mismo nombre y ubicación que se encuentran en la configuración de
PersistentVolume
.
Si ya no se necesitan el
PersistentVolumeClaim
o elPersistentVolume
, sus datos o la aplicación, te recomendamos que quites la entidad innecesaria:- Borra el
PersistentVolumeClaim
: Borra elPersistentVolumeClaim
con la herramienta de línea de comandoskubectl
para ejecutar el comandokubectl delete pvc
:
kubectl delete pvc PVC_NAME -n NAMESPACE
Reemplaza lo siguiente:
PVC_NAME
: Es el nombre delPersistentVolumeClaim
que deseas borrar.NAMESPACE
: Es el espacio de nombres del objetoPersistentVolumeClaim
que deseas borrar.
- Borra el
El
PersistentVolume
sigue presente después de que borras elPersistentVolumeClaim
: Si elPersistentVolumeReclaimPolicy
delPersistentVolume
está configurado comoDelete
, elPersistentVolume
se borra automáticamente cuando se borra elPersistentVolumeClaim
. SipersistentVolumeReclaimPolicy
se configura comoRetain
, debes borrar manualmentePersistentVolume
después de que se borrePersistentVolumeClaim
. Para borrarPersistentVolume
, usa la herramienta de línea de comandoskubectl
para ejecutar el comandokubectl delete pv
:kubectl delete pv PV_NAME
Reemplaza
PV_NAME
por el nombre delPersistentVolume
que deseas borrar.
Si la operación sigue fallando, comunícate con Atención al cliente de Cloud para obtener más ayuda.