Dienstkontorollen für Managed Service for Apache Spark zuweisen

Auf dieser Seite wird beschrieben, wie Sie dem Cloud Data Fusion-Dienst-Agent die Rolle Dienstkontonutzer für das Dienstkonto des Managed Service for Apache Spark zuweisen, damit er Pipelines in Managed Service for Apache Spark-Clustern bereitstellen und ausführen kann.

Für Dienstkonten, die von Managed Service for Apache Spark verwendet werden, müssen Sie auch die Berechtigung datafusion.instances.runtime für den Zugriff auf Cloud Data Fusion-Laufzeitressourcen erteilen.

Unabhängig davon, ob Sie ein nutzerverwaltetes Dienstkonto oder das Compute Engine-Standarddienstkonto auf den virtuellen Maschinen in einem Cluster verwenden, müssen Sie Cloud Data Fusion die Rolle "Dienstkontonutzer" zuweisen. Andernfalls kann Cloud Data Fusion keinen Managed Service for Apache Spark-Cluster bereitstellen und der folgende Fehler wird angezeigt, wenn Sie eine Datenpipeline ausführen:

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

Namen des Dienstkontos abrufen

  1. Rufen Sie in der Google Cloud Console die Seite „Identity and Access Management“ auf.
    Zur IAM-Seite
  2. Wählen Sie in der Projektauswahl oben auf der Seite das Projekt, den Ordner oder die Organisation aus, zu der die Cloud Data Fusion-Instanz gehört.
  3. Suchen und kopieren Sie den Namen des Cloud Data Fusion-Dienstkontos. Verwenden Sie das folgende Format: service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com.

Dienstkontonutzer die Berechtigung erteilen

  1. Rufen Sie in der Google Cloud Console die Seite Dienstkonten auf.
    Zur Seite „Dienstkonten“
  2. Klicken Sie auf Projekt auswählen, wählen Sie ein Projekt aus, in dem sich das Dienstkonto befindet, das Sie für den Managed Service for Apache Spark-Cluster verwenden möchten, und klicken Sie dann auf Öffnen.
  3. Klicken Sie auf die E‑Mail-Adresse des Dienstkontos für Managed Service for Apache Spark.

  4. Klicken Sie auf den Tab Hauptkonten mit Zugriff. Auf der Seite wird eine Liste der Hauptkonten angezeigt, denen Rollen für das Dienstkonto zugewiesen wurden.

  5. Klicken Sie auf Zugriffsrechte erteilen.

  6. Fügen Sie im Feld Neue Hauptkonten den Namen des Cloud Data Fusion-Dienstkontos ein, den Sie zuvor kopiert haben.

  7. Wählen Sie die Rolle Dienstkontonutzer aus.

    Dienstkontonutzer

  8. Klicken Sie auf Speichern.

Dienstkonten für Managed Service for Apache Spark Rollen zuweisen

Berechtigung für die Runner-Rolle gewähren

Weisen Sie die Cloud Data Fusion-Runner-Rolle (roles/datafusion.runner) Dienstkonten zu, die von Managed Service for Apache Spark verwendet werden. Dadurch wird das Dienstkonto des Managed Service for Apache Spark autorisiert, Cloud Data Fusion-Pipelines in Ihrem Projekt auszuführen. Weitere Informationen finden Sie unter Berechtigung zum Anhängen von Dienstkonten an Ressourcen erfordern.

Cloud Storage-Administratorberechtigung erteilen

Weisen Sie in Cloud Data Fusion-Versionen 6.2.0 und höher Dienstkonten, die von Managed Service for Apache Spark in Ihrem Projekt verwendet werden, die Rolle „Cloud Storage-Administrator“ (roles/storage.admin) zu.

Nächste Schritte