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 de trabajadores contiene información como el tamaño del disco y el tipo de máquina que deseas usar para tu grupo privado de trabajadores. El archivo de configuración de grupo privado es necesario 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 del 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 formato JSON. Para crear y administrar grupos privados con 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 de grupo privado de trabajadores se explican de la siguiente manera:

networkConfig

Este paso es opcional, Especifica networkConfig solo si intercambias tráfico de 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 Controles del servicio de VPC. Si no incluyes este campo en el archivo de configuración del grupo privado, se habilitará la salida pública. Para 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 campo es obligatorio si tu archivo de configuración del 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 se intercambia 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 interna al que se pueden asignar las VMs dentro del rango asignado de la red interconectada. 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 a una IP de inicio no válida, no se podrá crear el grupo privado.

peeredNetworkIpRange se especifica con la notación de 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 a 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 dentro del rango de conexión privada. Si no se especifica ningún valor para peeredNetworkIpRange, se usará el valor predeterminado /24, que asigna automáticamente una IP inicial con un rango de 256 IPs.

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

Consulta lo siguiente 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 IPs, con 254 IPs utilizables).
  • /29 especifica un rango con una IP inicial determinada automáticamente y un tamaño de prefijo de subred de 29 (ocho IPs, con seis IPs utilizables).

workerConfig

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

diskSizeGb

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

machineType

Este paso es opcional, Usa este campo para especificar el tipo de máquina de Compute Engine para la instancia del grupo privado. Si no especificas un valor, Cloud Build usa el valor predeterminado de e2-medium. De lo contrario, especifica uno de los siguientes tipos de máquinas:

Tipos de máquina

e2 n2d c3
e2-medium n2d-standard-2 c3-standard-4
e2-standard-2 n2d-standard-4 c3-estándar-8
e2-standard-4 n2d-standard-8 c3-estándar-22
e2-standard-8 n2d-standard-16 c3-estándar-44
e2-standard-16 n2d-standard-32 c3-estándar-88
e2-standard-32 n2d-standard-48 c3-estándar-176
e2-highmem-2 n2d-standard-64 c3-highcpu-4
e2-highmem-4 n2d-standard-80 c3-highcpu-8
e2-highmem-8 n2d-standard-96 c3-highcpu-22
e2-highmem-16 n2d-standard-128 c3-highcpu-44
e2-highcpu-2 n2d-standard-224 c3-highcpu-88
e2-highcpu-4 n2d-highmem-2 c3-highcpu-176
e2-highcpu-8 n2d-highmem-4 c3-alta memoria-4
e2-highcpu-16 n2d-highmem-8 c3-alta memoria-8
e2-highcpu-32 n2d-highmem-16 c3-alta memoria-22
n2d-highmem-32 c3-alta memoria-44
n2d-highmem-48 c3-alta memoria-88
n2d-highmem-64 c3-alta memoria-176
n2d-highmem-80
n2d-highmem-96
n2d-highcpu-2
n2d-highcpu-4
n2d-highcpu-8
n2d-highcpu-16
n2d-highcpu-32
n2d-highcpu-48
n2d-highcpu-64
n2d-highcpu-80
n2d-highcpu-96
n2d-highcpu-128
n2d-highcpu-224

En la siguiente tabla, se muestra la disponibilidad de los tipos de máquinas por región:

Disponibilidad de tipos de máquinas por región

c3-standard-* c3-highcpu-* c3-highmem-* e2-* n2d-*
asia-northeast1 asia-southeast1 asia-southeast1 africa-south1 africa-south1
asia-southeast1 europe-west1 europe-west1 asia-east1 asia-east1
australia-southeast1 europe-west3 europe-west2 asia-east2 asia-east2
europe-west1 europe-west4 europe-west3 asia-northeast1 asia-northeast1
europe-west2 me-central2 europe-west4 asia-northeast2 asia-northeast2
europe-west3 us-central1 us-central1 asia-northeast3 asia-northeast3
europe-west4 us-east1 us-east1 asia-south1 asia-south1
europe-west9 us-east4 us-east4 asia-south2 asia-south2
me-central2 us-east5 us-east5 asia-southeast1 asia-southeast1
me-west1 us-west2 us-west1 asia-southeast2 asia-southeast2
northamerica-northeast1 us-west3 us-west2 australia-southeast1 australia-southeast1
southamerica-east1 us-west4 australia-southeast2 australia-southeast2
us-central1 europe-central2 europe-central2
us-east1 europe-north1 europe-north1
us-east4 europe-north2 europe-southwest1
us-east5 europe-southwest1 europe-west1
us-west1 europe-west1 europe-west10
us-west2 europe-west2 europe-west12
us-west3 europe-west3 europe-west2
us-west4 europe-west4 europe-west3
europe-west6 europe-west4
europe-west8 europe-west6
europe-west9 europe-west8
europe-west10 europe-west9
europe-west12 me-central1
me-central1 me-central2
me-central2 me-west1
me-west1 northamerica-northeast1
northamerica-northeast1 northamerica-northeast2
northamerica-northeast2 southamerica-east1
northamerica-south1 southamerica-west1
southamerica-east1 us-central1
southamerica-west1 us-east1
us-central1 us-east4
us-east1 us-east5
us-east4 us-south1
us-east5 us-west1
us-south1 us-west2
us-west1 us-west3
us-west2 us-west4
us-west3
us-west4

enableNestedVirtualization

Este paso es opcional, Si tu grupo privado usa una VM con un tipo de máquina C3, puedes habilitar la virtualización anidada para ejecutar otras instancias de VM dentro de la VM de tu grupo privado. Para obtener más información, consulta Acerca de la virtualización anidada.

¿Qué sigue?