En esta página, se incluyen pasos para solucionar algunos problemas y errores comunes.
- Problemas conocidos
- Problemas con las operaciones de instancias
- Problemas de Compute Engine
- Problemas de GKE
- Problemas de la red de VPC
Problemas conocidos
- Cuando no se produce ninguna E/S en el sistema de archivos, los gráficos de rendimiento muestran el mensaje "No hay datos disponibles para el período seleccionado". Esto se debe a que las métricas de rendimiento solo se generan cuando hay E/S. Para obtener más información sobre las métricas, consulta Supervisa instancias y operaciones.
- No se admiten las siguientes funciones de Lustre:
- Compresión de datos del cliente
- Almacenamiento en caché persistente del cliente
- Algunos comandos de Lustre no son compatibles.
- Existen algunas excepciones al cumplimiento de POSIX.
Problemas con las operaciones de instancias
En las siguientes secciones, se describen los problemas relacionados con las operaciones de instancias.
No se pudo poner en cola la operación
Si ves un error similar a cualquiera de los siguientes cuando intentas iniciar una operación:
ERROR: (gcloud.lustre.instances.import-data) ABORTED: unable to queue the operation
ERROR: (gcloud.lustre.instances.export-data) ABORTED: unable to queue the operation
ERROR: (gcloud.lustre.instances.update) ABORTED: unable to queue the operation
Este error se produce cuando intentas iniciar una operación mientras otra operación del mismo tipo ya está en curso en la misma instancia.
- Importación/exportación: Lustre administrado solo admite una operación de transferencia activa por instancia a la vez. No se admite la puesta en cola para las operaciones de transferencia.
- Actualización de instancias: Lustre administrado permite una actualización activa por instancia a la vez y permite poner en cola una operación de actualización adicional.
Para resolver este problema, espera a que se complete la operación actual antes de comenzar una nueva.
Problemas de Compute Engine
Si tienes problemas para activar un sistema de archivos de Managed Lustre en una instancia de Compute Engine, sigue estos pasos para diagnosticar el problema.
Verifica que se pueda acceder a la instancia de Managed Lustre
Primero, asegúrate de que se pueda acceder a tu instancia de Managed Lustre desde tu instancia de Compute Engine:
sudo lctl ping IP_ADDRESS@tcp
Para obtener el valor de IP_ADDRESS, consulta Obtén una instancia.
Un ping exitoso devuelve una respuesta similar a la siguiente:
12345-0@lo
12345-10.115.0.3@tcp
Un ping fallido muestra lo siguiente:
failed to ping 10.115.0.3@tcp: Input/output error
Si el ping no funciona, haz lo siguiente:
Asegúrate de que tu instancia de Lustre administrada y tu instancia de Compute Engine estén en la misma red de VPC. Compara el resultado de los siguientes comandos:
gcloud compute instances describe VM_NAME \ --zone=VM_ZONE \ --format='get(networkInterfaces[0].network)' gcloud lustre instances describe INSTANCE_NAME \ --location=ZONE --format='get(network)'El resultado se verá así:
https://www.googleapis.com/compute/v1/projects/my-project/global/networks/my-network projects/my-project/global/networks/my-networkEl resultado del comando
gcloud compute instances describetiene el prefijohttps://www.googleapis.com/compute/v1/; todo lo que sigue a esa cadena debe coincidir con el resultado del comandogcloud lustre instances describe.Revisa las reglas de firewall y las configuraciones de enrutamiento de tu red de VPC para asegurarte de que permitan el tráfico entre tu instancia de Compute Engine y la instancia de Lustre administrada.
Verifica el puerto de aceptación de LNet
Las instancias de Lustre administradas se pueden configurar para admitir clientes de GKE especificando la marca --gke-support-enabled en el momento de la creación.
Si se habilitó la compatibilidad con GKE, debes configurar LNet en todas las instancias de Compute Engine para que usen accept_port 6988. Consulta Configura LNet para instancias de gke-support-enabled.
Para determinar si la instancia se configuró para admitir clientes de GKE, ejecuta el siguiente comando:
gcloud lustre instances describe INSTANCE_NAME \
--location=LOCATION | grep gkeSupportEnabled
Si el comando devuelve gkeSupportEnabled: true, debes configurar LNet.
La versión del kernel de Ubuntu no coincide con la del cliente de Lustre
En el caso de las instancias de Compute Engine que ejecutan Ubuntu, la versión del kernel de Ubuntu debe coincidir con la versión específica de los paquetes del cliente de Lustre. Si tus herramientas de cliente de Lustre fallan, verifica si tu instancia de Compute Engine se actualizó automáticamente a un kernel más reciente.
Para verificar la versión del kernel, haz lo siguiente:
uname -r
La respuesta es similar a la siguiente:
6.8.0-1029-gcp
Para verificar la versión del paquete de cliente de Lustre, haz lo siguiente:
dpkg -l | grep -i lustre
La respuesta es similar a la siguiente:
ii lustre-client-modules-6.8.0-1029-gcp 2.14.0-ddn198-1 amd64 Lustre Linux kernel module (kernel 6.8.0-1029-gcp)
ii lustre-client-utils 2.14.0-ddn198-1 amd64 Userspace utilities for the Lustre filesystem (client)
Si hay una discrepancia entre la versión del kernel que se muestra en ambos comandos, debes volver a instalar los paquetes de cliente de Lustre.
Verifica si hay errores de Lustre en dmesg
Muchas advertencias y errores de Lustre se registran en el búfer de anillo del kernel de Linux. El comando dmesg imprime el búfer de anillo del kernel.
Para buscar mensajes específicos de Lustre, usa grep junto con dmesg:
dmesg | grep -i lustre
O bien, para buscar errores más generales que podrían estar relacionados, haz lo siguiente:
dmesg | grep -i error
Información que debes incluir en una solicitud de asistencia
Si no puedes resolver la falla de la activación, recopila información de diagnóstico antes de crear un caso de ayuda.
Ejecuta sosreport: Esta utilidad recopila registros del sistema e información de configuración, y genera un archivo tarball comprimido:
sudo sosreport
Adjunta el archivo sosreport y cualquier resultado pertinente de dmesg a tu caso de asistencia.
Problemas de GKE
Antes de seguir los pasos para solucionar problemas que se indican en esta sección, consulta las limitaciones cuando te conectas a Lustre administrado desde GKE.
Se actualizó la capacidad mínima de la instancia
Se actualizó la capacidad mínima para las instancias de Lustre administradas a 9,000 GiB. Para crear instancias de 9,000 GiB a través del controlador de CSI de Lustre administrado, actualiza la versión del clúster a 1.34.0-gke.2285000 o una posterior.
Nivel de rendimiento incorrecto para las instancias de Lustre aprovisionadas de forma dinámica
Cuando se aprovisiona de forma dinámica una instancia de Lustre, falla la creación de la instancia con un error InvalidArgument para PerUnitStorageThroughput, independientemente del valor de perUnitStorageThroughput especificado en la solicitud de API. Esto afecta a las versiones de GKE 1.33 anteriores a la 1.33.4-gke.1036000.
Solución alternativa:
Actualiza el clúster de GKE a la versión 1.33.4-gke.1036000 o posterior. Si usas el canal estable, es posible que aún no esté disponible una versión más reciente. En este caso, puedes seleccionar manualmente una versión de los canales Regular o Rapid que incluya la corrección.
Puertos de comunicación de Managed Lustre
El controlador de CSI de Managed Lustre usa diferentes puertos para comunicarse con las instancias de Managed Lustre, según la versión del clúster de GKE y las configuraciones existentes de Managed Lustre.
Puerto predeterminado (988): Para los clústeres nuevos de GKE que ejecutan la versión
1.33.2-gke.4780000o posterior, el controlador usa el puerto988para la comunicación de Lustre de forma predeterminada.Puerto heredado (6988): El controlador usa el puerto
6988en los siguientes casos:- Versiones anteriores de GKE: Si tu clúster de GKE ejecuta una versión anterior a
1.33.2-gke.4780000, se requiere la marca--enable-legacy-lustre-portcuando se habilita el controlador CSI. Habilitar esta marca soluciona un conflicto de puertos congke-metadata-serveren los nodos de GKE. - Instancias de Managed Lustre existentes con compatibilidad con GKE: Si te conectas a una instancia de Managed Lustre existente que se creó con la marca
--gke-support-enabled, debes incluir--enable-legacy-lustre-portcuando habilites el controlador de CSI, independientemente de la versión del clúster. Sin esta marca, tu clúster de GKE no podrá activar la instancia de Lustre existente.
Para obtener más detalles sobre cómo habilitar el controlador de CSI con el puerto heredado, consulta Puertos de comunicación de Lustre.
- Versiones anteriores de GKE: Si tu clúster de GKE ejecuta una versión anterior a
Consultas de registros
Para verificar los registros, ejecuta la siguiente consulta en el Explorador de registros.
Para devolver los registros del servidor de nodos del controlador Lustre CSI administrado, haz lo siguiente:
resource.type="k8s_container"
resource.labels.pod_name=~"lustre-csi-node*"
Soluciona problemas relacionados con el aprovisionamiento de volúmenes
Si la PersistentVolumeClaim (PVC) permanece en estado Pending y no se crea ningún PersistentVolume (PV) después de 20 a 30 minutos, es posible que se haya producido un error.
Verifica los eventos del PVC:
kubectl describe pvc PVC_NAMESi el error indica problemas de configuración o argumentos no válidos, verifica los parámetros de StorageClass.
Vuelve a crear el PVC.
Si el problema persiste, comunícate con Atención al cliente de Cloud.
Soluciona problemas de activación de volúmenes
Una vez que el Pod se programa en un nodo, se activa el volumen. Si esto falla, revisa los eventos del Pod y los registros de kubelet.
kubectl describe pod POD_NAME
Problemas de habilitación del controlador CSI
Síntoma:
MountVolume.MountDevice failed for volume "yyy" : kubernetes.io/csi: attacher.MountDevice failed to create newCsiDriverClient: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
o
MountVolume.SetUp failed for volume "yyy" : kubernetes.io/csi: mounter.SetUpAt failed to get CSI client: driver name lustre.csi.storage.gke.io not found in the list of registered CSI drivers
Causa: El controlador de CSI no está habilitado o aún no se está ejecutando.
Resolución:
- Verifica que el controlador de CSI esté habilitado.
- Si el clúster se actualizó o se ajustó recientemente, espera unos minutos para que el controlador funcione.
- Si el error persiste, revisa los registros de
lustre-csi-nodepara ver si aparece el mensaje "Operation not permitted". Esto indica que la versión del nodo es demasiado antigua para admitir Managed Lustre. Para resolver este problema, actualiza tu grupo de nodos a la versión1.33.2-gke.1111000o posterior. - Si los registros muestran el mensaje "LNET_PORT mismatch", actualiza tu grupo de nodos para asegurarte de que se instalen los módulos del kernel de Lustre compatibles.
El punto de montaje ya existe
Síntoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = AlreadyExists
desc = A mountpoint with the same lustre filesystem name "yyy" already exists on
node "yyy". Please mount different lustre filesystems
Causa: No se admite el montaje de varios volúmenes de diferentes instancias de Managed Lustre con el mismo nombre de sistema de archivos en un solo nodo.
Solución: Usa un nombre de sistema de archivos único para cada instancia de Managed Lustre.
No se pudo realizar el montaje: No existe el archivo o el directorio
Síntoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: No such file or directory
Causa: El nombre del sistema de archivos especificado es incorrecto o no existe.
Resolución: Verifica que el fs_name en la configuración de tu StorageClass o PV coincida con la instancia de Managed Lustre.
No se pudo activar: Error de entrada/salida
Síntoma:
MountVolume.MountDevice failed for volume "yyy" : rpc error: code = Internal desc = Could not mount ... failed: Input/output error
Causa: El clúster no se puede conectar a la instancia de Lustre administrado.
Resolución:
- Verifica la dirección IP de la instancia de Lustre administrada.
- Asegúrate de que el clúster de GKE y la instancia de Lustre administrada estén en la misma red de VPC o que se hayan interconectado correctamente.
Errores internos
Síntoma: rpc error: code = Internal desc = ...
Resolución: Si el error persiste, comunícate con Atención al cliente de Cloud.
Soluciona problemas relacionados con el desmontaje de volúmenes
Síntoma:
UnmountVolume.TearDown failed for volume "yyy" : rpc error: code = Internal desc = ...
Resolución:
Fuerza la eliminación del Pod:
kubectl delete pod POD_NAME --forceSi el problema persiste, comunícate con Atención al cliente de Cloud.
Soluciona problemas relacionados con la eliminación de volúmenes
Si el PV permanece en estado "Liberado" durante un período prolongado (p.ej., más de una hora) después de borrar el PVC, comunícate con Atención al cliente de Cloud.
Soluciona problemas de expansión de volumen
El PVC está atascado en ExternalExpanding.
Síntoma: El estado del PVC no cambia a Resizing y los eventos muestran ExternalExpanding.
Causa: Es posible que falte el campo allowVolumeExpansion o que esté configurado como false.
Resolución:
Asegúrate de que StorageClass tenga allowVolumeExpansion: true.
kubectl get storageclass STORAGE_CLASS_NAME -o yaml
Falla en la expansión: Argumento no válido
Síntoma: VolumeResizeFailed: rpc error: code = InvalidArgument ...
Causa: El tamaño solicitado no es válido (p.ej., no es un múltiplo del tamaño del paso o está fuera de los límites).
Resolución: Verifica los rangos de capacidad válidos y actualiza la PVC con un tamaño válido.
Falla en la expansión: error interno
Síntoma: VolumeResizeFailed ... rpc error: code = Internal
Solución: Vuelve a intentar la expansión aplicando de nuevo el PVC. Si falla repetidamente, comunícate con Atención al cliente de Cloud.
Se superó el plazo
Síntoma: VolumeResizeFailed con DEADLINE_EXCEEDED.
Causa: La operación está tardando más de lo esperado, pero es posible que aún esté en curso.
Resolución: Espera a que se complete la operación. El redimensionador volverá a intentarlo automáticamente. Si permanece atascado durante mucho tiempo (p.ej., > 90 minutos), comunícate con el equipo de asistencia.
Se superó la cuota
Síntoma: La expansión falla debido a los límites de cuota.
Resolución: Solicita un aumento de cuota o un aumento de capacidad más pequeño.
Problemas de la red de VPC
En las siguientes secciones, se describen problemas comunes de las redes de VPC.
No se puede acceder a Managed Lustre desde un proyecto con intercambio de tráfico
Para acceder a tu instancia de Lustre administrada desde una VM en una red de VPC con intercambio de tráfico, debes usar Network Connectivity Center (NCC). NCC te permite conectar varias redes de VPC y redes locales a un concentrador central, lo que proporciona conectividad entre ellas.
Para obtener instrucciones sobre cómo configurar NCC, consulta la documentación de Network Connectivity Center.
Falla la activación de Lustre en una VM con varias NICs
Cuando una VM tiene varios controladores de interfaces de red (NIC) y la instancia de Lustre administrada se encuentra en una VPC conectada a una NIC secundaria (p.ej., eth1), es posible que falle la activación de la instancia. Para resolver este problema, sigue las instrucciones para realizar el montaje con una NIC secundaria.
No se puede conectar desde el rango de subred 172.17.0.0/16
Los clientes de Compute Engine y GKE con una dirección IP en el rango de subred 172.17.0.0/16 no pueden activar instancias de Lustre administrado.
Se denegó el permiso para agregar la interconexión del servicio servicenetworking.googleapis.com
ERROR: (gcloud.services.vpc-peerings.connect) User [$(USER)] does not have
permission to access services instance [servicenetworking.googleapis.com]
(or it may not exist): Permission denied to add peering for service
'servicenetworking.googleapis.com'.
Este error significa que no tienes el permiso de IAM servicenetworking.services.addPeering en tu cuenta de usuario.
Consulta Control de acceso con IAM para obtener instrucciones sobre cómo agregar uno de los siguientes roles a tu cuenta:
roles/compute.networkAdminoroles/servicenetworking.networksAdmin
No se pueden modificar los rangos asignados en CreateConnection
ERROR: (gcloud.services.vpc-peerings.connect) The operation
"operations/[operation_id]" resulted in a failure "Cannot modify allocated
ranges in CreateConnection. Please use UpdateConnection."
Este error se muestra cuando ya creaste un peering de VPC en esta red con diferentes rangos de IP. Existen dos soluciones posibles:
Reemplaza los rangos de IP existentes:
gcloud services vpc-peerings update \
--network=NETWORK_NAME \
--ranges=IP_RANGE_NAME \
--service=servicenetworking.googleapis.com \
--force
O bien, agrega el nuevo rango de IP a la conexión existente:
Recupera la lista de rangos de IP existentes para el peering:
EXISTING_RANGES="$( gcloud services vpc-peerings list \ --network=NETWORK_NAME \ --service=servicenetworking.googleapis.com \ --format="value(reservedPeeringRanges.list())" \ --flatten=reservedPeeringRanges )Luego, agrega el nuevo rango al peering:
gcloud services vpc-peerings update \ --network=NETWORK_NAME \ --ranges="${EXISTING_RANGES}",IP_RANGE_NAME \ --service=servicenetworking.googleapis.com
Se agotó el rango de direcciones IP
Si la creación de la instancia falla con el error de rango agotado, haz lo siguiente:
ERROR: (gcloud.alpha.Google Cloud Managed Lustre.instances.create) FAILED_PRECONDITION: Invalid
resource state for "NETWORK_RANGES_NOT_AVAILABLE": IP address range exhausted
Sigue la guía de VPC para modificar la conexión privada existente y agregar rangos de direcciones IP.
Recomendamos una longitud de prefijo de al menos /20 (1,024 direcciones).