Selecionar um ambiente de execução para serviços

Nesta página, descrevemos como especificar o ambiente de execução das instâncias do Cloud Run. Por padrão, os serviços do Cloud Run não têm um ambiente de execução especificado. Isso significa que o Cloud Run seleciona o ambiente de execução com base nos recursos usados. Se você não especificar um ambiente de execução para o serviço, o Cloud Run poderá selecionar o ambiente de primeira ou segunda geração.

Os jobs do Cloud Run usam apenas o ambiente de execução de segunda geração, e isso não pode ser alterado em jobs.

Consulte a documentação do conceito de ambientes de execução para receber assistência na escolha do ambiente que é melhor para seu serviço.

Funções exigidas

Para receber as permissões necessárias para configurar e implantar os serviços do Cloud Run, peça ao administrador para conceder a você os seguintes papéis do IAM:

Se você estiver implantando um serviço ou uma função do código-fonte, também precisará ter outros papéis concedidos a você no projeto e na conta de serviço do Cloud Build.

Para uma lista de papéis e permissões do IAM associados ao Cloud Run, consulte Papéis do IAM do Cloud Run e Permissões do IAM do Cloud Run. Se o serviço do Cloud Run interage com APIs doGoogle Cloud , como as bibliotecas de cliente do Cloud, consulte o guia de configuração de identidade de serviço. Para mais informações sobre como conceder papéis, consulte permissões de implantação e gerenciar acesso.

Definir e atualizar o ambiente de execução

Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem essa configuração de modo automático, a menos que você faça atualizações explícitas para alterar esse comportamento.

O padrão para serviços do Cloud Run é não especificado, o que significa que o Cloud Run seleciona um ambiente de execução adequado. Outra opção é especificar um ambiente de execução. Para usar a segunda geração, especifique pelo menos 512 MiB de memória.

É possível definir o ambiente de execução usando o console Google Cloud , a linha de comando gcloud ou um arquivo YAML ao criar um novo serviço ou implantar uma nova revisão:

Console

  1. No Google Cloud console, acesse o Cloud Run:

    Acessar o Cloud Run

  2. Selecione Serviços no menu e clique em Implantar contêiner para configurar um novo serviço. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar nova revisão.

  3. Ao configurar um novo serviço, preencha a página inicial de configurações de serviço e clique em Contêineres, volumes, Rede e segurança para expandir essa página.

  4. Clique na guia Contêiner.

    imagem

    • Selecione o ambiente de execução desejado usando os botões de opção. Mantenha "Padrão" para permitir que o Cloud Run selecione um ambiente de execução adequado.
  5. Clique em Criar ou Implantar.

gcloud

É possível atualizar o ambiente de execução de um determinado serviço usando o seguinte comando:

gcloud run services update SERVICE --execution-environment ENVIRONMENT

Substitua SERVICE pelo nome do serviço e ENVIRONMENT pelo ambiente de execução desejado. Especifique o valor gen1 para a primeira geração ou gen2 para a segunda geração.

Também é possível definir o ambiente de execução durante a implantação usando o comando:

gcloud run deploy --image IMAGE_URL --execution-environment ENVIRONMENT

Substitua:

  • IMAGE_URL: uma referência à imagem de contêiner, por exemplo, us-docker.pkg.dev/cloudrun/container/hello:latest. Se você usa o Artifact Registry, o repositório REPO_NAME já precisará ter sido criado. O URL segue o formato LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG .
  • ENVIRONMENT: o ambiente de execução desejado. Especifique o valor gen1 para a primeira geração ou gen2 para a segunda geração.

YAML

  1. Se você estiver criando um novo serviço, pule esta etapa. Se você estiver atualizando um serviço existente, faça o download da configuração YAML correspondente:

    gcloud run services describe SERVICE --format export > service.yaml
  2. defina a anotação run.googleapis.com/execution-environment:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          annotations:
            run.googleapis.com/execution-environment: ENVIRONMENT

    Substitua:

    • SERVICE: o nome do seu serviço do Cloud Run.
    • ENVIRONMENT: o ambiente de execução selecionado. Especifique o valor gen1 para a primeira geração ou gen2 para a segunda geração.

    Remova a anotação run.googleapis.com/execution-environment do comportamento padrão.

  3. Crie ou atualize o serviç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_v2_service na configuração do Terraform:

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-execution-environment"
  location = "REGION"

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    execution_environment = "ENVIRONMENT"
  }
}

Substitua:

  • REGION: a Google Cloud região. Por exemplo, europe-west1.
  • ENVIRONMENT: EXECUTION_ENVIRONMENT_GEN1 para a primeira geração ou EXECUTION_ENVIRONMENT_GEN2 para a segunda geração.

Ver configurações do ambiente de execução

Para ver as configurações atuais do ambiente de execução do serviço do Cloud Run:

Console

  1. No Google Cloud console, acesse o Cloud Run:

    Acessar o Cloud Run

  2. Clique no serviço de seu interesse para abrir a página Detalhes do serviço.

  3. Clique na guia Revisões.

  4. No painel de detalhes à direita, a configuração "Ambiente de execução" é listada na guia Contêiner.

gcloud

  1. Use o comando a seguir:

    gcloud run services describe SERVICE
  2. Localize a configuração do ambiente de execução na configuração retornada.