Otorga roles de cuenta de servicio para el servicio administrado de Apache Spark

En esta página, se describe cómo otorgar la función de Usuario de cuenta de servicio en la cuenta de servicio de Managed Service for Apache Spark al agente de servicio de Cloud Data Fusion para permitir que aprovisione y ejecute canalizaciones en los clústeres de Managed Service for Apache Spark.

Para las cuentas de servicio que usa Managed Service for Apache Spark, también debes otorgar datafusion.instances.runtime permiso para acceder a los recursos de tiempo 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 la función de Usuario de cuenta de servicio a Cloud Data Fusion. De lo contrario, Cloud Data Fusion no puede aprovisionar un clúster de Managed Service for Apache Spark 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 Managed Service for Apache Spark operation failure: INVALID_ARGUMENT: User not authorized to act as service account '[service-account-name]'

Obtén el nombre de la cuenta de servicio

  1. En la Google Cloud consola de, ve a la página Identity and Access Management.
    Ir a la página de IAM
  2. Desde 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.
  3. Busca y copia el nombre de la cuenta de servicio de Cloud Data Fusion. Usa el siguiente formato: service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com.

Otorga permiso de usuario de cuenta de servicio

  1. En la Google Cloud consola de, ve a la página Cuentas de servicio.
    Ir a la página Cuentas de servicio
  2. Haz clic en Seleccionar un proyecto, elige un proyecto en el que se encuentre la cuenta de servicio que deseas usar para el clúster de Managed Service for Apache Spark y, luego, haz clic en Abrir.
  3. Haz clic en la dirección de correo electrónico de la cuenta de servicio de Managed Service for Apache Spark.

  4. Haz clic en la pestaña Principales con acceso. En la página, se muestra una lista de las principales a las que se les otorgaron funciones en la cuenta de servicio.

  5. Haz clic en Otorgar acceso.

  6. En el campo Principales nuevas, pega el nombre de la cuenta de servicio de Cloud Data Fusion que copiaste antes.

  7. Selecciona la función Usuario de cuenta de servicio.

    (Usuario de cuenta de servicio)

  8. Haz clic en Guardar.

Otorga funciones a las cuentas de servicio de Managed Service for Apache Spark

Otorga permiso de rol de ejecutor

Otorga la función de ejecutor de Cloud Data Fusion (roles/datafusion.runner) a las cuentas de servicio que usan Managed Service for Apache Spark. Esto autoriza a la cuenta de servicio de Managed Service for Apache Spark a ejecutar canalizaciones de Cloud Data Fusion en tu proyecto. Para obtener más información, consulta Solicitud de permiso para conectar cuentas de servicio a los recursos.

Otorga permiso de administrador de Cloud Storage

En las versiones 6.2.0 y posteriores de Cloud Data Fusion, otorga el rol de administrador de Cloud Storage (roles/storage.admin) a las cuentas de servicio que usa Managed Service for Apache Spark 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 service accounts.