Conceda funções de conta de serviço para o Dataproc

Esta página descreve como conceder a função de utilizador da conta de serviço na conta de serviço do Dataproc ao agente do serviço do Cloud Data Fusion para lhe permitir aprovisionar e executar pipelines em clusters do Dataproc.

Para as contas de serviço usadas pelo Dataproc, também tem de conceder a autorização datafusion.instances.runtime para aceder aos recursos de tempo de execução do Cloud Data Fusion.

Quer use uma conta de serviço gerida pelo utilizador ou a conta de serviço do Compute Engine predefinida nas máquinas virtuais num cluster, tem de conceder a função Utilizador da conta de serviço ao Cloud Data Fusion. Caso contrário, o Cloud Data Fusion não pode aprovisionar um cluster do Dataproc e é apresentado o seguinte erro quando executa um pipeline de dados:

PROVISION task failed in REQUESTING_CREATE state for program run [pipeline-name] due to Dataproc operation failure: INVALID_ARGUMENT: User not authorized to act as service account '[service-account-name]'

Obtenha o nome da conta de serviço

  1. Na Google Cloud consola, aceda à página Identity and Access Management.
    Aceda à página IAM
  2. No seletor de projetos na parte superior da página, escolha o projeto, a pasta ou a organização a que a instância do Cloud Data Fusion pertence.
  3. Encontre e copie o nome da conta de serviço do Cloud Data Fusion. Use o seguinte formato: service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com.

Conceda autorização do utilizador da conta de serviço

  1. Na Google Cloud consola, aceda à página Contas de serviço.
    Aceda à página Contas de serviço
  2. Clique em Selecionar um projeto, escolha um projeto onde a conta de serviço que quer usar para o cluster do Dataproc está localizada e, de seguida, clique em Abrir.
  3. Clique no endereço de email da conta de serviço do Dataproc.

  4. Clique no separador Diretores com acesso. A página apresenta uma lista de diretores aos quais foram concedidas funções na conta de serviço.

  5. Clique em Conceder acesso.

  6. No campo Novos membros, cole o nome da conta de serviço do Cloud Data Fusion que copiou anteriormente.

  7. Selecione a função Utilizador da conta de serviço.

    Utilizador da conta de serviço

  8. Clique em Guardar.

Conceda funções a contas de serviço do Dataproc

Conceda autorização da função de executor

Conceda a função de executor do Cloud Data Fusion (roles/datafusion.runner) às contas de serviço usadas pelo Dataproc. Isto autoriza a conta de serviço do Dataproc a executar pipelines do Cloud Data Fusion no seu projeto. Para mais informações, consulte o artigo Exigir autorização para anexar contas de serviço a recursos.

Conceda autorização de administrador do armazenamento na nuvem

Nas versões 6.2.0 e superiores do Cloud Data Fusion, conceda a função de administrador do Cloud Storage (roles/storage.admin) às contas de serviço usadas pelo Dataproc no seu projeto.

O que se segue?