Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Troubleshoot ACK storage issues

Última actualización: Sep 04, 2026

Resuelva fallos en el inicio de pods y problemas de vinculación de PVC para volúmenes de disco, NAS y OSS en clústeres de ACK.

Procedimiento de diagnóstico

workflow

Complete estas comprobaciones antes de solucionar problemas según el tipo de almacenamiento.

Paso 1: Confirme que el fallo está relacionado con el almacenamiento.

Ejecute kubectl describe pods <pod-name> e inspeccione la sección Events.

Si el pod muestra el estado siguiente, el volumen se montó correctamente. Los códigos de salida como CrashLoopBackOff o similares en esta etapa indican un error de la aplicación, no un problema de almacenamiento.

pod

Paso 2: Compruebe que el plugin CSI se esté ejecutando.

kubectl get pod -n kube-system | grep csi

Salida esperada:

NAME                       READY   STATUS    RESTARTS   AGE
csi-plugin-***             4/4     Running   0          23d
csi-provisioner-***        7/7     Running   0          14d

Si alguno de los pods no está en estado Running, ejecute kubectl describe pods <pod-name> -n kube-system para revisar el motivo de salida y los eventos.

Paso 3: Verifique que el plugin CSI esté actualizado.

kubectl get ds csi-plugin -n kube-system -oyaml | grep image

Salida esperada:

image: registry.cn-****.aliyuncs.com/acs/csi-plugin:v*****-aliyun

Compare la etiqueta de la imagen con csi-plugin version history y csi-provisioner version history.

Si la versión está desactualizada, upgrade the CSI plug-in. Para fallos durante la actualización, consulte Solución de problemas de fallos en la actualización de componentes.

Paso 4: Solucione problemas de pods en estado Pending.

Paso 5: Solucione problemas de PVC no vinculado (Bound).

Solución de problemas de fallos en la actualización de componentes

csi-provisioner

csi-provisioner es un Deployment de 2 réplicas con anti-afinidad de pods entre nodos.

  • Si la actualización falla, compruebe que el clúster tenga como mínimo dos nodos programables (obligatorio para 2 réplicas).

  • Las versiones 1.14 y anteriores de csi-provisioner utilizaban un StatefulSet. Si aún existe un StatefulSet llamado csi-provisioner, elimínelo y reinstálelo:

    kubectl delete sts csi-provisioner

    Luego inicie sesión en la consola de Container Service y reinstale csi-provisioner desde Add-ons. Consulte Manage components.

csi-plugin

csi-plugin es un DaemonSet desplegado en cada nodo.

  • Busque nodos en estado NotReady, ya que bloquean las actualizaciones del DaemonSet.

  • Si la actualización falla pero todos los plugins funcionan con normalidad, es posible que el centro de componentes haya agotado el tiempo de espera y haya revertido los cambios.

Solución de problemas de disco

Importante

El nodo y el disco deben estar en la misma región y zona. Los distintos tipos de instancia de ECS admiten diferentes tipos de disco; consulte Instance family.

Pod no se ejecuta (disco)

Síntoma

El estado del PVC es Bound, pero el pod no está en estado Running.

Posibles causas y solución

Symptom in kubectl describe pods <pod-name> events

Cause

Resolution

0/N nodes are available: N node(s) didn't match Pod's node affinity/selector

No hay ningún nodo programable donde el disco esté disponible

Programe el pod en un nodo donde el disco esté disponible. Consulte Schedule applications to specified nodes.

MountVolume.SetUp failed for volume "..."

Error al montar el disco

Revise los eventos del pod para identificar el error específico. Para errores de montaje, consulte Disk volume FAQ. Para errores de desmontaje, consulte Disk volume FAQ.

InvalidDiskCategory.NotSupported o error similar de la API de ECS

La instancia de ECS no admite el tipo de disco

Utilice un tipo de disco compatible con su instancia de ECS. Consulte Instance family. Para errores de la API de ECS, consulte Códigos de error de ECS.

PVC no vinculado (disco)

Síntoma

Tanto el PVC como el pod no están en estado Running.

Localización del fallo

Ejecute kubectl describe pvc <pvc-name> -n <namespace> e inspeccione los eventos para determinar si se trata de un problema de aprovisionamiento estático o dinámico.

Aprovisionamiento estático

Los selectores del PVC y del PV no coinciden. Desajustes comunes:

  • El selector del PVC difiere del selector del PV.

  • Hacen referencia a nombres de StorageClass distintos.

  • El estado del PV es Released.

Revise la configuración YAML tanto del PVC como del PV. Consulte Use static disk volumes.

Un PV en estado Released todavía hace referencia a su solicitud anterior y no se puede volver a vincular. Cree un nuevo PV para vincular el disco a un nuevo PVC.

Aprovisionamiento dinámico

csi-provisioner no pudo crear el disco. Revise los eventos del PVC para identificar el error:

Error type

Reference

Errores de creación de disco

Disk volume FAQ

Errores de expansión de disco

Disk volume FAQ

