Solução de problemas

Nesta página, explicamos vários cenários com erros e etapas de solução de problemas para resolvê-los.

Cenários de erro de rede e conectividade

Se seu serviço tiver problemas de conectividade ou de rede, verifique os cenários nas seções a seguir para ver se um deles está causando o problema.

A criação de serviços falha devido à restrição para restringir o peering de VPC

Não defina a restrição da política da organização para restringir o peering de VPC. Especificar constraints/compute.restrictVpcPeering faz com que sua solicitação de criação falhe com um erro INVALID_ARGUMENT. Se for preciso definir a restrição, use o seguinte comando para permitir under:folders/270204312590:

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

Para mais informações, consulte Restrições da política da organização.

A implantação entre projetos falha quando a conta de serviço pode não existir

Para criar um serviço Metastore do Dataproc que possa ser acessado em uma rede pertencente a um projeto diferente daquele a que o serviço pertence, é preciso conceder roles/metastore.serviceAgent ao agente de serviço do metastore do Dataproc (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) na política de IAM do projeto de rede.

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 mais informações, consulte Configurar uma implantação entre projetos.

O IP particular é necessário para conectividade de rede

Como o Metastore do Dataproc usa apenas IP privado, nenhum IP público é exposto. Isso significa que somente VMs na rede de nuvem privada virtual (VPC) fornecida ou no local (conectada por meio de Cloud VPN ou Cloud Interconnect) podem acessar serviço Dataprocstore do Dataproc.

Para mais informações, consulte Acesso ao serviço.

Regra de firewall de permissão de entrada obrigatória para Kerberos

O Kerberos exige que o Metastore do Dataproc inicie conexões com os hosts na rede do projeto. Crie uma regra de firewall que permita a entrada TCP e UDP em todas as portas do bloco de IP /17 que contém o IP do metastore do Dataproc.

Para mais informações, consulte Regras de firewall no KDC e Regras de firewall para os serviços.

Erro de conexão causado por recursos provisionados em redes VPC compartilhadas

Se o serviço Metastore do Dataproc usar uma rede pertencente a um projeto diferente e o Compute Engine estiver protegido pelo perímetro de serviço, o projeto do metastore e o projeto de rede precisarão estar no mesmo perímetro.

Para adicionar projetos do metastore do Dataproc ao perímetro, siga as instruções em Como atualizar um perímetro de serviço.

Para mais informações, consulte VPC Service Controls com metastore do Dataproc.

O intervalo de IP alocado foi esgotado

A rede VPC fornecida pode acabar sem endereços RFC 1918 disponíveis exigidos pelos serviços do Metastore do Dataproc. Se isso acontecer, o Metastore do Dataproc tentará reservar intervalos de endereços IP particulares fora dos intervalos RFC 1918 para a criação do serviço. Para ver uma lista de intervalos particulares não RFC 1918 compatíveis, consulte Intervalos válidos na documentação da rede VPC.

Os endereços IP particulares não RFC 1918 usados no Metastore do Dataproc podem entrar em conflito com um intervalo em uma rede local conectada à rede VPC fornecida. Para verificar a lista de endereços IP particulares RFC 1918 e endereços IP não RFC 1918 reservados pelo Metastore do Dataproc:

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

Se um conflito for determinado e não puder ser atenuado com a reconfiguração da rede local, exclua o serviço do metastore do Dataproc ofensivo e recrie-o após duas horas.

Para mais informações, consulte Exaustão do intervalo de endereços IP.

Cenários de erro de tempo limite da operação

Os cenários de erro a seguir resultam em um tempo limite de serviço ou de operação sem resposta.

Usar registros de auditoria para resolver problemas de tempo limite da operação

Para solucionar esses problemas, use o Explorador de registros no Console do Cloud para recuperar suas entradas de registros de auditoria para o projeto do Google Cloud.

No painel "Criador de consultas", selecione Recurso auditado ou audited_resource como o tipo de recurso do Google Cloud, seguido por Metastore do Dataproc ou metastore.googleapis.com. como o serviço. A seleção de um método é opcional.

Para mais informações, consulte Como visualizar registros.

Cenários de erro de importação e exportação

Nesta seção, descrevemos problemas comuns de importação e exportação do metastore do Dataproc.

A importação falha porque as versões do Hive não correspondem

Quando você importa metadados, as versões do metastore do Hive e do metastore do Dataproc precisam ser compatíveis. A importação poderá falhar se os dois não corresponderem.

Para mais informações, consulte a política de versões.

A importação falha porque faltam arquivos de tabela do Hive

Ao preparar a importação para o Avro, haverá um arquivo para cada tabela do Hive, mesmo que ela esteja vazia. Caso contrário, a importação falhará.

Use o Kit de ferramentas do metastore do Dataproc como referência para verificar os esquemas corretos de metadados do Hive.

O agente de serviço ou o usuário não tem as permissões necessárias

O agente de serviço do metastore do Dataproc (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) e o usuário que importa os metadados precisam ter a seguinte permissão de leitura para o bucket do Cloud Storage usado para a importação:

  • Para o MySQL, eles precisam ter a permissão storage.objects.get no objeto do Cloud Storage (arquivo dump SQL) usado para a importação.

  • Para Avro, eles precisam ter a permissão storage.objects.get no bucket do Cloud Storage usado para a importação.

Para exportações, o agente de serviço do metastore do Dataproc (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) e o usuário que cria a exportação precisam ter a permissão storage.objects.create no bucket.

O job falha porque o arquivo do banco de dados é muito grande

Se o arquivo do banco de dados for muito grande, pode levar mais de uma hora para atingir o tempo limite do job para concluir o processo de importação ou exportação.

Cenários de erro de backup e restauração

Nesta seção, descrevemos problemas comuns de backup e restauração do metastore do Dataproc.

Não foi possível criar um novo backup para um serviço

Se já houver sete backups em um serviço, primeiro será necessário excluir manualmente um backup antes de criar um novo. É possível excluir os backups existentes na guia Backup/Restaurar.

O usuário não tem as permissões necessárias

Para fazer backup dos metadados, solicite um papel do IAM que contenha a permissão do IAM metastore.backups.create.

Para restaurar metadados, solicite um papel do IAM que contenha as permissões metastore.services.restore e metastore.backups.use do IAM.

O job falha porque o arquivo de metadados do serviço é muito grande

Se o arquivo de metadados do serviço for muito grande, o tempo limite do job pode levar mais de uma hora para concluir o processo de backup ou restauração.

Cenários de erro do cluster do Dataproc

As seções a seguir descrevem problemas comuns de cluster e autogerenciados.

Falha no anexo do cluster do Dataproc devido a versões incompatíveis

Quando você anexa um cluster do Dataproc, a imagem do Dataproc e a versão do Hive Metastore Hive precisam ser compatíveis. Verifique as seguintes páginas de controle de versão de imagem para garantir que a versão do Hive seja compatível:

Para mais informações, consulte a Lista de versões de imagem do Dataproc.

A conexão com o metastore falha devido a problemas de fuso horário

Seu arquivo Hive retorna o erro The server time zone value 'CDT' is unrecognized or represents more than one time zone.

Se não for possível se conectar ao metastore do Dataproc, exclua o cluster atual e atualize o comando gcloud dataproc clusters create ou a ferramenta de automação para incluir o seguinte: Parâmetro de fuso horário:

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

Como solucionar problemas da ferramenta de linha de comando de gcloud

Se você encontrar um problema em que um comando da ferramenta gcloud está indisponível ou se o comando se comportar de maneira diferente da forma em que foi documentado, atualize o SDK da gcloud:

gcloud components update

A seguir