Pode escolher a quantidade de memória a disponibilizar para o conjunto de trabalhadores do Cloud Run. Esta página descreve como especificar a quantidade de memória disponível para o seu worker pool.
Compreenda a utilização de memória
As instâncias do Cloud Run que excedem o respetivo limite de memória permitido são terminadas.
A memória disponível para a sua instância tem de ser suficiente para:
- Executar o ficheiro executável do grupo de trabalhadores, porque o ficheiro executável tem de ser carregado na memória
- Alocar memória no processo do grupo de trabalhadores
- Escrever ficheiros no sistema de ficheiros
O tamanho da imagem do contentor implementado não afeta a memória disponível para a instância.
Defina e atualize os limites de memória
Pode definir limites de memória em pools de trabalhadores do Cloud Run. Por predefinição, a memória alocada a cada conjunto de trabalhadores é de 512 MiB.
CPUs mínimas necessárias
A quantidade de memória alocada que escolher corresponde a uma quantidade mínima de CPU para o seu conjunto de trabalhadores. Quando definir um limite de memória, são necessários os seguintes limites mínimos de CPU:
Memória | CPUs mínimas necessárias |
---|---|
2 GiB | 1 vCPU |
Mais de 4 GiB | 2 vCPU |
Mais de 8 GiB | 4 vCPU |
Mais de 16 GiB | 6 vCPU |
Mais de 24 GiB | 8 vCPU |
Quantidade máxima de memória
A quantidade máxima de memória que pode configurar é de 32 gibibytes (32 Gi
).
Memória mínima
A definição de memória mínima é de 512 MiB.
Funções necessárias
Para receber as autorizações de que precisa para configurar e implementar pools de trabalhadores do Cloud Run, peça ao seu administrador que lhe conceda as seguintes funções da IAM:
-
Programador do Cloud Run (
roles/run.developer
) no conjunto de trabalhadores do Cloud Run -
Utilizador da conta de serviço (
roles/iam.serviceAccountUser
) na identidade do serviço
Para ver uma lista de funções e autorizações de IAM associadas ao Cloud Run, consulte os artigos Funções de IAM do Cloud Run e Autorizações de IAM do Cloud Run. Se o seu conjunto de trabalhadores do Cloud Run interage com Google Cloud APIs, como as bibliotecas de clientes da nuvem, consulte o guia de configuração da identidade do serviço. Para mais informações sobre a atribuição de funções, consulte as autorizações de implementação e faça a gestão do acesso.
Configure os limites de memória
Qualquer alteração de configuração leva à criação de uma nova revisão. As revisões subsequentes também vão receber automaticamente esta definição de configuração, a menos que faça atualizações explícitas para a alterar.
Pode definir limites de memória para um conjunto de trabalhadores do Cloud Run através da Google Cloud consola, da CLI Google Cloud ou do Terraform:
Consola
Na Google Cloud consola, aceda ao Cloud Run:
Selecione Grupos de trabalhadores no menu e clique em Implementar contentor para configurar um novo grupo de trabalhadores. Se estiver a configurar um conjunto de trabalhadores existente, clique no conjunto de trabalhadores e, de seguida, em Editar e implementar nova revisão.
Se estiver a configurar um novo conjunto de trabalhadores, preencha a página inicial do conjunto de trabalhadores e, em seguida, clique em Recipientes, volumes, rede, segurança para expandir a página de configuração dos conjuntos de trabalhadores.
Clique no separador Contentor.
- Selecione o tamanho de memória pretendido na lista pendente Memória.
Clique em Criar ou Implementar.
gcloud
Pode atualizar a atribuição de memória de um determinado conjunto de trabalhadores através do seguinte comando:
gcloud beta run worker-pools update WORKER_POOL --memory SIZE
Substituir:
- WORKER_POOL com o nome do seu conjunto de trabalhadores
- SIZE com um tamanho de memória da tabela de CPU e memória.
O formato do tamanho é um número de vírgula flutuante ou fixo seguido
de uma unidade:
G
ouM
, que correspondem, respetivamente, a gigabyte ou megabyte, ou use os equivalentes de potência de dois:Gi
ouMi
que correspondem, respetivamente, a gibibyte ou mebibyte.
Também pode definir limites de memória durante a implementação através do comando:
gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE
Substituir:
- IMAGE_URL: uma referência à imagem do contentor que contém o conjunto de trabalhadores, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
. - SIZE com um tamanho de memória da tabela de CPU e memória. O formato do tamanho é um número de ponto fixo ou flutuante seguido de uma unidade: G ou M correspondente a gigabyte ou megabyte, respetivamente, ou use os equivalentes de potência de dois: Gi ou Mi correspondente a gibibyte ou mebibyte, respetivamente.
Terraform
Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.
resource "google_cloud_run_v2_worker_pool" "default" {
name = "WORKER_POOL"
location = "REGION"
launch_stage = "BETA"
template {
containers {
image = "IMAGE_URL"
resources {
limits = {
memory = "SIZE"
}
}
}
}
}
Substituir:
- WORKER_POOL com o nome do grupo de trabalhadores.
- REGION com a região Google Cloud . Por exemplo, europe-west1.
- IMAGE_URL: uma referência à imagem do contentor que contém o conjunto de trabalhadores, como
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
- SIZE com um tamanho de memória da tabela de CPU e memória.
O formato do tamanho é um número de vírgula flutuante ou fixo seguido
de uma unidade:
G
ouM
, que correspondem, respetivamente, a gigabyte ou megabyte, ou use os equivalentes de potência de dois:Gi
ouMi
que correspondem, respetivamente, a gibibyte ou mebibyte.
Veja a configuração de memória do conjunto de trabalhadores
Na Google Cloud consola, aceda ao Cloud Run:
Clique em Grupos de trabalhadores para apresentar a lista de grupos de trabalhadores implementados.
Clique no conjunto de trabalhadores que quer examinar para apresentar o respetivo painel de detalhes.
Clique no separador Contentores para apresentar a configuração de memória do conjunto de trabalhadores para cada contentor.