Esquema del archivo de configuración del grupo privado

Un archivo de configuración de grupo privado (archivo de configuración de grupo privado) contiene instrucciones para que Cloud Build cree un grupo privado según tus especificaciones. Un archivo de configuración de grupo privado contiene información como el tamaño del disco y el tipo de máquina que quieres usar para el grupo privado. El archivo de configuración del grupo privado es obligatorio cuando creas y administras grupos privados con la herramienta de gcloud o la API de Cloud Build.

Estructura de un archivo de configuración de un grupo de trabajadores

Puedes escribir el archivo de configuración de grupo privado con la sintaxis YAML o JSON. Para crear y administrar grupos privados con curl, escribe el archivo de configuración del grupo privado en el formato JSON. Para crear y administrar grupos privados mediante la herramienta de gcloud, escribe el archivo de configuración del grupo privado en formato YAML o JSON.

Un archivo de configuración de grupo privado de trabajadores tiene la siguiente estructura:

YAML

privatePoolV1Config:
  networkConfig:
    egressOption: NO_PUBLIC_EGRESS
    peeredNetwork: 'PEERED_NETWORK'
    peeredNetworkIpRange: 'PEERED_NETWORK_IP_RANGE'
  workerConfig:
    diskSizeGb: 'PRIVATE_POOL_DISK_SIZE'
    machineType: PRIVATE_POOL_MACHINE_TYPE

JSON

{
  "privatePoolV1Config": {
    "networkConfig": {
      "egressOption": "NO_PUBLIC_EGRESS",
      "peeredNetwork": "PEERED_NETWORK",
      "peeredNetworkIpRange": "PEERED_NETWORK_IP_RANGE"
    },
    "workerConfig": {
      "diskSizeGb": "PRIVATE_POOL_DISK_SIZE",
      "machineType": "PRIVATE_POOL_MACHINE_TYPE"
    }
  }
}

Los campos del archivo de configuración del grupo privado se explican a continuación:

networkConfig

Este paso es opcional, Especifica networkConfig solo si intercambias tu red de VPC con la red del productor de servicios.

egressOption

Este paso es opcional, Establece el valor de este campo en NO_PUBLIC_EGRESS si creas tu grupo privado dentro de un perímetro de los Controles del servicio de VPC. Si no incluyes este campo en el archivo de configuración del grupo privado, la salida pública estará habilitada. Si deseas obtener información sobre cómo configurar los Controles del servicio de VPC para grupos privados, consulta Usa los Controles del servicio de VPC.

peeredNetwork

Este es un campo obligatorio si el archivo de configuración de tu grupo privado contiene el campo networkConfig. Establece el valor de este campo en la URL del recurso de red de la red de VPC que intercambia el tráfico con la red del productor de servicios. La URL del recurso de red debe tener el formato projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, en el que NETWORK_PROJECT_ID es el ID del proyecto de Google Cloud que contiene tu red de VPC y NETWORK_NAME es el nombre de tu red de VPC. Si no especificas un valor, Cloud Build usa la red del productor de servicios de forma predeterminada.

peeredNetworkIpRange

Este paso es opcional, Establece el valor de este campo para especificar el rango de IP internas al que se pueden asignar las VMs dentro del rango asignado de la red de intercambio de tráfico. Si el rango de IP especificado no se puede asignar dentro del rango de la conexión privada, por ejemplo, debido a limitaciones de tamaño o una IP de inicio no válida, no se puede crear el grupo privado.

peeredNetworkIpRange se especifica con la notación Enrutamiento entre dominios sin clases (CIDR) en el formato 'STARTING_IP/SUBNET_PREFIX_SIZE'. Si se usa este campo, se debe especificar SUBNET_PREFIX_SIZE. SUBNET_PREFIX_SIZE determina el tamaño del rango de IP. Debe comenzar con una barra (/) y tener un valor menor o igual que 29. La parte STARTING_IP es opcional y especifica la dirección inicial del rango. Si no se especifica STARTING_IP, se asigna automáticamente una dirección de inicio desde el rango de la conexión privada. Si no se especifica ningún valor para peeredNetworkIpRange, se usará un valor predeterminado de /24, que asigna automáticamente una IP de inicio con un rango de 256 IP.

El valor de SUBNET_PREFIX_SIZE no debe ser superior a 29. Un número mayor especifica un prefijo de subred más grande, lo que dejaría menos IP posibles y daría como resultado un rango de IP más pequeño. Como una dirección IP tiene 32 bits, un tamaño de prefijo de /24 permite 256 direcciones IP posibles en el rango (ocho bits), mientras que un tamaño de prefijo de /29 deja ocho IP posibles (tres bits). La cantidad máxima de VMs del compilador se limita a la cantidad de IP utilizables en el rango (la cantidad total posible de IP en el rango menos dos).

Consulta los siguientes ejemplos para ver ejemplos del campo peeredNetworkIpRange:

  • 192.168.0.0/24 especifica un rango de IP que comienza en 192.168.0.0 con un tamaño de prefijo de subred de 24 (256 IP, con 254 IP utilizables).
  • /29 especifica un rango con una IP de inicio que se determina automáticamente y un tamaño de prefijo de subred de 29 (ocho IP, con seis IP utilizables).

workerConfig

Este campo es obligatorio. Contiene opciones de configuración para el grupo privado.

diskSizeGb

Este paso es opcional, Usa este campo si quieres especificar un tamaño de disco para tu instancia de grupo privado en GB. Especifica un valor mayor o igual que 100 y menor o igual que 2,000. Si no incluyes este campo en tu archivo de configuración de grupo privado o si especificas 0 como el valor de este campo, Cloud Build usa el valor predeterminado de 100.

machineType

Este paso es opcional, Usa este campo a fin de especificar el tipo de máquina de Compute Engine para tu instancia de grupo privado. Especifica uno de los siguientes tipos de máquinas:

  • e2-medium
  • e2-standard-2
  • e2-standard-4
  • e2-standard-8
  • e2-standard-16
  • e2-standard-32
  • e2-highmem-2
  • e2-highmem-4
  • e2-highmem-8
  • e2-highmem-16
  • e2-highcpu-2
  • e2-highcpu-4
  • e2-highcpu-8
  • e2-highcpu-16
  • e2-highcpu-32

Si no especificas un valor, Cloud Build usa el valor predeterminado de e2-medium.

¿Qué sigue?