Criar um serviço Metastore do Dataproc

Nesta página, mostramos como criar um serviço do metastore do Dataproc.

Depois de criar o serviço Metastore do Dataproc, você pode importar e se conectar a qualquer um dos seguintes serviços:

Depois que você conecta um desses serviços, ele usa seus Serviço do metastore do Dataproc como seu metastore Hive durante a consulta execução.

Antes de começar

Papéis necessários

Para ter a permissão necessária para criar um metastore do Dataproc, peça ao administrador para conceder a você papéis do IAM a seguir no projeto, com base no princípio de privilégio mínimo:

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Esse papel predefinido contém metastore.services.create, que é necessários para criar um metastore do Dataproc.

Também é possível conseguir essa permissão com papéis personalizados ou outros papéis predefinidos.

Para mais informações sobre permissões e papéis específicos do metastore do Dataproc, consulte Gerenciar acesso com o IAM.

Criar o metastore do Dataproc usando as configurações padrão

Como criar um metastore do Dataproc usando as configurações padrão configura seu serviço com um nível empresarial, um tamanho médio de instância, a versão mais recente do Hive Metastore, um endpoint Thrift e um local dos dados de us-central.

Metastore do Dataproc 2

As instruções a seguir mostram como criar um metastore do Dataproc. 2 usando um endpoint Thrift e outras configurações padrão fornecidas.

Console

  1. No console do Google Cloud, acesse o Metastore do Dataproc página.

    Ir para Metastore do Dataproc

  2. Na barra de navegação, clique em +Criar.

    A caixa de diálogo Criar serviço do Metastore será aberta.

  3. Selecione Metastore do Dataproc 2.

  4. Na seção Preços e capacidade, escolha um tamanho de instância.

    Para mais informações, consulte planos de preços e configurações de escalonamento.

  5. No campo Nome do serviço, insira um nome exclusivo para o serviço.

    Para informações sobre convenções de nomenclatura, consulte Convenção de nomenclatura de recursos.

  6. Selecione o Local dos dados.

    Para mais informações sobre como selecionar a região apropriada, consulte Regiões e zonas disponíveis e o endpoint regional.

  7. Para as demais opções de configuração de serviço, use os padrões fornecidos.

  8. Para criar e iniciar o serviço, clique em Enviar.

    Seu novo serviço de metastore aparece no Metastore do Dataproc página. O status será Creating até que o serviço esteja pronto para uso. Quando ela estiver pronta, o status vai mudar para Ativo. O provisionamento do serviço pode levar alguns minutos.

CLI da gcloud

Para criar um serviço 2 de metastore do Dataproc Metastore usando o fornecidos, execute o seguinte gcloud metastore services create comando:

gcloud metastore services create SERVICE \
  --location=LOCATION \
  --instance-size=INSTANCE_SIZE \
  --scaling-factor=SCALING_FACTOR

Substitua:

  • SERVICE: o nome do novo serviço Metastore do Dataproc.
  • LOCATION: a região do Google Cloud que você quer em que o metastore do Dataproc será criado. Você também pode definir um local padrão.

    Para informações sobre convenções de nomenclatura, consulte Convenção de nomenclatura de recursos.

  • INSTANCE_SIZE: o tamanho da instância. do seu metastore multirregional do Dataproc. Por exemplo, small, medium ou large. Se você especificar um valor para INSTANCE_SIZE, não especifique especifique um valor para SCALING_FACTOR.

  • SCALING_FACTOR: o fator de escalonamento do serviço Metastore do Dataproc. Por exemplo, 0.1. Se você especificar um valor para SCALING_FACTOR, não especifique um para INSTANCE_SIZE.

REST

Siga as instruções da API para criar um serviço usando o APIs Explorer.

Metastore do Dataproc 1

As instruções a seguir mostram como criar um metastore do Dataproc. 1 usando um endpoint Thrift e outras configurações padrão fornecidas.

Console

  1. No console do Google Cloud, acesse o Metastore do Dataproc página.

    Ir para Metastore do Dataproc

  2. Na barra de navegação, clique em +Criar.

    A caixa de diálogo Criar serviço do Metastore será aberta.

  3. Selecione Metastore do Dataproc 1.

  4. No campo Nome do serviço, insira um nome exclusivo para o serviço.

    Para informações sobre convenções de nomenclatura, consulte Convenção de nomenclatura de recursos.

  5. Selecione o Local dos dados.

    Para mais informações sobre como selecionar a região apropriada, consulte Regiões e zonas disponíveis e o endpoint regional.

  6. Para as demais opções de configuração de serviço, use os padrões fornecidos.

  7. Para criar e iniciar o serviço, clique em Enviar.

    Seu novo serviço de metastore aparece no Metastore do Dataproc página. O status será Creating até que o serviço esteja pronto para uso. Quando ela estiver pronta, o status vai mudar para Ativo. O provisionamento do serviço pode levar alguns minutos.

