Concedi i ruoli dell'account di servizio per Dataproc

Questa pagina descrive come concedere il ruolo Utente account di servizio all'agente di servizio Cloud Data Fusion per consentirgli di eseguire il provisioning e di eseguire le pipeline sui cluster Dataproc.

Per gli account di servizio utilizzati da Dataproc, devi anche concedere l'autorizzazione datafusion.instances.runtime per accedere alle risorse di runtime di Cloud Data Fusion.

Indipendentemente dal fatto che tu utilizzi un account di servizio gestito dall'utente o l'account di servizio Compute Engine predefinito sulle macchine virtuali di un cluster, devi concedere il ruolo Utente account di servizio a Cloud Data Fusion. In caso contrario, Cloud Data Fusion non può eseguire il provisioning di un cluster Dataproc e viene visualizzato il seguente errore quando esegui una pipeline di dati:

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]'

Ottieni il nome dell'account di servizio

  1. Nella console Google Cloud, vai alla pagina Gestione dell'identità e dell'accesso.
    Vai alla pagina IAM
  2. Nel selettore di progetti nella parte superiore della pagina, scegli il progetto, la cartella o l'organizzazione a cui appartiene l'istanza Cloud Data Fusion.
  3. Trova e copia il nome dell'account di servizio Cloud Data Fusion. Utilizza il formato seguente: service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com.

Concedi l'autorizzazione utente all'account di servizio

  1. Nella console Google Cloud, vai alla pagina Account di servizio.
    Vai alla pagina Account di servizio
  2. Fai clic su Seleziona un progetto, scegli un progetto in cui si trova l'account di servizio che vuoi utilizzare per il cluster Dataproc e poi fai clic su Apri.
  3. Fai clic sull'indirizzo email dell'account di servizio Dataproc.

  4. Fai clic sulla scheda Autorizzazioni. La pagina mostra un elenco di entità a cui sono stati assegnati ruoli nell'account di servizio.

  5. Fai clic su Concedi accesso.

  6. Nel campo Nuove entità, incolla il nome dell'account di servizio Cloud Data Fusion che hai copiato in precedenza.

  7. Seleziona il ruolo Utente account di servizio.

    Utente account di servizio

  8. Fai clic su Salva.

Concedi i ruoli agli account di servizio Dataproc

Concedi l'autorizzazione del ruolo di utente che gestisce le corse

Concedi il ruolo di runner Cloud Data Fusion (roles/datafusion.runner) agli account di servizio utilizzati da Dataproc. In questo modo, l'account di servizio Dataproc viene autorizzato a eseguire le pipeline Cloud Data Fusion nel tuo progetto. Per ulteriori informazioni, consulta Requisire l'autorizzazione per collegare gli account di servizio alle risorse.

Concedi l'autorizzazione di amministratore di Cloud Storage

Nelle versioni 6.2.0 e successive di Cloud Data Fusion, concedi il ruolo Amministratore di Cloud Storage (roles/storage.admin) agli account di servizio utilizzati da Dataproc nel tuo progetto.

Passaggi successivi