Soluciona problemas

En esta página, se explican varias situaciones de error y pasos para solucionar problemas a fin de resolver los errores.

Situaciones de error de conectividad y red

Si tu servicio tiene problemas de red o conectividad, revisa las situaciones de las siguientes secciones para ver si alguna de ellas está ocasionando el problema.

La creación del servicio falla debido a una restricción para restringir el intercambio de tráfico de VPC

No establezcas la restricción de la organización o la política para restringir el intercambio de tráfico de VPC. Especificar constraints/compute.restrictVpcPeering hace que la solicitud de creación falle con un error INVALID_ARGUMENT. Si debes establecer la restricción, usa el siguiente comando para permitir under:folders/270204312590:

gcloud resource-manager org-policies allow compute.restrictVpcPeering under:folders/270204312590 --organization ORGANIZATION_ID

Para obtener más información, consulta Restricciones de las políticas de la organización.

La implementación entre proyectos falla cuando la cuenta de servicio puede no existir

Para crear un servicio de Dataproc Metastore al que se puede acceder en una red que pertenece a un proyecto diferente al que pertenece el servicio, debes otorgar roles/metastore.serviceAgent al agente de servicios de Dataproc Metastore del proyecto de servicio (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com ) en la política de IAM del proyecto de red.

gcloud projects add-iam-policy-binding NETWORK_PROJECT_ID \
    --role "roles/metastore.serviceAgent" \
    --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com"

Para obtener más información, consulta Configura una implementación entre proyectos.

Se requiere una IP privada para la conectividad de red

Dataproc Metastore solo usa IP privada, por lo que no se expone ninguna IP pública. Esto significa que solo las VM de la red de nube privada virtual (VPC) proporcionada o locales (conectadas a través de Cloud VPN o Cloud Interconnect) pueden acceder el servicio de Dataproc Metastore.

Para obtener más información, consulta Acceso al servicio.

Regla de firewall de permiso de entrada obligatoria para Kerberos

Kerberos requiere que Dataproc Metastore inicie conexiones con los hosts en tu red de proyecto. Debes crear una regla de firewall que permita la entrada de TCP y UDP en todos los puertos desde el bloque de IP /17 que contiene la IP de Dataproc Metastore.

Si deseas obtener más información, consulta Reglas de firewall en tu KDC y Reglas de firewall para tus servicios.

Error de conexión causado por recursos aprovisionados en redes de VPC compartidas

Si tu servicio de Dataproc Metastore usa una red que pertenece a un proyecto diferente y Compute Engine está protegido por el perímetro de servicio, el proyecto de almacén de metadatos y el de red deben estar en el mismo perímetro.

Para agregar proyectos existentes de Dataproc Metastore al perímetro, sigue las instrucciones en Actualiza un perímetro de servicio.

Para obtener más información, consulta Controles del servicio de VPC con Dataproc Metastore.

El rango de IP asignado está agotado

Es posible que la red de VPC proporcionada se quede sin las direcciones RFC 1918 disponibles que requieren los servicios de Dataproc Metastore. Si eso sucede, Dataproc Metastore intentará reservar rangos de direcciones IP privadas fuera de los rangos RFC 1918 para la creación de servicios. Para obtener una lista de los rangos privados que no son RFC 1918, consulta Rangos válidos en la documentación de la red de VPC.

Las direcciones IP privadas que no son RFC 1918 y que se usan en Dataproc Metastore pueden entrar en conflicto con un rango de una red local conectada a la red de VPC proporcionada. Para verificar la lista de direcciones IP privadas RFC 1918 y no RFC 1918 reservadas por Dataproc Metastore, haz lo siguiente:

gcloud compute addresses list \
    --project NETWORK_PROJECT_ID \
    --filter="purpose:VPC_PEERING AND name ~ cluster|resourcegroup"

Si se determina un conflicto y no se puede mitigar mediante la reconfiguración de la red local, borra el servicio de Dataproc Metastore ofensivo y vuelve a crearlo después de 2 horas.

Para obtener más información, consulta el agotamiento del rango de direcciones IP.

Situaciones de error de tiempo de espera de una operación

Las siguientes situaciones de error generan un tiempo de espera de operación o servicio que no responde.

Usar los registros de auditoría para solucionar los tiempos de espera de las operaciones