CLI da gcloud

Para criar um serviço de metastore básico usando os padrões fornecidos, execute o seguinte gcloud metastore services create comando:

gcloud metastore services create SERVICE \
  --location=LOCATION

Substitua:

  • SERVICE: o nome do novo serviço Metastore do Dataproc.
  • LOCATION: a região do Google Cloud que você quer em que o metastore do Dataproc será criado. Você também pode definir um local padrão.

    Para informações sobre convenções de nomenclatura, consulte Convenção de nomenclatura de recursos.

REST

Siga as instruções da API para criar um serviço usando o APIs Explorer.

Criar o metastore do Dataproc usando as configurações avançadas

Como criar um metastore do Dataproc usando as configurações avançadas mostra que é preciso modificar configurações, como configurações de rede, de endpoint, de segurança e de recursos opcionais.

Metastore do Dataproc 2 ou 1

As instruções a seguir mostram como criar um metastore do Dataproc. 2 ou um serviço do Dataproc Metastore 1 usando configurações.

Console

Primeiros passos

  1. No console do Google Cloud, abra a página Metastore do Dataproc:

    Abra o metastore do Dataproc

  2. No menu de navegação, clique em + Criar.

    A caixa de diálogo Criar serviço do Metastore será aberta.

  3. Selecione a versão do metastore que você quer usar, Dataproc Metastore 1. ou Dataproc Metastore 2.

    Informações do serviço

    Criar página de serviço
    Exemplo da página Criar serviço

    1. (Opcional): para Dataproc Metastore 2. Na seção Preço e capacidade, escolha um tamanho de instância.

      Para mais informações, consulte planos de preços e configurações de escalonamento.

    2. No campo Nome do serviço, insira um nome exclusivo para o serviço.

      Para informações sobre convenções de nomenclatura, consulte Convenção de nomenclatura de recursos.

    3. Selecione o Local dos dados.

      Para mais informações sobre como selecionar a região apropriada, consulte Regiões e zonas disponíveis e o endpoint regional.

    4. Selecione a versão Metastore do Hive.

      Se esse valor não for modificado, o serviço usará a versão mais recente versão do Hive (atualmente versão 3.1.2).

      Para mais informações sobre como selecionar a versão correta, consulte Política de versões.

    5. Selecione o Canal de lançamento.

      Se esse valor não for modificado, seu metastore usará o valor Stable. Para mais informações, consulte Canal de lançamento.

    6. Insira a Porta TCP.

      A porta TCP a que o endpoint do Thrift se conecta. Se esse valor for não modificado, o número da porta 9083 será usado. Se você alterar endpoint para gRPC, esse valor muda automaticamente para 443 e não pode ser alterado.

    7. (Opcional) Para Dataproc Metastore 1. Selecione o Nível de serviço.

      O nível de serviço influencia a capacidade do seu serviço. Para mais informações, consulte Nível de serviço.

    Protocolo do endpoint

    • Opcional: escolha um protocolo de endpoint.

      A opção padrão selecionada é Apache Thrift. Para mais informações sobre os diferentes endpoints, consulte Escolher o protocolo do endpoint.

    Configuração de rede

    1. Selecione uma Configuração de rede.

      Por padrão, seu serviço é exposto em apenas uma rede VPC e usa a rede default. A rede default só permite que seu serviço conectem-se a outros serviços no mesmo projeto.

      Altere as configurações de rede padrão para concluir a seguintes ações:

      • Conectar o serviço do metastore do Dataproc ao metastore do Dataproc serviços em outros projetos.
      • Use o serviço Dataproc Metastore com outros Serviços do Google Cloud, como clusters do Dataproc.
      .
    2. Opcional: clique em Usar rede VPC compartilhada e insira o ID do projeto e Nome da rede VPC.

    3. Opcional: clique em Tornar os serviços acessíveis em várias sub-redes VPC. e selecione "Sub-redes". É possível especificar até cinco sub-redes.

    4. Clique em Concluído.

    Integração de metadados

    Janela de manutenção

    • Opcional: selecione o Dia da semana e a Hora do dia como seu durante a janela de manutenção do dispositivo.

      Para mais informações, consulte Janelas de manutenção.

    Segurança

    1. Opcional: ative o Kerberos.

      1. Para ativar o Kerberos, clique no botão de ativação.
      2. Selecione ou insira o código do recurso secret.
      3. Use a versão mais recente do secret ou selecione uma mais antiga um para usar.
      4. Insira o principal do Kerberos.

        Este é o principal alocado para este metastore do Dataproc serviço.

      5. Navegue até o arquivo krb5 config.

    2. Opcional: escolha um tipo de criptografia.

      • A opção selecionada por padrão é Chave de criptografia gerenciada pelo Google.

      • Para selecionar uma chave gerenciada pelo cliente, clique em Usar uma chave gerenciada pelo cliente de criptografia de dados (CMEK, na sigla em inglês).

        Para mais informações, consulte Como usar chaves de criptografia gerenciadas pelo cliente.

    Substituições de configuração do Metastore

    Configuração da versão auxiliar

    • Opcional: para adicionar uma configuração de versão auxiliar, clique em Ativar.

      Para mais informações, consulte Versões auxiliares.

    Tipo de banco de dados

    • Opcional: escolha um tipo de banco de dados.

      Em Tipo de banco de dados, selecione MySQL ou Spanner. O MySQL é o tipo de banco de dados padrão.

      Para mais informações sobre como escolher um tipo específico de banco de dados, consulte Tipos de banco de dados.

    Marcadores

    • Opcional: para adicionar ou remover rótulos opcionais que descrevem seus metadados, Clique em + Adicionar rótulos.

