Cloud Build in einem privaten Netzwerk verwenden

Auf dieser Seite wird erläutert, wie Sie häufig verwendete private Netzwerkkonfigurationen für die Verwendung mit privaten Pools konfigurieren. Eine Übersicht über private Pools finden Sie unter Private Pools – Übersicht.

Standardnetzwerkeinstellungen festlegen

Wenn Sie einen privaten Pool erstellen, ist standardmäßig die Verwendung des VPC-Netzwerks eingerichtet, in dem sich die privaten Pools befinden. Verwenden Sie das standardmäßige VPC-Netzwerk in folgenden Fällen:

  • Sie möchten, dass Builds auf das öffentliche Internet zugreifen.
  • Sie möchten konfigurierbare Maschinentypen und Größen, statische IP-Bereiche oder eines der anderen Features von privaten Pools.
  • Sie suchen nicht nach Builds, um auf Ressourcen in Ihrem privaten VPC-Netzwerk zuzugreifen.

Eine Anleitung zum Herstellen einer Verbindung mit dem Standardnetzwerk finden Sie unter Privaten Pool erstellen.

Statischen IP-Bereich definieren

In einigen Fällen benötigen Sie möglicherweise einen definierten statischen IP-Bereich für Ihren privaten Pool, z. B. wenn Sie einen Dienst aufrufen, der Aufrufe aus einem definierten IP-Bereich zulässt. Bei privaten Pools können Sie beim Einrichten einer privaten Verbindung zwischen Ihrem VPC-Netzwerk und dem VPC-Netzwerk des privaten Pools zugewiesene IP-Adressbereiche mit einem definierten CIDR-IP-Adressbereich erstellen, den Ihr die ausgeführt werden sollen.

In einem VPC-Netzwerk ausführen

Wenn Sie Cloud Build mit Ressourcen in einem privaten Netzwerk hinter einer Firewall verwenden möchten, z. B. in einem VPC-Netzwerk, können Sie eine private Verbindung zwischen dem privaten Pool und dem verwalteten VPC-Netzwerk erstellen. Dadurch kann der private Pool auf Ressourcen in Ihrem privaten Netzwerk zugreifen, wie Quell-Repositories, Artefakt-Repositories, Datenbanken, Secret-Instanzen und Laufzeiten.

In einem freigegebenen VPC-Netzwerk ausführen

Wenn Sie ein freigegebenes VPC-Netzwerk verwenden, muss das Projekt, in dem Sie den privaten Pool erstellen, an das Hostprojekt angehängt werden, das das freigegebene VPC-Netzwerk enthält. Eine Anleitung zum Anhängen eines Projekts finden Sie unter Freigegebenes VPC-Netzwerk bereitstellen.

Verbindung zu Ressourcen in einem anderen Peering-VPC-Netzwerk oder freigegebenen VPC-Netzwerk herstellen

Organisationen verwenden häufig eine freigegebene VPC (Hostprojekt), um das Netzwerk und die Identitäts- und Zugriffsverwaltung für alle Projekte zu zentralisieren. Dadurch können interne IP-Adressen für von Google verwaltete Dienste wie private GKE-Cluster und private Cloud SQL verwendet werden. Diese von Google verwalteten Dienste sind auch über Peering mit einem vom Kunden bereitgestellten freigegebenen VPC-Netzwerk verbunden. Das Problem bei dieser Konfiguration besteht darin, dass private Pools aufgrund des fehlenden transitiven Peerings nicht mit den von Google verwalteten Diensten kommunizieren können. Transitives Peering ist nur dann ein Problem, wenn mehrere Netzwerke über VPC-Peering miteinander verbunden sind. Wenn eine der Verbindungen so geändert wird, dass sie ein VPN (oder Interconnect) anstelle von VPC-Peering verwendet, können die Netzwerke Konnektivität herstellen. Eine Anleitung zu diesem Netzwerk finden Sie unter Mit privaten Cloud Build-Pools auf private Google Kubernetes Engine-Cluster zugreifen.

In einer bestimmten Region ausgeführt

Private Pools unterstützen derzeit 15 Regionen. Sie können einen privaten Pool in einer dieser Regionen erstellen und Ihren Build so konfigurieren, dass er in der angegebenen Region ausgeführt wird. Sie können alle erstellten Container-Images und -Artefakte in Artifact Registry-Repositories und Cloud Storage-Buckets in bestimmten Regionen speichern.

In privaten GKE-Clustern bereitstellen

Private GKE-Cluster können einen öffentlichen oder privaten Endpunkt für die Steuerungsebene haben.

Für die Bereitstellung in einem privaten GKE-Cluster mit einem öffentlichen Endpunkt können Sie den privaten Pool im Standardnetzwerk mit Zugriff auf das öffentliche Internet erstellen und einen Statischer IP-Bereich für den Pool, um eine Liste für den Zugriff auf den Cluster zuzulassen.

Für das Deployment auf private GKE-Cluster mit einem privaten Endpunkt können Sie die Schritte befolgen, die unter Mit Google Cloud-privaten Clustern auf private Google Kubernetes Engine-Cluster zugreifen beschrieben werden. Alternativ können Sie nach dem Peering eine Verbindung zum Netzwerk-Proxy im Cluster ausführen, wie unter Private GKE-Cluster mit Netzwerk-Proxys erstellen beschrieben.

Mit VPC Service Controls verwenden

VPC Service Controls ist ein Google Cloud-Feature, mit dem Sie einen sicheren Perimeter einrichten können, der vor Daten-Exfiltration schützt. Eine Anleitung zur Verwendung von VPC Service Controls mit privaten Pools als zusätzliche Sicherheit für Ihre Builds finden Sie unter VPC Service Controls verwenden.

Öffentliche IP-Adressen von Workern entfernen

Sie können öffentliche IP-Adressen aus privaten Pools entfernen. Dazu setzen Sie das Feld egressOption in der Konfigurationsdatei des Worker-Pools auf NO_PUBLIC_EGRESS. Beachten Sie jedoch, dass Ihr privater Pool nicht mehr auf Ressourcen im öffentlichen Internet zugreifen kann, wenn Sie öffentliche IP-Adressen entfernen.

Ausgehender Traffic auf das öffentliche Internet beschränken

Es gibt verschiedene Möglichkeiten, um ausgehenden Traffic von privaten Pools auf das öffentliche Internet einzuschränken:

Nutzung privater Pools durchsetzen

Für Cloud Build gilt eine Einschränkung der Organisationsrichtlinien constraints/cloudbuild.allowedWorkerPools, die Sie erzwingen können, damit die Builds in Ihrer Organisation nicht den Standardpool und nur den privaten Pool verwenden können. auf Ihrem Mobilgerät. Eine Anleitung zur Verwendung dieses Features finden Sie unter Einschränkungen für Organisationsrichtlinien einrichten.

Mit privaten Cloud DNS-Zonen verwenden

Sie können eine private Cloud DNS-Zone für private Pools erstellen. Eine Anleitung hierzu finden Sie unter Private Zone erstellen.

Nächste Schritte