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 Übersicht über private Pools.

Standardnetzwerkeinstellungen festlegen

Wenn Sie einen privaten Pool erstellen, wird standardmäßig das Virtual Private Cloud-Netzwerk 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 benötigen konfigurierbare Maschinentypen und -größen, statische interne IP-Bereiche oder eines der anderen Features privater Pools.
  • Sie suchen nicht nach Builds, die auf Ressourcen in Ihrem privaten Netzwerk zugreifen können.

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

Statischen internen 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 auf die Zulassungsliste setzt. Mit 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-Bereich von IP-Adressen erstellen, auf denen Ihre privaten Pools ausgeführt werden. Sie können innerhalb eines zugewiesenen IP-Adressbereichs auch einen kleineren CIDR-Bereich angeben, der von einem privaten Pool verwendet wird.

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 Ihrem verwalteten VPC-Netzwerk herstellen. Dadurch kann der private Pool auf Ressourcen in Ihrem privaten Netzwerk zugreifen, z. B. 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 sein, 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 die Netzwerk- und 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-Instanzen genutzt werden. Diese von Google verwalteten Dienste werden auch über ein freigegebenes VPC-Netzwerk eines Kunden verbunden. Das Problem bei dieser Konfiguration besteht darin, dass private Pools aufgrund der Verzweigung eines 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 anstelle des VPC-Peerings auf VPN oder Interconnect umgestellt wird, können die Netzwerke eine Verbindung herstellen. Eine Anleitung zum Einrichten dieses Netzwerks finden Sie unter Auf private Google Kubernetes Engine-Cluster mit privaten Cloud Build-Pools zugreifen.

In einer bestimmten Region ausgeführt

Sie können einen privaten Pool in einer der unterstützten Regionen erstellen. Sie können alle 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.

Zum Bereitstellen in einem privaten GKE-Cluster mit einem öffentlichen Endpunkt können Sie Ihren privaten Pool im Standardnetzwerk mit Zugriff auf das öffentliche Internet erstellen und einen statischen internen IP-Bereich für den Pool definieren, um die Liste für den Zugriff auf den Cluster zuzulassen.

Zum Bereitstellen in privaten GKE-Clustern mit einem privaten Endpunkt können Sie die unter Auf private Google Kubernetes Engine-Cluster mit privaten Cloud Build-Pools zugreifen beschriebenen Schritte ausführen. Alternativ können Sie nach dem Peering in Ihrer VPC einen Netzwerkproxy auf dem Cluster ausführen, wie unter Private GKE-Cluster mit Netzwerkproxys 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. Anleitungen zur Verwendung von VPC Service Controls mit privaten Pools finden Sie unter VPC Service Controls verwenden.

Öffentliche IP-Adressen aus privaten Pools entfernen

Sie können öffentliche IP-Adressen aus privaten Pools entfernen. Legen Sie dazu das Feld egressOption in der Konfigurationsdatei des privaten Pools auf NO_PUBLIC_EGRESS fest. Beachten Sie jedoch, dass durch das Entfernen öffentlicher IP-Adressen der private Pool nicht auf Ressourcen im öffentlichen Internet zugreifen kann.

Ausgehender Traffic auf das öffentliche Internet beschränken

Es gibt verschiedene Möglichkeiten, den ausgehenden Traffic von privaten Pools auf das öffentliche Internet zu beschränken:

Nutzung privater Pools erzwingen

Cloud Build bietet eine Einschränkung der Organisationsrichtlinie constraints/cloudbuild.allowedWorkerPools, die Sie erzwingen können, um die Builds in Ihrer Organisation so einzustellen, dass sie nicht den Standardpool sondern nur den privaten Pool verwenden. 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 freigeben, um sie mit privaten Pools zu verwenden. Eine Anleitung finden Sie unter Private Zone freigeben.

Hintergrund einer NAT ausführen

Sie können zwar den IP-Bereich des privaten Pools in Ihrer VPC steuern, die externen IP-Adressen (falls aktiviert) jedoch nicht. Wenn Sie von einer reservierten IP-Adresse auf eine Ressource zugreifen müssen, erstellen Sie eine Proxy-VM und leiten Sie den Traffic durch diese weiter. Führen Sie dazu die Schritte unter Mit Cloud Build über eine statische Quell-IP-Adresse auf externe Ressource zugreifen aus.

Nächste Schritte