Iniciar o serviço

Para criar e iniciar o serviço, clique em Enviar.

Seu novo serviço de metastore aparece no Metastore do Dataproc página. O status será Creating até que o serviço esteja pronto para uso. Quando ela estiver pronta, o status vai mudar para Ativo. O provisionamento do serviço pode levar alguns minutos.

CLI da gcloud

  1. Para criar um metastore, execute o seguinte comando gcloud metastore services create:

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --instance-size=INSTANCE_SIZE \
      --scaling-factor=SCALING_FACTOR \
      --port=PORT \
      --tier=TIER \
      --endpoint-protocol=ENDPOINT_PROTOCOL \
      --database-type=DATABASE_TYPE \
      --hive-metastore-version=HIVE_METASTORE_VERSION \
      --data-catalog-sync=DATA_CATALOG_SYNC \
      --release-channel=RELEASE_CHANNEL \
      --hive-metastore-configs=METADATA_OVERRIDE \
      --labels=LABELS \
      --auxiliary-versions=AUXILIARY_VERSION \
      --network=NETWORK \
      --consumer-subnetworks="projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET1, projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET2" \
      --kerberos-principal=KERBEROS_PRINCIPAL \
      --krb5-config=KRB5_CONFIG \
      --keytab=CLOUD_SECRET \
      --encryption-kms-key=KMS_KEY

    Substitua:

    Configurações do serviço:

    • SERVICE: o nome do novo serviço Metastore do Dataproc. do serviço Metastore do Dataproc. Por exemplo, 0.1. Se você especificar um valor para SCALING_FACTOR, não especifique um para INSTANCE_SIZE.
    • LOCATION: a região do Google Cloud que você quer em que o metastore do Dataproc será criado. Você também pode definir um local padrão.
    • PORT (opcional): a porta TCP em que o Usos de endpoint do Thrift. Se não for definido, a porta 9083 será usada. Se você optar por usar um endpoint gRPC, o número da porta será automaticamente em 443.
    • TIER: opcional para o Metastore 1 do Dataproc: O nível de serviço do novo serviço. Se não for definido, o valor Developer será usado.
    • ENDPOINT_PROTOCOL: Opcional: escolha o protocolo de endpoint para seu serviço.
    • DATABASE_TYPE: Opcional: escolha o tipo de banco de dados para seu serviço. Para mais informações sobre como escolher um tipo específico de banco de dados, consulte Tipos de banco de dados.
    • DATA_CATALOG_SYNC (opcional): ative o Recurso de sincronização do Data Catalog.
    • HIVE_METASTORE_VERSION (opcional): o Hive metastore que você quer usar com seu serviço. Por exemplo, 3.1.2. Se não for definido, a versão mais recente do Hive será usada.
    • RELEASE_CHANNEL (opcional): o canal de lançamento. do serviço. Se não for definido, o valor Stable será usado.
    • METADATA_OVERRIDE (opcional): o metastore Hive as configurações que você quer aplicar ao serviço. Use uma lista separada por vírgulas no seguinte formato k1=v1,k2=v2,k3=v3.
    • LABELS (opcional): pares de chave-valor a serem adicionados. metadados adicionais ao serviço. Use uma lista separada por vírgulas no seguinte formato k1=v1,k2=v2,k3=v3. Dataproc Metastore
    • AUXILIARY_VERSION: opcional: ativar auxiliar versions. Para mais informações, consulte Versões auxiliares.

    Configurações de escalonamento:

    • INSTANCE_SIZE: opcional para o Metastore do Dataproc 2: O tamanho da instância do seu metastore multirregional do Dataproc. Por exemplo: small, medium ou large. Se você especificar um valor para INSTANCE_SIZE, não especifique um para SCALING_FACTOR.
    • SCALING_FACTOR: opcional para Metastore do Dataproc 2: o fator de escalonamento do serviço Metastore do Dataproc. Por exemplo, 0.1. Se você especifique um valor para SCALING_FACTOR, não especifique um valor para INSTANCE_SIZE

    Configurações de rede:

    • NETWORK: o nome da rede VPC que que você está conectando ao seu serviço. Se não for definido, o valor default será usado.

      Se você usa uma rede VPC que pertence a um um projeto diferente do seu serviço, você deve fornecer toda a o nome relativo do recurso precisa ser fornecido. Por exemplo, projects/HOST_PROJECT/global/networks/NETWORK_ID.

    • SUBNET1, SUBNET2: Opcional: uma lista de sub-redes que podem acessar o serviço. Você pode use o ID, o URL totalmente qualificado ou o nome relativo da sub-rede. É possível especificar até cinco sub-redes.

    Configurações do Kerberos:

    • KERBEROS_PRINCIPAL: opcional: um princípio Kerberos que existe na guia key e no KDC. Um princípio típico é o formato "primary/instance@REALM", mas não há um formato exato.
    • KRB5_CONFIG (opcional): o arquivo krb5.config especifica as informações de domínio do KDC e do Kerberos, que incluem locais de KDCs e padrões para os aplicativos real e Kerberos.
    • CLOUD_SECRET (opcional): o recurso relativo nome de um Secret Manager versão do secret.
    • KMS_KEY: opcional: refere-se ao recurso da chave. ID.
  2. Verifique se a criação foi bem-sucedida.

