Freigegebenes VPC-Netzwerk konfigurieren

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Auf dieser Seite werden die Anforderungen für das freigegebene VPC-Netzwerk und das Hostprojekt für Cloud Composer beschrieben.

Mit der freigegebenen VPC können Unternehmen Beschränkungen für Budget und Zugriffssteuerung auf Projektebene festlegen und dabei eine sichere und effiziente Kommunikation mit privaten IP-Adressen innerhalb dieser Beschränkungen ermöglichen. Bei der Konfiguration der freigegebenen VPC kann Cloud Composer Dienste aufrufen, die in anderen Google Cloud-Projekten in derselben Organisation gehostet werden, ohne Dienste im öffentlichen Internet verfügbar zu machen.

Richtlinien für freigegebene VPCs

Dienst- und Hostprojekte für Cloud Composer
Abbildung 1: Dienst- und Hostprojekte für Cloud Composer
  • Geben Sie für die freigegebene VPC ein Hostprojekt an, zu dem Netzwerke und Subnetzwerke gehören, sowie ein Dienstprojekt, das dem Hostprojekt zugeordnet ist. Wenn Cloud Composer an einer freigegebenen VPC teilnimmt, befindet sich die Cloud Composer-Umgebung im Dienstprojekt.

  • Wählen Sie zum Einrichten einer freigegebenen VPC die folgenden IP-Bereiche im Hostprojekt aus:

    • Primärer IP-Bereich des Subnetzes, das von GKE-Knoten verwendet wird, die Cloud Composer als Compute Engine-Ebene verwendet
    • Sekundärer IP-Bereich für GKE-Dienste.
    • Sekundärer IP-Bereich für GKE-Pods.
  • Sekundäre IP-Bereiche dürfen sich nicht mit anderen sekundären Bereichen in dieser VPC überschneiden.

  • Achten Sie darauf, dass sekundäre Bereiche groß genug sind, um die Größe des Clusters aufzufangen und die Skalierung der Umgebung.

    Unter VPC-native Cluster erstellen finden Sie Richtlinien zum Konfigurieren von sekundären Bereichen für Pods und Dienste.

  • Der primäre Adressbereich des Subnetzwerks muss ausreichend groß sein, um dem erwarteten Wachstum standhalten und die nicht verwendbaren IP-Adressen unterbringen zu können.

  • Wenn Sie den IP-Masquerate-Agent und die Konfiguration der privaten IP-Adresse für Ihre Umgebungen und dann Fügen Sie die IP-Bereiche von Knoten und Pods in den Abschnitt nonMasqueradeCIDRs von die ConfigMap ip-masq-agent. Weitere Informationen finden Sie unter IP-Masquerade-Agent konfigurieren

Vorbereitung

  1. Ermitteln Sie die folgenden Projekt-IDs und Projektnummern:

    • Hostprojekt: Das Projekt mit dem freigegebenen VPC-Netzwerk.
    • Dienstprojekt: Das Projekt mit der Cloud Composer-Umgebung.
  2. Organisation vorbereiten.

  3. Aktivieren Sie die GKE API in Ihren Host- und Dienstprojekten.

  4. Wenn Sie im Dienstprojekt eine Umgebung mit Google Cloud Console aktiviert haben, muss Ihr Konto die Berechtigung compute.subnetworks.use im Hostprojekt. Andernfalls enthält die Liste der verfügbaren Subnetzwerke keine Subnetzwerke aus dem Hostprojekt. Wenn Sie eine Umgebung mit gcloud, API, oder Terraform benötigen, ist diese zusätzliche Berechtigung für Ihr Konto nicht erforderlich.

Serviceprojekt konfigurieren

Wenn im Dienstprojekt noch keine Cloud Composer-Umgebungen erstellt wurden, stellen Sie das Konto des Composer-Dienst-Agents im Dienstprojekt bereit:

