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
- Na Google Cloud consola, aceda à página Identity and Access Management.
Aceda à página IAM - 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.
- 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
- Na Google Cloud consola, aceda à página Contas de serviço.
Aceda à página Contas de serviço - 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.
Clique no endereço de email da conta de serviço do Dataproc.
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.
Clique em
Conceder acesso.No campo Novos membros, cole o nome da conta de serviço do Cloud Data Fusion que copiou anteriormente.
Selecione a função Utilizador da conta de serviço.
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?
- Saiba mais acerca do controlo de acesso no Cloud Data Fusion.
- Saiba mais sobre as contas de serviço do Cloud Data Fusion.