REST

Siga as instruções da API para criar um serviço usando o APIs Explorer.

Definir uma substituição da configuração do metastore do Hive para o metastore do Dataproc

Se o diretório de armazenamento do Apache Hive estiver no Cloud Storage, defina um metastore config override. Essa substituição define seu data warehouse personalizado como o Diretório de warehouse padrão para seu serviço Metastore do Dataproc.

Antes de definir essa substituição, verifique se o metastore do Dataproc tem permissões de leitura e gravação de objetos para acessar o diretório do warehouse. Saiba mais em Diretório de armazenamento do Hive.

As instruções a seguir mostram como definir uma substituição de configuração do Hive Metastore. para um novo serviço do metastore do Dataproc.

Console

  1. No console do Google Cloud, abra a página Metastore do Dataproc:

    Abra o metastore do Dataproc

  2. Na barra de navegação, clique em +Criar.

  3. Em Substituições de configuração do Metastore, insira os seguintes valores:

    • Chave: hive.metastore.warehouse.dir.
    • Valor: o local do Cloud Storage do diretório do warehouse. Por exemplo, gs://my-bucket/path/to/location.
  4. Configure as demais opções de serviço conforme necessário ou use o os padrões fornecidos.

  5. Clique em Enviar.

    Volte para a página Metastore do Dataproc e verificar se o serviço foi criado.

CLI da gcloud

  1. Para criar um serviço do metastore do Dataproc com uma substituição do Hive, execute o seguinte gcloud metastore services create comando:

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --hive-metastore-configs="hive.metastore.warehouse.dir=CUSTOMER_DIR"
    

    Substitua:

    • SERVICE: o nome do novo serviço Metastore do Dataproc.
    • LOCATION: a região do Google Cloud que você quer em que o metastore do Dataproc será criado. Você também pode definir um local padrão.
    • CUSTOMER_DIR: o local do Cloud Storage do do seu diretório warehouse. Por exemplo, gs://my-bucket/path/to/location.
  2. Verifique se a criação foi bem-sucedida.

Criar o metastore do Dataproc com escalonamento automático

O Dataproc Metastore 2 oferece suporte a escalonamento automático. Se você ativar o escalonamento automático, é possível definir um fator de escalonamento mínimo e um fator de escalonamento máximo. Depois disso, definido, seu serviço aumenta ou diminui automaticamente o fator de escalonamento necessários para executar as cargas de trabalho.