gcloud beta services identity create --service=composer.googleapis.com`

Hostprojekt konfigurieren

Konfigurieren Sie das Hostprojekt wie unten beschrieben.

(Private IP-Adresse) Privaten Google-Zugriff aktivieren

Wenn Sie Private-IP-Umgebungen verwenden möchten, aktivieren Sie den privaten Google-Zugriff für das Subnetz im Hostprojekt. Das können Sie im nächsten Schritt tun, wenn Sie Netzwerkressourcen für ein neues oder ein bereits vorhandenes Subnetz konfigurieren.

Auch wenn Sie öffentliche IP-Umgebungen verwenden möchten, empfehlen wir dennoch, Privaten Google-Zugriff für das Subnetz im Host aktivieren Projekt arbeiten. Wenn Sie den privaten Google-Zugriff nicht verwenden, achten Sie darauf, dass Sie keinen Traffic blockieren, der andernfalls von der impliziten IPv4-Firewallregel zum Zulassen von ausgehendem Traffic zugelassen würde. Dies ist erforderlich, um *.googleapis.com-Endpunkte erfolgreich zu erreichen.

Netzwerkressourcen konfigurieren

Wählen Sie eine der folgenden Optionen aus, um Netzwerkressourcen zuzuweisen und zu konfigurieren. Für jede Option müssen Sie die sekundären IP-Bereiche für Pods und Dienste benennen.

Freigegebene VPC einrichten und das Dienstprojekt anhängen

  1. Richten Sie eine freigegebene VPC ein, falls noch nicht geschehen. Wenn Sie bereits eine freigegebene VPC eingerichtet haben, fahren Sie mit dem nächsten Schritt fort.

  2. Hängen Sie das Dienstprojekt an, das Sie zum Hosten von Cloud Composer-Umgebungen verwenden.

    Übernehmen Sie beim Anhängen eines Projekts die standardmäßigen VPC-Netzwerkberechtigungen.

Berechtigungen für das Composer-Dienst-Agent-Konto gewähren

Im Hostprojekt:

  1. Berechtigungen für das Composer-Dienst-Agent-Konto bearbeiten service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com)

  2. Fügen Sie für dieses Konto eine weitere Rolle auf Projektebene hinzu:

    • Fügen Sie für private IP-Umgebungen die Composer Shared VPC Agent-Rolle hinzu.

    • Fügen Sie für öffentliche IP-Umgebungen die Compute Network User-Rolle hinzu.

Berechtigungen für das Google API-Dienst-Agent-Konto gewähren

Im Hostprojekt:

  1. Bearbeiten Sie die Berechtigungen für das Google API-Dienst-Agent-Konto SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com.

  2. Fügen Sie auf Projektebene die Rolle Compute-Netzwerknutzer (compute.networkUser) hinzu. Dies ist ein Anforderung für verwaltete Instanzgruppen, die mit freigegebener VPC verwendet werden da diese Art von Dienstkonto Aufgaben wie Erstellung.

Berechtigungen für GKE-Dienstkonten bearbeiten

Bearbeiten Sie im Hostprojekt die Berechtigungen für die GKE-Dienstkonten service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com.

Fügen Sie für jedes Dienstkonto eine weitere Rolle, compute.networkUser, mit einer der folgenden Optionen hinzu:

  • Weisen Sie diese Rolle auf Subnetzebene zu, damit ein Dienstkonto die VPCs-Peerings einrichten kann, die für Cloud Composer erforderlich sind. In diesem Fall müssen Sie das Subnetzwerk angeben, das von der Umgebung verwendet werden soll, dem Cluster der Umgebung möglicherweise keine Berechtigungen zum Auffinden des Subnetzwerks fehlen, Netzwerk.

  • Weisen Sie diese Rolle auf Projektebene für das gesamte Hostprojekt zu. In dieser hat das GKE-Dienstkonto des Dienstprojekts Berechtigungen zur Verwendung eines beliebigen Subnetzes im Hostprojekt.

Berechtigungen für das GKE-Dienstkonto des Dienstprojekts bearbeiten

Bearbeiten Sie im Hostprojekt die Berechtigungen für das GKE-Dienstkonto des Dienstprojekts.

Fügen Sie diesem Konto auf Projektebene eine weitere Rolle hinzu: Nutzer des Dienst-Agents für Kubernetes Engine-Host (roles/container.hostServiceAgentUser).

Dadurch kann das GKE-Dienstkonto des Dienstprojekts Verwenden Sie zum Konfigurieren das GKE-Dienstkonto des Hostprojekts freigegebenen Netzwerkressourcen.

(Private IP-Adresse, optional) Firewallregeln und Verbindungen zu Google-Domains konfigurieren

In einer freigegebene VPC-Konfiguration mit privaten IP-Umgebungen kann optional können Sie den gesamten Traffic über mehrere IP-Adressen, die zur Domain private.googleapis.com gehören und entsprechende Firewallregeln konfigurieren. Bei dieser Konfiguration greift Ihre Umgebung über IP-Adressen auf Google APIs und ‑Dienste zu, die nur innerhalb von Google Cloud routbar sind. Wenn Ihre freigegebene VPC-Konfiguration VPC Service Controls und leiten Sie dann Traffic über restricted.googleapis.com weiter .

Wenn in Ihrer freigegebenen VPC-Konfiguration private IP-Umgebungen verwendet werden:

  1. Optional: Konnektivität zu Google APIs und Google-Diensten konfigurieren
  2. Optional: Konfigurieren Sie Firewallregeln.

Wenn in Ihrer freigegebenen VPC-Konfiguration VPC Service Controls verwendet werden, folgen Sie stattdessen der Anleitung für Umgebungen mit VPC Service Controls:

  1. Konfigurieren Sie die Verbindung zu Google APIs und Google-Diensten.
  2. Firewallregeln konfigurieren

Fazit

Sie haben die Konfiguration des freigegebenen VPC-Netzwerks sowohl für Dienst- als auch für Hostprojekte abgeschlossen.

Jetzt können Sie im Dienstprojekt neue Umgebungen erstellen, die das VPC-Netzwerk des Hostprojekts verwenden.

Nächste Schritte