Nesta página, descrevemos como especificar o número de CPUs a serem usadas para cada instância do Cloud Run. Por padrão, as instâncias de contêiner do Cloud Run estão limitadas a 1 instância de CPU. É possível aumentar ou diminuir esse valor conforme descrito nesta página.
Esta página também descreve como ativar ou desativar a otimização de CPU de inicialização, um atributo que aumenta temporariamente a alocação de CPU durante a inicialização da instância para reduzir a latência de inicialização.
Definir e atualizar os limites de CPU
É possível definir limites de CPU para serviços e jobs do Cloud Run.
Por padrão, cada instância é limitada a 1 CPU. É possível aumentar isso usando qualquer valor inteiro até um máximo de 8 CPUs.
CPU e memória
Veja a seguir os requisitos mínimos de memória para CPUs:
CPUs | Memória mínima |
---|---|
4 | 2 GiB |
6 | 3 GiB |
8 | 4 GiB |
Como alternativa, apenas para os serviços do Cloud Run, se você quiser usar menos de uma CPU, selecione qualquer valor entre 0,08 e 1, em incrementos de 0,01. Qualquer valor acima de 1 precisa ser um número inteiro. If you use less than 1 CPU, the following requirements are enforced:
Configuração | Requisito |
---|---|
Memória | É necessário um mínimo de 0,5 CPU para definir um limite de memória maior que 512 MiB. É necessário um mínimo de 1 CPU para definir um limite de memória maior que 1 GiB. |
Simultaneidade | A simultaneidade máxima precisa ser definida como 1 . |
CPU alocada | A alocação de CPU precisa ser definida como CPU alocada somente durante o processamento da solicitação. |
Ambiente de execução | Use o ambiente de execução de primeira geração. |
Para serviços do Cloud Run
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
É possível definir limites de memória usando o console do Google Cloud, a linha de comando gcloud ou um arquivo YAML ao criar um novo serviço ou implantar uma nova revisão:
Console
Clique em Criar serviço se estiver configurando um novo serviço em que fará uma implantação. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar nova revisão.
Se você estiver configurando um novo serviço, preencha a página inicial de configurações de serviço conforme desejado e clique em Contêiner, redes, segurança para expandir a página de configuração do serviço.
Clique na guia Contêiner.
- Selecione o limite de CPU que você quer na lista suspensa
usando Personalizado se quiser usar menos de uma CPU. Selecione um valor de
1
,2
,4
,6
ou8
CPUs. Para menos de uma CPU, especifique um valor de 0,08 a menos de 1,00 em incrementos de 0, 01. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
- Selecione o limite de CPU que você quer na lista suspensa
usando Personalizado se quiser usar menos de uma CPU. Selecione um valor de
Clique em Criar ou Implantar.
Linha de comando
É possível atualizar os limites de CPU de um determinado serviço usando o seguinte comando:
gcloud run services update SERVICE --cpu CPU
Substituir
- SERVICE pelo nome do serviço;
- CPU pelo limite de CPU desejado. Especifique o valor de
1
,2
,4
,6
ou8
CPUs. Para menos de uma CPU, especifique um valor de 0,08 a menos de 1,00, em incrementos de 0,01. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
Também é possível definir o limite de CPU durante a implantação usando este comando:
gcloud run deploy --image IMAGE_URL --cpu CPU
Substituir
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
us-docker.pkg.dev/cloudrun/container/hello:latest
. Ao usar o Artifact Registry, o URL tem o seguinte formato:REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
. . - CPU com o valor
1
,2
,4
,6
ou8
. Para menos de uma CPU, especifique um valor de 0,08 a menos de 1,00, em incrementos de 0,01. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
YAML
É possível fazer o download e conferir as configurações de serviço usando o
comando gcloud run services describe --format export
, que produz
resultados limpos no formato YAML.
Em seguida, modifique os campos descritos abaixo e
faça upload do YAML modificado usando o comando gcloud run services replace
.
Modifique os campos somente conforme documentado.
Para visualizar e fazer o download da configuração:
gcloud run services describe SERVICE --format export > service.yaml
Atualize o atributo
cpu
:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: name: REVISION spec: containers: - image: IMAGE resources: limits: cpu: CPU
Substitua:
- SERVICE pelo nome do serviço do Cloud Run;
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
us-docker.pkg.dev/cloudrun/container/hello:latest
. Ao usar o Artifact Registry, o URL tem o seguinte formato:REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
. - CPU pelo valor do limite de CPU desejado.
Especifique o valor de
1
,2
,4
,6
ou8
CPUs. Para menos de uma CPU, especifique um valor de 0,08 a menos de 1,00, em incrementos de 0,01. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias. - REVISION por um novo nome de revisão ou excluí-lo (se houver). Se você fornecer um novo nome de revisão, ele precisará atender aos seguintes critérios:
- Começa com
SERVICE-
- Contém apenas letras minúsculas, números e
-
- Não termina com um
-
- Não excede 63 caracteres
- Começa com
Substitua o serviço pela nova configuração usando o seguinte comando:
gcloud run services replace service.yaml
Terraform
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
Adicione o seguinte a um recurso google_cloud_run_service
em template.spec.containers
na
configuração do Terraform. Substitua 1000m
pela contagem de CPU que você quer.
Para jobs do Cloud Run
É preciso definir no mínimo 1 CPU para um job do Cloud Run.
Para especificar a CPU de um job do Cloud Run, faça o seguinte:
Console
Se você estiver configurando um novo job, clique na guia Jobs e preencha a página inicial de configurações do job conforme quiser. Se você estiver configurando um job, clique nele e em Editar.
Clique em Contêiner, variáveis e secrets, conexões e segurança para expandir a página de propriedades do job.
Clique na guia Geral.
- Selecione o limite de CPU que você quer na lista
suspensa. Selecione um valor de CPUs
1
,2
,4
,6
ou8
. Os jobs exigem no mínimo 1 CPU. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
- Selecione o limite de CPU que você quer na lista
suspensa. Selecione um valor de CPUs
Clique em Criar ou Atualizar.
Linha de comando
Atualize os limites de CPU de um determinado job usando o seguinte comando:
gcloud run jobs update JOB_NAME --cpu CPU
Substituir
- JOB_NAME pelo nome do job;
- CPU pelo limite de CPU desejado. Especifique o valor das CPUs
1
,2
,4
,6
ou8
. Os jobs exigem no mínimo 1 CPU. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
Também é possível definir a CPU ao criar um job usando o comando:
gcloud run jobs create JOB_NAME --image IMAGE_URL --cpu CPU
Substituir
- JOB_NAME pelo nome do job;
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
us-docker.pkg.dev/cloudrun/container/job:latest
; - CPU pelo limite de CPU desejado. Especifique o valor das CPUs
1
,2
,4
,6
ou8
. Os jobs exigem no mínimo 1 CPU. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.
YAML
Faça o download e veja a configuração do job que já existe usando o comando gcloud run jobs describe --format export
, que gera resultados limpos no formato YAML. Em seguida, modifique os campos descritos abaixo e faça upload do YAML modificado usando o comando gcloud run jobs replace
.
Modifique os campos somente conforme documentado.
Para visualizar e fazer o download da configuração:
gcloud run jobs describe JOB_NAME --format export > job.yaml
Atualize o atributo
cpu
:apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB spec: template: spec: template: spec: containers: - image: IMAGE resources: limits: cpu: CPU
Substitua CPU pelo limite de CPU desejado. Especifique o valor de
1
,2
,4
,6
ou8
CPUs. Os jobs exigem no mínimo 1 CPU. Consulte a tabela em Como configurar e atualizar limites de CPU para as configurações necessárias.Também é possível especificar mais configurações, como variáveis de ambiente ou limites de memória.
Atualize a configuração do job que já existe:
gcloud run jobs replace job.yaml
Definir a otimização da CPU de inicialização (serviços)
O recurso de otimização da CPU de inicialização para revisões fornece mais CPU durante o tempo de inicialização da instância e por 10 segundos após o início da instância.
O aumento real da CPU varia de acordo com as configurações de limite da CPU:
Limite de CPU | CPU otimizada |
---|---|
0-1 | 2 |
2 | 4 |
4 | 8 |
6 | 8 |
8 | 8 |
A CPU otimizada alocada é cobrada durante o tempo de inicialização do contêiner. Por exemplo, se o tempo de inicialização do contêiner for de 15 segundos e você alocar 2 CPUs com a otimização da CPU de inicialização, você será cobrado por 4 CPUs durante o tempo de inicialização da instância (possivelmente mais curto), incluindo os 10 segundos após o término da inicialização do contêiner e duas CPUs durante o restante do ciclo de vida.
É possível ativar ou desativar a otimização da CPU de inicialização usando o console do Google Cloud ou a Google Cloud CLI.
Console
Clique em Criar serviço se estiver configurando um novo serviço em que fará uma implantação. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar nova revisão.
Se você estiver configurando um novo serviço, preencha a página inicial de configurações de serviço conforme desejado e clique em Contêiner, redes, segurança para expandir a página de configuração do serviço.
Clique na guia Contêiner.
- Para ativar a otimização da CPU de inicialização, marque a caixa de seleção Otimização da CPU de inicialização. Para desativar esse atributo, desmarque a opção.
Clique em Criar ou Implantar.
Linha de comando
É possível ativar a otimização da CPU de inicialização para um determinado serviço usando o seguinte comando:
gcloud run services update SERVICE --cpu-boost
Substitua SERVICE pelo nome do serviço.
É possível ativar a otimização da CPU de inicialização durante a implantação usando o comando:
gcloud run deploy --image IMAGE_URL --cpu-boost
IMAGE_URL por uma referência à imagem de contêiner, por exemplo,
us-docker.pkg.dev/cloudrun/container/hello:latest
; Ao usar o Artifact Registry, o URL tem o seguinte formato:REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
. .É possível desativar a otimização da CPU de inicialização de um determinado serviço usando o seguinte comando:
gcloud run services update SERVICE --no-cpu-boost
Substitua SERVICE pelo nome do serviço.
É possível desativar a otimização da CPU de inicialização durante a implantação usando o comando:
gcloud run deploy --image IMAGE_URL --no-cpu-boost
YAML
É possível fazer o download e conferir as configurações de serviço usando o
comando gcloud run services describe --format export
, que produz
resultados limpos no formato YAML.
Em seguida, modifique os campos descritos abaixo e
faça upload do YAML modificado usando o comando gcloud run services replace
.
Modifique os campos somente conforme documentado.
Para ver e fazer o download da configuração:
gcloud run services describe SERVICE --format export > service.yaml
Atualize o atributo
run.googleapis.com/startup-cpu-boost
especificando'true'
para ativar a otimização da CPU de inicialização, ou'false'
para desativar:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: annotations: run.googleapis.com/startup-cpu-boost: 'true'
Substituir
- SERVICE pelo nome do serviço do Cloud Run;
Substitua o serviço pela nova configuração usando o seguinte comando:
gcloud run services replace service.yaml
Ver configurações da CPU
Para ver as configurações atuais da CPU do serviço do Cloud Run:
Console
Clique no serviço de seu interesse para abrir a página Detalhes do serviço.
Clique na guia Revisões.
No painel de detalhes à direita, a configuração da CPU está listada na guia Contêiner.
Linha de comando
Use o comando a seguir:
gcloud run services describe SERVICE
Localize a configuração de CPU na configuração retornada.
Para ver as configurações atuais da CPU do job do Cloud Run:
Console
Clique no job em que você tem interesse para abrir a página Detalhes do job.
Clique na guia Configuração.
Localize a definição da CPU nos detalhes da configuração.
Linha de comando
Use o comando a seguir:
gcloud run jobs describe JOB_NAME
Localize a configuração de CPU na configuração retornada.