Esquema del archivo de configuración del grupo privado

Un 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 un grupo privado contiene información como el tamaño del disco y el tipo de máquina que quieres usar en tu grupo privado. El archivo de configuración del grupo privado es obligatorio cuando creas y gestionas grupos privados con la herramienta gcloud o la API Cloud Build.

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

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

Un archivo de configuración de un grupo privado 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 campo es opcional. Especifica networkConfig solo si vas a emparejar tu red de VPC con la red del productor de servicios.

egressOption

Este campo es opcional. Asigna el valor NO_PUBLIC_EGRESS a este campo si vas a crear tu grupo privado en un perímetro de Controles de 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 Controles de Servicio de VPC para los grupos privados, consulta el artículo Usar Controles de Servicio de VPC.

peeredNetwork

Este campo es obligatorio si el archivo de configuración del grupo privado contiene el campo networkConfig. Asigna a este campo la URL del recurso de red de la red de VPC emparejada 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, donde NETWORK_PROJECT_ID es el ID del proyecto Google Cloud que contiene tu red de VPC y NETWORK_NAME es el nombre de tu red de VPC. Si no especifica ningún valor, Cloud Build usará la red del productor de servicios de forma predeterminada.

peeredNetworkIpRange

Este campo es opcional. Define el valor de este campo para especificar el intervalo de IPs internas que se pueden asignar a las VMs dentro del intervalo asignado de la red emparejada. Si el intervalo de IP especificado no se puede asignar dentro del intervalo 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 pool privado.

peeredNetworkIpRange se especifica mediante la notación de enrutamiento de interdominios 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 intervalo de direcciones IP. Debe empezar por una barra diagonal (/) y tener un valor inferior o igual a 29.La parte STARTING_IP es opcional y especifica la dirección inicial del intervalo. Si no se especifica STARTING_IP, se asigna automáticamente una dirección de inicio del intervalo 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 intervalo de 256 IPs.

El valor de SUBNET_PREFIX_SIZE no debe superar 29. Un número mayor especifica un prefijo de subred más grande, lo que dejaría menos IPs posibles y daría como resultado un intervalo de IPs más pequeño. Como una dirección IP es de 32 bits, un prefijo de /24 permite 256 IPs posibles en el intervalo (ocho bits), mientras que un prefijo de /29 deja ocho IPs posibles (tres bits). El número máximo de VMs de compilación se limita al número de IPs utilizables del intervalo (el número total posible de IPs del intervalo menos dos).

Consulta los siguientes ejemplos del campo peeredNetworkIpRange:

  • 192.168.0.0/24 especifica un intervalo de IPs que empieza por 192.168.0.0 con un tamaño de prefijo de subred de 24 (256 IPs, de las cuales 254 son utilizables).
  • /29 especifica un intervalo con una IP de inicio determinada automáticamente y un tamaño de prefijo de subred de 29 (ocho IPs, de las cuales seis son utilizables).

workerConfig

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

diskSizeGb

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

machineType

Este campo es opcional. Usa este campo para especificar el tipo de máquina de Compute Engine de tu instancia de grupo privado. Si no especificas ningún valor, Cloud Build usará el valor predeterminado e2-medium. De lo contrario, especifica uno de los siguientes tipos de máquina:

Tipos de máquina

e2 n2d c3
e2-medium n2d‑standard‑2 c3-standard-4
e2-standard-2 n2d‑standard‑4 c3-standard-8
e2-standard-4 n2d‑standard‑8 c3-standard-22
e2-standard-8 n2d‑standard‑16 c3-standard-44
e2-standard-16 n2d‑standard‑32 c3-standard-88
e2-standard-32 n2d‑standard‑48 c3-standard-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-highmem-4
e2-highcpu-16 n2d‑highmem‑8 c3-highmem-8
e2-highcpu-32 n2d‑highmem‑16 c3-highmem-22
n2d‑highmem‑32 c3-highmem-44
n2d‑highmem‑48 c3-highmem-88
n2d‑highmem‑64 c3-highmem-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 los tipos de máquina 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 campo 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 el artículo Acerca de la virtualización anidada.

Siguientes pasos