En esta página, se describe cómo otorgar la función de Usuario de cuenta de servicio de Dataproc a Cloud Data Fusion para permitir que aprovisione y ejecute canalizaciones en los clústeres de Dataproc.
Para las cuentas de servicio que usa Dataproc, también debes hacer lo siguiente:
otorgar permiso datafusion.instances.runtime
para acceder
Recursos del entorno de ejecución de Cloud Data Fusion.
Ya sea que uses una cuenta de servicio administrada por el usuario o la cuenta de servicio predeterminada de Compute Engine en las máquinas virtuales de un clúster, debes otorgar el rol de usuario de cuenta de servicio a Cloud Data Fusion. De lo contrario, Cloud Data Fusion no puede aprovisionar un clúster de Dataproc y aparece el siguiente error cuando ejecutas una canalización de datos:
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]'
Obtén el nombre de la cuenta de servicio
- En la consola de Google Cloud, ve a la página Administración de identidades y accesos.
Ir a la página de IAM - En el selector de proyectos en la parte superior de la página, elige el proyecto, la carpeta o la organización a la que pertenece la instancia de Cloud Data Fusion.
- Busca y copia la cuenta de servicio de Cloud Data Fusion.
de la fuente de datos. Usa el siguiente formato:
service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com
Otorgar permiso de usuario a la cuenta de servicio
- En la consola de Google Cloud, ve a la página Cuentas de servicio.
Ir a la página Cuentas de servicio - Haz clic en Seleccionar un proyecto, elige un proyecto en el que esté la cuenta de servicio usar para el clúster de Dataproc y, luego, Haz clic en Open.
Haz clic en la dirección de correo electrónico de la cuenta de servicio de Dataproc.
Haz clic en la pestaña Permisos. La página muestra una lista de principales a las que se les otorgaron roles en la cuenta de servicio.
Haz clic en
Grant access.En el campo Principales nuevas, pega el servicio de Cloud Data Fusion. de la cuenta que copiaste anteriormente.
Selecciona la función Usuario de cuenta de servicio.
Haz clic en Guardar.
Otorga roles a las cuentas de servicio de Dataproc
Otorgar permiso de rol de ejecutor
Otorga el rol de ejecutor de Cloud Data Fusion
(roles/datafusion.runner
) a las cuentas de servicio que usan
Dataproc. Esto autoriza al servicio de Dataproc
para ejecutar canalizaciones de Cloud Data Fusion en tu proyecto.
Para obtener más información, consulta Solicita permiso para conectar cuentas de servicio a recursos.
Otorga permiso de administrador de Cloud Storage
En Cloud Data Fusion 6.2.0 y versiones posteriores, otorga el rol de administrador de Cloud Storage (roles/storage.admin
) a las cuentas de servicio que usa Dataproc en tu proyecto.
¿Qué sigue?
- Obtén más información sobre el control de acceso en Cloud Data Fusion.
- Obtén más información sobre las cuentas de servicio de Cloud Data Fusion.