Cuando usas Managed Service para Apache Spark para crear clústeres y ejecutar trabajos en ellos, el servicio configura las funciones y los permisos necesarios de Managed Service para Apache Spark en tu proyecto para acceder a los Google Cloud recursos que necesita para realizar estas tareas y usarlos. Sin embargo, si realizas un trabajo entre proyectos, por ejemplo, para acceder a los datos de otro proyecto, deberás configurar las funciones y los permisos necesarios a fin de acceder a los recursos entre proyectos.
Para ayudarte a realizar el trabajo entre proyectos de manera correcta, en este documento se enumeran los diferentes principales que usan Managed Service para Apache Spark y las funciones que contienen los permisos necesarios para que esos principales usen y accedan a los Google Cloud recursos.
Existen tres principales (identidades) que acceden y usan Managed Service para Apache Spark:
- Identidad de usuario
- Identidad del plano de control
Identidad del plano de datos

Usuario de la API de Dataproc (identidad del usuario)
Ejemplo: username@example.com
Este es el usuario que llama a Managed Service para Apache Spark para crear clústeres, enviar trabajos y realizar otras solicitudes al servicio. El usuario suele ser un individuo, pero también puede ser una cuenta de servicio si se invoca a Managed Service para Apache Spark a través de un cliente de API o de otro Google Cloud servicio como Compute Engine, funciones de Cloud Run o Managed Service para Apache Airflow.
Funciones relacionadas
Notas
- Los trabajos enviados por la API de Dataproc se ejecutan como
rooten Linux. Los clústeres de Managed Service para Apache Spark heredan los metadatos SSH de Compute Engine en todo el proyecto, a menos que se bloqueen explícitamente mediante la configuración de
--metadata=block-project-ssh-keys=truecuando creas el clúster (consulta metadatos de clústeres).Los directorios de usuarios HDFS se crean para cada usuario SSH a nivel de proyecto. Estos directorios HDFS se crean en el momento de la implementación del clúster, y nuevo un usuario SSH (posterior a la implementación) no recibe un directorio HDFS en los clústeres existentes.
Agente de servicios de Managed Service para Apache Spark (identidad del plano de control)
Ejemplo: service-project-number@dataproc-accounts.iam.gserviceaccount.com
La cuenta de servicio del agente de servicios de Managed Service para Apache Spark se usa para realizar un amplio conjunto de operaciones del sistema en los recursos ubicados en el proyecto en el que se crea un clúster de Managed Service para Apache Spark, incluidos los siguientes:
- Crear recursos de Compute Engine, que incluyen instancias de VM, grupos de instancias y plantillas de instancias
- Operaciones
getylistpara confirmar la configuración de recursos como imágenes, firewalls, acciones de inicialización de Managed Service para Apache Spark y buckets de Cloud Storage - Crear de forma automática los bucket temporales y de etapa de pruebas de Managed Service para Apache Spark si el usuario no los especificó
- Escribir metadatos de configuración de clústeres en el bucket de etapa de pruebas
- Acceder a redes de VPC en un proyecto host
Funciones relacionadas
Cuenta de servicio de VM de Managed Service para Apache Spark (identidad del plano de datos)
Ejemplo: project-number-compute@developer.gserviceaccount.com
El código de la aplicación se ejecuta como la cuenta de servicio de VM en las VMs de Managed Service para Apache Spark. A los trabajos de usuario se les otorgan las funciones (con sus permisos asociados) de esta cuenta de servicio.
La cuenta de servicio de VM hace lo siguiente:
- Se comunica con el plano de control de Managed Service para Apache Spark.
- Lee y escribe datos desde y hacia los buckets temporales y de etapa de pruebas de Managed Service para Apache Spark.
- Según sea necesario para tus trabajos de Managed Service para Apache Spark, lee y escribe datos desde y hacia Cloud Storage, BigQuery, Cloud Logging y otros Google Cloud recursos.
Funciones relacionadas
¿Qué sigue?
- Obtén más información sobre las funciones y los permisos de Managed Service para Apache Spark.
- Obtén más información sobre las cuentas de servicio de Managed Service para Apache Spark.
- Consulta Control de acceso de BigQuery.
- Consulta las opciones de control de acceso de Cloud Storage.