Seleziona un ambiente di esecuzione per i servizi

Questa pagina descrive come specificare l'ambiente di esecuzione delle istanze Cloud Run. Per impostazione predefinita, i servizi Cloud Run non hanno un ambiente di esecuzione specificato, il che significa che Cloud Run seleziona l'ambiente di esecuzione in base alle funzionalità utilizzate. Se non specifichi un ambiente di esecuzione per il tuo servizio, Cloud Run può selezionare l'ambiente di prima o seconda generazione.

Tieni presente che i job Cloud Run utilizzano solo l'ambiente di esecuzione di seconda generazione e questo non può essere modificato per i job.

Consulta la documentazione sul concetto di ambienti di esecuzione per ricevere assistenza nella scelta dell'ambiente più adatto al tuo servizio.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare ed eseguire il deployment dei servizi Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM Cloud Run e Autorizzazioni IAM Cloud Run. Se il tuo servizio Cloud Run interagisce con le APIGoogle Cloud , come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per ulteriori informazioni sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestire l'accesso.

Impostare e aggiornare l'ambiente di esecuzione

Qualsiasi modifica alla configurazione comporta la creazione di una nuova revisione. Anche le revisioni successive riceveranno automaticamente questa impostazione di configurazione, a meno che tu non apporti aggiornamenti espliciti per modificarla.

Il valore predefinito per i servizi Cloud Run è unspecified, il che significa che Cloud Run seleziona un ambiente di esecuzione adatto. In alternativa, puoi specificare un ambiente di esecuzione. Per utilizzare la seconda generazione, devi specificare almeno 512 MiB di memoria.

Puoi impostare l'ambiente di esecuzione utilizzando la console Google Cloud , la riga di comando gcloud o un file YAML quando crei un nuovo servizio o esegui il deployment di una nuova revisione:

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Seleziona Servizi dal menu e fai clic su Esegui il deployment del contenitore per configurare un nuovo servizio. Se stai configurando un servizio esistente, fai clic sul servizio, quindi su Modifica ed esegui il deployment della nuova revisione.

  3. Se stai configurando un nuovo servizio, compila la pagina delle impostazioni iniziali del servizio, quindi fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione del servizio.

  4. Fai clic sulla scheda Contenitore.

    immagine

    • Seleziona l'ambiente di esecuzione che preferisci utilizzando i pulsanti di opzione. Mantieni l'opzione "Predefinito" per consentire a Cloud Run di selezionare un ambiente di esecuzione adatto.
  5. Fai clic su Crea o Esegui il deployment.

gcloud

Puoi aggiornare l'ambiente di esecuzione per un determinato servizio utilizzando il seguente comando:

gcloud run services update SERVICE --execution-environment ENVIRONMENT

Sostituisci SERVICE con il nome del servizio e ENVIRONMENT con l'ambiente di esecuzione desiderato. Specifica il valore gen1 per la prima generazione o gen2 per la seconda generazione.

Puoi anche impostare l'ambiente di esecuzione durante l'deployment utilizzando il comando:

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

Sostituisci quanto segue:

  • IMAGE_URL: un riferimento all'immagine container, ad esempio us-docker.pkg.dev/cloudrun/container/hello:latest. Se utilizzi Artifact Registry, il repository REPO_NAME deve essere già stato creato. L'URL segue il formato LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG .
  • ENVIRONMENT: l'ambiente di esecuzione desiderato. Specifica il valore gen1 per la prima generazione o gen2 per la seconda generazione.

YAML

  1. Se stai creando un nuovo servizio, salta questo passaggio. Se stai aggiornando un servizio esistente, scarica la relativa configurazione YAML:

    gcloud run services describe SERVICE --format export > service.yaml
  2. imposta l'annotazione 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

    Sostituisci quanto segue:

    • SERVICE: il nome del servizio Cloud Run.
    • ENVIRONMENT: l'ambiente di esecuzione selezionato. Specifica il valore gen1 per la prima generazione o gen2 per la seconda generazione.

    Rimuovi l'annotazione run.googleapis.com/execution-environment per il comportamento predefinito.

  3. Crea o aggiorna il servizio utilizzando il seguente comando:

    gcloud run services replace service.yaml

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

Aggiungi quanto segue a una risorsa google_cloud_run_v2_service nella configurazione 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"
  }
}

Sostituisci quanto segue:

  • REGION: la Google Cloud regione. Ad esempio europe-west1.
  • ENVIRONMENT: EXECUTION_ENVIRONMENT_GEN1 per la prima generazione o EXECUTION_ENVIRONMENT_GEN2 per la seconda generazione.

Visualizza le impostazioni dell'ambiente di esecuzione

Per visualizzare le impostazioni dell'ambiente di esecuzione corrente per il tuo servizio Cloud Run:

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Fai clic sul servizio che ti interessa per aprire la pagina Dettagli servizio.

  3. Fai clic sulla scheda Revisioni.

  4. Nel riquadro dei dettagli a destra, l'impostazione Ambiente di esecuzione è elencata nella scheda Container.

gcloud

  1. Utilizza questo comando:

    gcloud run services describe SERVICE
  2. Individua l'impostazione Ambiente di esecuzione nella configurazione restituita.