A fin de solucionar los tiempos de espera de operación de servicio, usa el Explorador de registros en Cloud Console para recuperar las entradas de registro de auditoría del proyecto de Cloud.

En el panel Compilador de consultas, selecciona Recurso auditado o audited_resource como el tipo de recurso de Google Cloud, seguido de Dataproc Metastore o metastore.googleapis.com. como el servicio. La selección de un método es opcional.

Para obtener más información, consulta Visualizar los registros.

Situaciones de error de importación y exportación

En esta sección, se describen los problemas comunes de importación y exportación de Dataproc Metastore.

La importación falla porque las versiones de Hive no coinciden

Cuando importas metadatos, las versiones del almacén de metadatos de Hive y de Dataproc Metastore deben ser compatibles. Es posible que la importación falle si no coinciden las dos.

Para obtener más información, consulta la política de versión.

La importación falla porque faltan archivos de tablas de Hive

Cuando preparas la importación de Avro, debe haber un archivo para cada tabla de Hive, incluso si la tabla está vacía; de lo contrario, la importación fallará.

Puedes usar el kit de herramientas de Dataproc Metastore como referencia para verificar los esquemas de metadatos de Hive correctos.

El usuario o agente de servicio no tiene los permisos necesarios

El agente de servicio de Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) y el usuario que importa los metadatos deben tener el siguiente permiso de lectura en el bucket de Cloud Storage que se usa para la importación:

  • Para MySQL, deben tener el permiso storage.objects.get en el objeto de Cloud Storage (archivo de volcado de SQL) que se usa para la importación.

  • En Avro, deben tener el permiso storage.objects.get en el bucket de Cloud Storage que se usó para la importación.

Para las exportaciones, el agente de servicio de Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) y el usuario que crea la exportación deben tener el permiso storage.objects.create en el bucket.

El trabajo falla porque el archivo de la base de datos es demasiado grande

Si el archivo de la base de datos es demasiado grande, puede tomar más de una hora de límite de tiempo de espera del trabajo para completar el proceso de importación o exportación.

Situaciones de error de copia de seguridad y restablecimiento

En esta sección, se describen los problemas comunes de copia de seguridad y restablecimiento de Dataproc Metastore.

No se puede crear una copia de seguridad nueva de un servicio

Si ya hay 7 copias de seguridad en un servicio, primero debes borrarla de forma manual antes de crear una nueva. Puedes borrar copias de seguridad existentes desde la pestaña Copia de seguridad/restablecimiento.

El usuario no tiene los permisos necesarios

Para crear una copia de seguridad de los metadatos, debes solicitar una función de IAM que contenga el permiso de IAM metastore.backups.create.

Para restablecer metadatos, debes solicitar una función de IAM que contenga los permisos de IAM metastore.services.restore y metastore.backups.use.

El trabajo falla porque el archivo de metadatos del servicio es demasiado grande

Si el archivo de metadatos de servicio es demasiado grande, puede tomar más del límite de tiempo de espera del trabajo de una hora para completar el proceso de copia de seguridad o restablecimiento.

Situaciones de error del clúster de Dataproc

En las siguientes secciones, se describen los problemas comunes de Dataproc y de clústeres autoadministrados.

El adjunto del clúster de Dataproc falla debido a versiones no coincidentes

Cuando adjuntas un clúster de Dataproc, la imagen de Dataproc y la versión de Dataproc Metastore Hive deben ser compatibles. Consulta las siguientes páginas de control de versiones de imágenes para asegurarte de que la versión de Hive sea compatible:

Para obtener más información, consulta Lista de versiones de imágenes de Dataproc.

No se puede establecer la conexión con Metastore debido a problemas con la zona horaria

El archivo de Hive muestra el error The server time zone value 'CDT' is unrecognized or represents more than one time zone.

Si no puedes conectarte al almacén de metadatos desde Dataproc, debes borrar el clúster actual y actualizar el comando de gcloud dataproc clusters create o la herramienta de automatización para que incluya lo siguiente: parámetro de zona horaria:

--metadata "hive-metastore-uri=jdbc:mysql://10.207.26.77:3306/hive_metastore?serverTimezone=CST6CDT"

Solución de problemas de la herramienta de línea de comandos de gcloud

Si encuentras un problema en el que un comando de la herramienta de gcloud no está disponible, o si el comando se comporta diferente al modo en que se documenta, intenta actualizar el SDK de gcloud:

gcloud components update

¿Qué sigue?