Esquema do arquivo de configuração do pool particular

Um arquivo de configuração de pool particular (arquivo de configuração do pool particular) contém instruções para o Cloud Build criar um pool particular com base nas suas especificações. Um arquivo de configuração do pool particular contém informações, como o tamanho do disco e o tipo de máquina que você quer usar no pool particular. O arquivo de configuração do pool particular é necessário quando você cria e gerencia pools particulares usando a ferramenta gcloud ou a API do Cloud Build.

Estrutura de um arquivo de configuração de pool particular

É possível gravar o arquivo de configuração do pool particular usando a sintaxe YAML ou JSON. Para criar e gerenciar pools particulares usando curl, grave o arquivo de configuração do pool particular no formato JSON. Para criar e gerenciar pools de particulares usando a ferramenta gcloud, grave o arquivo de configuração do pool particular no formato YAML ou JSON.

A estrutura do arquivo de configuração da build do pool particular é a seguinte:

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"
    }
  }
}

Os campos do arquivo de configuração do pool particular são explicados da seguinte maneira:

networkConfig

Esse campo é opcional. Especifique networkConfig somente se estiver fazendo peering da rede VPC com a rede do produtor de serviços.

egressOption

Esse campo é opcional. Defina o valor desse campo como NO_PUBLIC_EGRESS se você estiver criando seu pool particular em um perímetro do VPC Service Controls. Se você não incluir esse campo no arquivo de configuração do pool particular, a saída pública será ativada. Para informações sobre como configurar o VPC Service Controls para pools particulares, consulte Como usar o VPC Service Controls.

peeredNetwork

Este é um campo obrigatório se o arquivo de configuração do pool particular contiver o campo networkConfig. Defina o valor desse campo como o URL de recurso da rede VPC que tem peering com a rede do produtor de serviços. O URL do recurso de rede precisa estar no formato projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, em que NETWORK_PROJECT_ID é o ID do projeto do Google Cloud que contém sua rede VPC e NETWORK_NAME é o nome da sua rede VPC. Se você não especificar um valor, o Cloud Build usará a rede do produtor de serviços por padrão.

peeredNetworkIpRange

Esse campo é opcional. Defina o valor desse campo para especificar o intervalo de IP interno que pode ser atribuído às VMs no intervalo alocado da rede com peering. Se o intervalo de IP especificado não puder ser alocado no intervalo da conexão particular, por exemplo, devido a limitações de tamanho ou um IP inicial inválido, o pool particular não poderá ser criado.

peeredNetworkIpRange é especificado usando a notação de roteamento entre domínios sem classe (CIDR) no formato 'STARTING_IP/SUBNET_PREFIX_SIZE'. Se este campo for usado, SUBNET_PREFIX_SIZE precisará ser especificado. SUBNET_PREFIX_SIZE determina o tamanho do intervalo de IP. Ele precisa começar com uma barra (/) e ter um valor menor ou igual a 29.A parte STARTING_IP é opcional e especifica o endereço inicial do intervalo. Se o STARTING_IP não for especificado, um endereço inicial será atribuído automaticamente no intervalo de conexão particular. Se nenhum valor for especificado para peeredNetworkIpRange, será usado o valor padrão /24, que atribui automaticamente um IP inicial com um intervalo de 256 IPs.

O valor de SUBNET_PREFIX_SIZE não pode exceder 29. Um número maior especifica um prefixo de sub-rede maior, o que deixaria menos IPs possíveis e resultaria em um intervalo de IP menor. Como um endereço IP tem 32 bits, um tamanho de prefixo de /24 permite 256 IPs possíveis no intervalo (oito bits), enquanto um tamanho de prefixo de /29 deixa oito IPs possíveis (três bits). O número máximo de VMs de build é limitado ao número de IPs utilizáveis no intervalo (o número total possível de IPs no intervalo menos dois).

Confira exemplos do campo peeredNetworkIpRange:

  • 192.168.0.0/24 especifica um intervalo de IP que começa em 192.168.0.0 com um tamanho de prefixo de sub-rede de 24 (256 IPs, com 254 IPs utilizáveis).
  • /29 especifica um intervalo com um IP inicial determinado automaticamente e um tamanho de prefixo de sub-rede de 29 (oito IPs, com seis IPs utilizáveis).

workerConfig

Este campo é obrigatório. Ele contém opções de configuração para seu pool particular.

diskSizeGb

Esse campo é opcional. Use esse campo para especificar um tamanho de disco para sua instância de pool particular em GB. Especifique um valor maior ou igual a 100 e menor ou igual a 4.000. Se você não incluir esse campo no arquivo de configuração do pool particular ou se especificar 0 como o valor desse campo, o Cloud Build usará o valor padrão 100.

machineType

Esse campo é opcional. Use esse campo para especificar o tipo de máquina do Compute Engine para a instância do pool particular. Se você não especificar um valor, o Cloud Build usará o valor padrão de e2-medium. Caso contrário, especifique um dos seguintes 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

A tabela a seguir mostra a disponibilidade de tipos de máquina por região:

Disponibilidade de tipos de máquinas por região

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

Esse campo é opcional. Se o pool privado usar uma VM com um tipo de máquina C3, será possível ativar a virtualização aninhada para executar outras instâncias de VM dentro da VM do pool privado. Para mais informações, consulte Sobre a virtualização aninhada.

A seguir