Auf dieser Seite wird beschrieben, wie Sie die Zugriffssteuerung verwalten, wenn Sie eine Pipeline bereitstellen und ausführen, die Dataproc-Cluster in einem anderen Google Cloud-Projekt verwendet.
Szenario
Wenn eine Cloud Data Fusion-Instanz in einem Google Cloud-Projekt gestartet wird, werden standardmäßig Pipelines mit Dataproc-Clustern im selben Projekt bereitgestellt und ausgeführt. In Ihrer Organisation müssen Sie möglicherweise Cluster in einem anderen Projekt verwenden. Für diesen Anwendungsfall müssen Sie den Zugriff zwischen den Projekten verwalten. Auf der folgenden Seite wird beschrieben, wie Sie die Basiskonfigurationen (Standardkonfigurationen) ändern und die entsprechenden Zugriffssteuerungen anwenden können.
Hinweise
Um die Lösungen in diesem Anwendungsfall zu verstehen, benötigen Sie den folgenden Kontext:
- Vertrautheit mit den grundlegenden Cloud Data Fusion-Konzepten
- Vorkenntnisse zu Identity and Access Management (IAM) für Cloud Data Fusion
- Vorkenntnisse zu Cloud Data Fusion-Netzwerken
Annahmen und Umfang
Dieser Anwendungsfall hat folgende Anforderungen:
- Eine private Cloud Data Fusion-Instanz. Aus Sicherheitsgründen kann ein Unternehmen verlangen, dass Sie diese Art von Instanz verwenden.
- Eine BigQuery-Quelle und -Senke.
- Zugriffssteuerung mit IAM, nicht rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC).
Lösung
Diese Lösung vergleicht Architektur und Konfiguration, die eine grundlegende und anwendungsfallspezifische Architektur haben.
Architektur
In den folgenden Diagrammen wird die Projektarchitektur zum Erstellen einer Cloud Data Fusion-Instanz und zum Ausführen von Pipelines verglichen, wenn Sie Cluster im selben Projekt (Baseline) und in einem anderen Projekt über die VPC des Mandantenprojekts verwenden.
Referenzarchitektur
Dieses Diagramm zeigt die grundlegende Architektur der Projekte:
Für die Referenzkonfiguration erstellen Sie eine private Cloud Data Fusion-Instanz und führen eine Pipeline ohne zusätzliche Anpassungen aus:
- Sie verwenden eines der integrierten Compute-Profile.
- Quelle und Senke befinden sich im selben Projekt wie die Instanz
- Keinem der Dienstkonten wurden zusätzliche Rollen gewährt
Weitere Informationen zu Mandanten- und Kundenprojekten finden Sie unter Netzwerk.
Architektur des Anwendungsfalls
Dieses Diagramm zeigt die Projektarchitektur, wenn Sie Cluster in einem anderen Projekt verwenden:
Konfigurationen
In den folgenden Abschnitten werden die Basiskonfigurationen mit den anwendungsfallspezifischen Konfigurationen für die Verwendung von Dataproc-Clustern in einem anderen Projekt über die standardmäßige VPC des Mandantenprojekts verglichen.
In den folgenden Beschreibungen der Anwendungsfälle wird die Cloud Data Fusion-Instanz im Kundenprojekt und im Dataproc-Projekt der Dataproc-Cluster gestartet.
VPC und Instanz des Mandantenprojekts
Referenz | Anwendungsfall |
---|---|
Im obigen Referenzarchitekturdiagramm enthält das Mandantenprojekt die folgenden Komponenten:
|
Für diesen Anwendungsfall ist keine zusätzliche Konfiguration erforderlich. |
Kundenprojekt
Referenz | Anwendungsfall |
---|---|
In Ihrem Google Cloud-Projekt stellen Sie Pipelines bereit und führen sie aus. Standardmäßig werden die Dataproc-Cluster in diesem Projekt gestartet, wenn Sie Ihre Pipelines ausführen. | In diesem Anwendungsfall verwalten Sie zwei Projekte. Auf dieser Seite bezieht sich das Kundenprojekt darauf, wo die Cloud Data Fusion-Instanz ausgeführt wird. Aus dem Dataproc-Projekt geht hervor, wo die Dataproc-Cluster gestartet werden. |
VPC des Kunden
Referenz | Anwendungsfall |
---|---|
Aus der Perspektive des Kunden ist Cloud Data Fusion logisch in der VPC des Kunden platziert. Wichtig: Die VPC-Details des Kunden finden Sie auf der Seite „VPC-Netzwerke“ Ihres Projekts. |
Für diesen Anwendungsfall ist keine zusätzliche Konfiguration erforderlich. |
Cloud Data Fusion-Subnetz
Referenz | Anwendungsfall |
---|---|
Aus der Perspektive des Kunden befindet sich Cloud Data Fusion in diesem Subnetz. Wichtig: Die Region dieses Subnetzes entspricht dem Standort der Cloud Data Fusion-Instanz im Mandantenprojekt. |
Für diesen Anwendungsfall ist keine zusätzliche Konfiguration erforderlich. |
Dataproc-Subnetz
Referenz | Anwendungsfall |
---|---|
Das Subnetz, in dem Dataproc-Cluster beim Ausführen einer Pipeline gestartet werden. Zusammenfassung:
|
Dies ist ein neues Subnetz, in dem Dataproc-Cluster gestartet werden, wenn Sie eine Pipeline ausführen. Zusammenfassung:
|
Quellen und Senken
Referenz | Anwendungsfall |
---|---|
Die Quellen, in denen Daten extrahiert werden, und Senken, in die Daten geladen werden, z. B. BigQuery-Quellen und -Senken. Wichtigste Erkenntnis:
|
Die anwendungsfallspezifischen Konfigurationen für die Zugriffssteuerung auf dieser Seite gelten für BigQuery-Quellen und -Senken. |
Cloud Storage
Referenz | Anwendungsfall |
---|---|
Der Storage-Bucket im Kundenprojekt, mit dem Dateien zwischen Cloud Data Fusion und Dataproc übertragen werden. Zusammenfassung:
|
Für diesen Anwendungsfall ist keine zusätzliche Konfiguration erforderlich. |
Von Quelle und Senke verwendete temporäre Buckets
Referenz | Anwendungsfall |
---|---|
Die temporären Buckets, die von Plug-ins für Ihre Quellen und Senken erstellt wurden, z. B. die Ladegeräte, die vom BigQuery-Senken-Plug-in initiiert wurden. Zusammenfassung:
|
Für diesen Anwendungsfall kann der Bucket in einem beliebigen Projekt erstellt werden. |
Buckets, die Quellen oder Senken von Daten für Plug-ins sind
Referenz | Anwendungsfall |
---|---|
Kunden-Buckets, die Sie in den Konfigurationen für Plug-ins angeben, z. B. das Cloud Storage-Plug-in und das Plug-in "FTP zu Cloud Storage" | Für diesen Anwendungsfall ist keine zusätzliche Konfiguration erforderlich. |
IAM: Cloud Data Fusion API-Dienst-Agent
Referenz | Anwendungsfall |
---|---|
Wenn die Cloud Data Fusion API aktiviert ist, wird dem
Cloud Data Fusion-Dienstkonto, dem primären Dienst-Agent, automatisch die Rolle Cloud Data Fusion API-Dienst-Agent ( Zusammenfassung:
|
Weisen Sie für diesen Anwendungsfall dem Dienstkonto im Dataproc-Projekt die Rolle „Cloud Data Fusion API-Dienst-Agent“ zu. Weisen Sie dann die folgenden Rollen in diesem Projekt zu:
|
IAM: Dataproc-Dienstkonto
Referenz | Anwendungsfall |
---|---|
Das Dienstkonto, mit dem die Pipeline als Job im Dataproc-Cluster ausgeführt wird. Standardmäßig ist dies das Compute Engine-Dienstkonto. Optional: In der Referenzkonfiguration können Sie das Standarddienstkonto in ein anderes Dienstkonto aus demselben Projekt ändern. Weisen Sie dem neuen Dienstkonto die folgenden IAM-Rollen zu:
|
In diesem Anwendungsfallbeispiel wird davon ausgegangen, dass Sie das Compute Engine-Standarddienstkonto ( Weisen Sie dem Compute Engine-Standarddienstkonto im Dataproc-Projekt die folgenden Rollen zu.
Weisen Sie dem Cloud Data Fusion-Dienstkonto im Compute Engine-Standarddienstkonto des Dataproc-Projekts die Rolle „Dienstkontonutzer“ zu. Diese Aktion muss im Dataproc-Projekt ausgeführt werden. Fügen Sie dem Cloud Data Fusion-Projekt das Compute Engine-Standarddienstkonto des Dataproc-Projekts hinzu. Weisen Sie außerdem die folgenden Rollen zu:
|
APIs
Referenz | Anwendungsfall |
---|---|
Wenn Sie die Cloud Data Fusion API aktivieren, werden auch die folgenden APIs aktiviert. Weitere Informationen zu diesen APIs finden Sie in Ihrem Projekt auf der Seite „APIs & Dienste“.
Wenn Sie die Cloud Data Fusion API aktivieren, werden Ihrem Projekt automatisch die folgenden Dienstkonten hinzugefügt:
|
Aktivieren Sie für diesen Anwendungsfall die folgenden APIs in dem Projekt, das das Dataproc-Projekt enthält:
|
Verschlüsselungsschlüssel
Referenz | Anwendungsfall |
---|---|
In der Referenzkonfiguration können Verschlüsselungsschlüssel von Google oder vom CMEK verwaltet werden. Zusammenfassung: Wenn Sie CMEK verwenden, ist für die Basiskonfiguration Folgendes erforderlich:
Abhängig von den in Ihrer Pipeline verwendeten Diensten wie BigQuery oder Cloud Storage muss Dienstkonten auch die Rolle "Cloud KMS CryptoKey Encrypter/Decrypter" zugewiesen werden:
|
Wenn Sie keinen CMEK verwenden, sind für diesen Anwendungsfall keine zusätzlichen Änderungen erforderlich. Wenn Sie CMEK verwenden, muss die Rolle „Cloud KMS CryptoKey Encrypter/Decrypter“ für das folgende Dienstkonto auf Schlüsselebene in dem Projekt, in dem sie erstellt wird, bereitgestellt werden:
Abhängig von den in Ihrer Pipeline verwendeten Diensten wie BigQuery oder Cloud Storage muss auch anderen Dienstkonten die Rolle "Cloud KMS CryptoKey Encrypter/Decrypter" auf Schlüsselebene gewährt werden. Beispiel:
|
Nachdem Sie diese anwendungsfallspezifischen Konfigurationen vorgenommen haben, kann Ihre Datenpipeline auf Clustern in einem anderen Projekt ausgeführt werden.
Nächste Schritte
- Weitere Informationen zum Netzwerk in Cloud Data Fusion
- Weitere Informationen finden Sie in der Referenz zu einfachen und vordefinierten IAM-Rollen.