Errores de la API de ECS durante la creación del disco

Centro de errores de ECS

Solución de problemas de NAS

Importante
  • El nodo y el destino de montaje de NAS deben estar en la misma Virtual Private Cloud (VPC). Si se encuentran en VPC distintas, conéctelas mediante Cloud Enterprise Network (CEN).

  • El montaje entre zonas es compatible dentro de la misma VPC.

  • El directorio de montaje para Extreme NAS y CPFS 2.0 debe comenzar con /share.

Pod no se ejecuta (NAS)

Síntoma

El estado del PVC es Bound, pero el pod no está en estado Running.

Posibles causas y solución

Symptom in kubectl describe pods <pod-name> events

Cause

Fault locating

Resolution

El pod permanece en estado Init durante mucho tiempo; sin mensaje de error explícito

securityContext.fsGroup está configurado y el volumen contiene muchos archivos, lo que provoca que chmod sea lento

Compruebe si securityContext.fsGroup está definido en la especificación del pod

Quite fsGroup de la especificación del pod, elimine el pod y permita que se reinicie para volver a montar el volumen

MountVolume.SetUp failed for volume "..." con tiempo de espera de red agotado

El puerto 2049 (NFS) está bloqueado en el security group

Revise las reglas del security group del nodo

Agregue una regla de entrada para el puerto TCP 2049. Consulte Add security group rules.

Destino de montaje inaccesible; tiempo de espera de conexión en los eventos

El nodo y NAS están en VPC distintas

Verifique si la VPC del nodo coincide con la VPC del destino de montaje de NAS

Mueva el destino de montaje de NAS a la misma VPC que el nodo, o utilice CEN para conectar ambas VPC

Otros eventos

Otros errores

Revise los eventos del pod con kubectl describe pods <pod-name>

Consulte NAS volume FAQ.

PVC no vinculado (NAS)

Síntoma

El PVC no está vinculado (Bound) y el pod no está en estado Running.

Localización del fallo

Ejecute kubectl describe pvc <pvc-name> -n <namespace> e inspeccione los eventos para determinar si se trata de un problema de aprovisionamiento estático o dinámico.

Aprovisionamiento estático

Los selectores del PVC y del PV no coinciden. Desajustes comunes:

  • La configuración del selector difiere entre el PVC y el PV.

  • Hacen referencia a nombres de StorageClass distintos.

  • El estado del PV es Released.

Revise la configuración YAML tanto del PVC como del PV. Consulte Use static NAS volumes.

Un PV en estado Released no se puede reutilizar. Cree un nuevo PV que apunte al sistema de archivos NAS.

Aprovisionamiento dinámico

csi-provisioner no pudo aprovisionar el volumen NAS. Revise los eventos del PVC para identificar el error. Consulte NAS volume FAQ.

Solución de problemas de OSS

Importante
  • Para montar un bucket de OSS se requieren credenciales AccessKey en el PV, proporcionadas mediante un Secret de Kubernetes.

  • Utilice el endpoint público para acceso entre regiones; utilice el endpoint interno para acceso dentro de la misma región.

Pod no se ejecuta (OSS)

Síntoma

El estado del PVC es Bound, pero el pod no está en estado Running.

Posibles causas y solución

Symptom in kubectl describe pods <pod-name> events

Cause

Fault locating

Resolution

El pod permanece en estado Init durante mucho tiempo; chmod lento en el contenido del bucket

securityContext.fsGroup está configurado y el bucket contiene muchos archivos

Compruebe si securityContext.fsGroup está definido en la especificación del pod

Quite fsGroup de la especificación del pod, elimine el pod y permita que se reinicie para volver a montar el volumen

MountVolume.SetUp failed for volume "..." con error de conexión

Acceso entre regiones mediante el endpoint interno (privado)

Compruebe si el endpoint del bucket en el PV es una dirección privada mientras el nodo se encuentra en otra región

Cambie el endpoint a la dirección pública del bucket de OSS

Otros eventos

Otros errores

Revise los eventos del pod con kubectl describe pods <pod-name>

Consulte OSS volume FAQ.

PVC no vinculado (OSS)

Síntoma

El PVC no está vinculado (Bound) y el pod no está en estado Running.

Localización del fallo

Ejecute kubectl describe pvc <pvc-name> -n <namespace> e inspeccione los eventos para determinar si se trata de un problema de aprovisionamiento estático o dinámico.

Aprovisionamiento estático

Los selectores del PVC y del PV no coinciden. Desajustes comunes:

  • La configuración del selector difiere entre el PVC y el PV.

  • Hacen referencia a nombres de StorageClass distintos.

  • El estado del PV es Released.

Revise la configuración YAML tanto del PVC como del PV. Consulte Use static OSS volumes.

Un PV en estado Released no se puede reutilizar. Extraiga la dirección del bucket y cree un nuevo PV.

Aprovisionamiento dinámico

csi-provisioner no pudo montar el bucket de OSS. Revise los eventos del PVC para identificar el error. Consulte OSS volume FAQ.