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?
- Obtén más información para ejecutar compilaciones en grupos privados.
- Obtén más información para crear y administrar grupos privados.