Com o Cloud Build, é possível aumentar a velocidade de build executando seus builds em tipos de máquina virtual (VM) com alta utilização de CPU em vez da VM padrão. Embora uma máquina com um grande número de vCPUs execute builds mais rapidamente, ela pode aumentar o tempo de inicialização dos pools padrão porque o Cloud Build inicia máquinas não padrão somente sob demanda.
Se você precisar de mais opções de vCPU do que os pools padrão oferecem, execute seus builds em pools particulares, que oferecem outros tipos de máquinas com uso intenso de CPU.
Para saber mais sobre todos os tipos de máquinas disponíveis, consulte a página de preços.
Antes de começar
Para usar os exemplos de linha de comando neste guia, instale e configure a Google Cloud CLI.
- Se você já instalou a CLI gcloud anteriormente, verifique se tem a versão mais recente disponível executando
gcloud components update.
Aumentar a vCPU para pools padrão
Para aumentar a vCPU de builds em execução em um pool padrão, transmita o valor diretamente para o comando gcloud builds submit ou especifique o valor no arquivo de configuração do build.
Transmita o valor diretamente para o comando gcloud builds submit:
Para especificar um tamanho de VM personalizado diretamente no comando gcloud builds submit,
adicione o argumento --machine-type ao comando:
gcloud builds submit --config=cloudbuild.yaml \
--machine-type=E2_HIGHCPU_8
Especifique o valor no arquivo de configuração de build:
YAML
Abra o arquivo de configuração do build.
Atualize o campo
machineTypepara um valor de enumeração correspondente a um dos tipos de máquina compatíveis com pools padrão. O exemplo a seguir mostra como adicionar a opçãomachineTypea um arquivo de configuração de build:steps: - name: 'gcr.io/cloud-builders/docker' args: ['build', '-t', 'gcr.io/my-project/image1', '.'] options: machineType: 'E2_HIGHCPU_8'Inicie o build usando a CLI gcloud ou gatilhos de build.
JSON
Abra o arquivo de configuração do build.
Atualize o campo
machineTypepara um valor de enumeração correspondente a um dos tipos de máquina compatíveis com pools padrão. O exemplo a seguir mostra como adicionar a opçãomachineTypea um arquivo de configuração de build:{ "steps": [ { "name": "gcr.io/cloud-builders/docker", "args": ["build", "-t", "gcr.io/my-project/image1", "."] }, "options": { "machineType": "E2_HIGHCPU_8" } }Inicie o build usando a CLI gcloud ou gatilhos de build.
Para garantir que um tipo de máquina específico seja usado na criação do contêiner do serviço do Cloud Run:
Crie e envie a imagem do contêiner usando um build dedicado do Cloud Build, configurando o
machineTypedesejado nocloudbuild.yaml.Implante o serviço no Cloud Run referenciando o URL da imagem no Artifact Registry:
gcloud run deploy SERVICE_NAME --image IMAGE_URL
Aumentar as vCPUs para pools particulares
Console
Abra a página Pool de trabalhadores no console Google Cloud :
Selecione o projeto em que você criou o pool particular.
Clique no nome do pool particular.
No painel lateral Editar pool particular, use o menu suspenso Tipo de máquina para selecionar um tipo de máquina maior.
Clique em Salvar.
gcloud
É possível aumentar a vCPU para builds em execução em um pool particular transmitindo o valor diretamente para o comando gcloud builds worker-pools update ou especificando o valor no arquivo de configuração do pool particular.
Especifique o valor no arquivo de configuração do pool particular:
Atualize o valor do campo
machineTypepara um dos tipos de máquina compatíveis.Execute o seguinte comando, em que
PRIVATEPOOL_IDé o identificador exclusivo do seu pool particular,REGIONé a região em que o pool particular está localizado ePRIVATEPOOL_CONFIG_FILEé o nome do arquivo de configuração do pool particular:gcloud builds worker-pools update PRIVATEPOOL_ID \ --region=REGION \ --config-from-file=PRIVATEPOOL_CONFIG_FILE
Transmita o valor diretamente para o comando gcloud builds worker-pools update:
gcloud builds worker-pools update PRIVATEPOOL_ID \
--region=REGION \
--worker-machine-type=PRIVATEPOOL_MACHINE_TYPE
Substitua os valores do marcador nos comandos anteriores pelo seguinte:
PRIVATEPOOL_ID: o ID do pool particular atual; Não é possível atualizar esse valor; é preciso especificar um código de pool particular existente.REGION: a região em que você criou o pool particular.PRIVATEPOOL_DISK_SIZE: o tamanho do disco atualizado.PRIVATEPOOL_MACHINE_TYPEé o tipo de máquina atualizado.O Cloud Build usa o tipo de máquina atualizado sempre que você executa builds usando o pool particular correspondente.
A seguir
- Saiba mais sobre as práticas recomendadas para acelerar builds.