Usar Cloud Build en una red privada

En esta página se explica cómo configurar las configuraciones de red privada que se usan con frecuencia para usarlas con grupos privados. Para ver un resumen de los grupos privados, consulta el artículo Resumen de los grupos privados.

Definir la configuración de red predeterminada

Cuando creas un grupo privado, se te configura de forma predeterminada para que uses la red de nube privada virtual en la que residen los grupos privados. Usa la red de VPC predeterminada si:

Para obtener instrucciones sobre cómo conectarse a la red predeterminada, consulta Crear un pool privado.

Definir un intervalo de direcciones IP internas estáticas

En algunos casos, es posible que necesites tener un intervalo de IPs estáticas definido para tu grupo privado, como cuando llamas a un servicio que permite llamadas desde un intervalo de IPs definido. Con los grupos privados, al configurar una conexión privada entre tu red de VPC y la red de VPC del grupo privado, puedes crear intervalos de direcciones IP asignadas con un intervalo CIDR definido de IPs en las que se ejecutarán tus grupos privados. También puedes especificar un intervalo CIDR más pequeño dentro de un intervalo de direcciones IP asignado que usará un grupo privado.

Ejecutar en una red de VPC

Para usar Cloud Build con recursos de una red privada que se encuentra detrás de un cortafuegos, como una red de VPC, puedes crear una conexión privada entre el grupo privado y tu red de VPC gestionada. De esta forma, el grupo privado puede acceder a recursos de tu red privada, como repositorios de origen, repositorios de artefactos, bases de datos, instancias de secretos y tiempos de ejecución.

Ejecución en una red de VPC compartida

Si utilizas una red de VPC compartida, el proyecto en el que crees el grupo privado debe estar vinculado al proyecto del host que contenga la red de VPC compartida. Para obtener instrucciones sobre cómo adjuntar un proyecto, consulta Aprovisionar una red de VPC compartida.

Conectarse a recursos de otra red de VPC emparejada o de una red de VPC compartida

Las organizaciones suelen adoptar una VPC compartida (proyecto host) para centralizar la gestión de redes y de identidades y accesos en todos los proyectos. De esta forma, se pueden usar direcciones IP internas para servicios gestionados por Google, como clústeres de GKE privados y Cloud SQL privado. Estos servicios gestionados por Google también se emparejan con una red de VPC compartida propiedad del cliente. El problema de esta configuración es que los grupos privados no pueden comunicarse con los servicios gestionados por Google debido a la falta de peering transitivo. El emparejamiento transitivo solo supone un problema cuando varias redes están conectadas entre sí mediante el emparejamiento de VPCs. Si una de las conexiones se cambia para usar una VPN (o una interconexión) en lugar del peering de VPC, las redes podrán establecer la conectividad. Para obtener instrucciones sobre esta configuración de red, consulta el artículo Acceder a clústeres privados de Google Kubernetes Engine con grupos privados de Cloud Build.

Ejecutar en una región específica

Puedes crear un grupo privado en una de las regiones admitidas. Puedes almacenar cualquier imagen de contenedor y artefacto compilados en repositorios de Artifact Registry y segmentos de Cloud Storage en las regiones especificadas.

Desplegar en clústeres privados de GKE

Los clústeres privados de GKE pueden tener un endpoint público o privado para el plano de control.

Para implementar en un clúster privado de GKE con un endpoint público, puedes crear tu grupo privado en la red predeterminada con acceso a Internet público y definir un intervalo de IPs internas estático para tu grupo, de modo que se pueda incluir en la lista de permitidos para acceder al clúster.

Para desplegar en clústeres privados de GKE con un endpoint privado, puedes seguir los pasos descritos en el artículo Acceder a clústeres privados de Google Kubernetes Engine con grupos privados de Cloud Build. También puedes ejecutar un proxy de red en el clúster una vez que se haya emparejado con tu VPC, tal como se describe en el artículo Crear clústeres de GKE privados con proxies de red.

Usar con Controles de Servicio de VPC

Controles de Servicio de VPC es una Google Cloud función que te permite configurar un perímetro seguro para protegerte frente a la filtración externa de datos. Para obtener instrucciones sobre cómo usar Controles de Servicio de VPC con grupos privados para añadir seguridad adicional a tus compilaciones, consulta Usar Controles de Servicio de VPC.

Eliminar IPs públicas en grupos privados

Para quitar IPs públicas de grupos privados, asigna el valor NO_PUBLIC_EGRESS al campo egressOption del archivo de configuración del grupo privado. Sin embargo, ten en cuenta que, si quitas las IPs públicas, tu grupo privado no podrá acceder a los recursos de Internet públicos.

Restringir la salida a la Internet pública

Hay varias formas de restringir la salida de los grupos privados a Internet público:

Forzar el uso de grupos privados

Cloud Build ofrece una constraints/cloudbuild.allowedWorkerPools restricción de política de organización que puedes aplicar para obligar a las compilaciones de tu organización a no usar el grupo predeterminado y usar solo el grupo privado. Para obtener instrucciones sobre cómo usar esta función, consulta el artículo Configurar restricciones de políticas de la organización.

Usar con zonas de Cloud DNS privadas

Puedes compartir una zona de Cloud DNS privada para usarla con grupos privados. Para ver las instrucciones, consulta Compartir una zona privada.

Ejecutar detrás de una NAT

Aunque puedes controlar el intervalo de IPs de tu grupo privado en tu VPC, no puedes controlar las direcciones IP externas (si están habilitadas). Si necesitas acceder a un recurso desde una IP reservada, crea una VM proxy y enruta el tráfico a través de ella siguiendo los pasos que se indican en Acceder a un recurso externo desde una dirección IP de origen estática con Cloud Build.

Siguientes pasos