Considerações sobre o escalonamento automático

  • O escalonamento automático e os fatores de escalonamento são opções mutuamente exclusivas. Por exemplo: Se você ativar o escalonamento automático, não será possível definir manualmente um fator ou tamanho de escalonamento.
  • O escalonamento automático está disponível apenas para o metastore do Dataproc de região única instâncias.
  • Quando o escalonamento automático está ativado, as configurações atuais de fatores de escalonamento são limpas.
  • Quando o escalonamento automático está desativado:
    • As configurações de escalonamento automático atuais foram apagadas.
    • O fator de escalonamento está definido como o último autoscaling_factor que foi configurado no serviço.
  • Os fatores mínimo e máximo de escalonamento automático são opcionais. Se não for definido, o os valores padrão são 0.1 e 6, respectivamente.

Escolha uma das guias a seguir para saber como criar um metastore do Dataproc serviço 2 com escalonamento automático ativado.

Console

  1. No console do Google Cloud, acesse o Metastore do Dataproc página.

    Ir para Metastore do Dataproc

  2. Na barra de navegação, clique em +Criar.

    A caixa de diálogo Criar serviço do Metastore será aberta.

  3. Selecione Metastore do Dataproc 2.

  4. Na seção Preços e capacidade, selecione Empresarial - Região única.

  5. Em Tamanho da instância, clique em Ativar escalonamento automático.

  6. Em Tamanho da instância, use o controle deslizante para escolher o mínimo e o máximo de instâncias. tamanho.

  7. Para criar e iniciar o serviço, clique em Enviar.

    Seu novo serviço de metastore aparece no Metastore do Dataproc página. O status será Creating até que o serviço esteja pronto para uso. Quando ela estiver pronta, o status vai mudar para Ativo. O provisionamento do serviço pode levar alguns minutos.

REST

curl -X POST -s -i -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-d '{"scaling_config":{"autoscaling_config":{"autoscaling_enabled": true,"limit_config":{"max_scaling_factor":MAX_SCALING_FACTOR,"min_scaling_factor": MIN_SCALING_FACTOR}}}}' \
-H "Content-Type:application/json" \
https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/services?service_id=SERVICE_ID

Substitua:

  • MIN_INSTANCES (opcional) o número mínimo de instâncias para usar na configuração de escalonamento automático. Se esses valores não forem especificados, será usado o valor padrão 0.1.
  • MAX_INSTANCESOpcional: o número máximo de instâncias para usar na configuração de escalonamento automático. Se esses valores não forem especificados, será usado o valor padrão 6.

Criar um serviço multirregional do Dataproc Metastore

Para criar um metastore do Dataproc multirregional, consulte Configure um serviço multirregional do Dataproc Metastore.

Criar um serviço do metastore do Dataproc usando a VPC compartilhada

Uma VPC compartilhada permite conectar o metastore do Dataproc recursos de vários projetos para uma rede VPC comum.

Para criar um serviço do Dataproc Metastore configurado com um VPC compartilhada, consulte Criar um serviço usando configurações avançadas.

Considerações

  • As redes VPC não são relevantes para os serviços do Dataproc Metastore configurada com o protocolo de endpoint do gRPC.

  • Para serviços do Dataproc Metastore configurados com o endpoint Thrift , verifique se o serviço Metastore do Dataproc e o O cluster do Dataproc ao qual está anexado usa a mesma VPC compartilhada em uma rede VPC.

  • Para serviços do Dataproc Metastore configurados com o endpoint Thrift e o Private Service Connect, use sub-redes da rede VPC compartilhada.

Papéis do IAM necessários para redes VPC compartilhada

Para criar um serviço do Dataproc Metastore com uma VPC acessível em uma rede pertencente a um projeto diferente, você precisa conceder roles/metastore.serviceAgent ao projeto de serviço Agente de serviço do Dataproc Metastore (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) na política do 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"

Resolver problemas comuns

Confira alguns problemas comuns:

  • Como restringir o peering de VPC. Antes de criar um metastore, não defina um restrição org-policy para restringir o peering de VPC ou a criação do metastore falhar. Para mais informações sobre como definir as configurações corretas de VPC, Consulte A criação de serviços falha devido a uma restrição de VPC peering de rede VPC.

  • Problemas com redes VPC. Ao criar um metastore, a rede VPC que você estão usando podem ficar sem endereços RFC 1918 disponíveis exigidos pelo Serviços do Dataproc Metastore. Para mais informações sobre corrigir esse problema, consulte O intervalo de IP alocado exausto.

A seguir