Configura un servizio Cloud Run

In Application Design Center, puoi configurare un servizio Cloud Run per eseguire container stateless direttamente sull'infrastruttura scalabile e completamente gestita di Google. Puoi personalizzare il servizio per le connessioni dei componenti e i parametri di configurazione specifici. I parametri di configurazione sono elencati nel modulo Terraform terraform-google-cloud-run.

Connessioni dei componenti

La tabella seguente include i componenti che puoi connettere a un servizio Cloud Run e i relativi aggiornamenti alla tua applicazione e al codice Terraform generato.

Componente collegato

Aggiornamenti delle applicazioni

Informazioni introduttive

Secret Manager
  • Il servizio Cloud Run può fare riferimento ai dati del secret.
  • Il campo Dati secret di Secret Manager è referenziato dal campo env_secret_vars di Cloud Run.
  • Il ruolo roles/secretmanager.secretAccessor viene aggiunto al account di servizio Cloud Run.
Configura i secret per i servizi

Service account

  • Il servizio Cloud Run utilizza il account di servizio come identità di servizio.
  • Il ruolo roles/run.invoker viene aggiunto al account di servizio.
  • L'indirizzo email del account di servizio e le informazioni IAM vengono aggiunti alle variabili di ambiente di Cloud Run.
Autenticazione service-to-service
AlloyDB per PostgreSQL
  • Il servizio Cloud Run può connettersi all'istanza AlloyDB per PostgreSQL.
  • I metadati della risorsa AlloyDB per PostgreSQL vengono aggiunti alle variabili di ambiente di Cloud Run.
  • Il ruolo AlloyDB per PostgreSQL roles/alloydb.admin viene aggiunto al account di servizio Cloud Run.
Connettiti da Cloud Run
BigQuery
  • Il servizio Cloud Run può interagire con il set di dati BigQuery.
  • I metadati della risorsa BigQuery vengono aggiunti alle variabili di ambiente di Cloud Run.
  • Il ruolo BigQuery roles/bigquery.dataEditor viene aggiunto al account di servizio Cloud Run.
Panoramica di BigQuery

Bigtable

  • Il servizio Cloud Run può eseguire funzioni amministrative sull'istanza Bigtable.
  • Le informazioni sui metadati della risorsa Bigtable vengono aggiunte alle variabili di ambiente di Cloud Run.
  • Il ruolo roles/bigtable.admin viene aggiunto al account di servizio Cloud Run.
Panoramica di Bigtable

Un altro servizio Cloud Run

  • Il servizio Cloud Run di origine può inviare traffico al servizio Cloud Run di destinazione.
  • Il servizio Cloud Run di origine contiene l'URI del servizio Cloud Run di destinazione nelle sue variabili di ambiente.
Che cos'è Cloud Run

Cloud SQL (MySQL)

  • Il servizio Cloud Run può leggere e scrivere dati nell'istanza Cloud SQL (MySQL).
  • I metadati della connessione Cloud SQL vengono aggiunti al servizio Cloud Run.
  • I ruoli roles/cloudsql.instanceUser e roles/cloudsql.client vengono aggiunti al account di servizio Cloud Run.
  • Il account di servizio Cloud Run viene aggiunto come utente IAM all'istanza Cloud SQL.
Connettiti da Cloud Run

Cloud SQL (PostgreSQL)

  • Il servizio Cloud Run può leggere e scrivere dati nell'istanza Cloud SQL (PostgreSQL).
  • I metadati della connessione Cloud SQL vengono aggiunti al servizio Cloud Run.
  • I ruoli roles/cloudsql.instanceUser e roles/cloudsql.client vengono aggiunti al account di servizio Cloud Run.
  • Il account di servizio Cloud Run viene aggiunto come utente IAM all'istanza Cloud SQL.
Connettiti da Cloud Run

Cloud Storage

  • Il servizio Cloud Run può gestire gli oggetti nel bucket Cloud Storage.
  • Le informazioni IAM del account di servizio Cloud Run vengono aggiunte al bucket Cloud Storage.
  • Il ruolo roles/storage.objectAdmin è assegnato al account di servizio Cloud Run.
Connettiti ai servizi Google Cloud

Backend di Cloud Load Balancing globale

  • Il bilanciatore del carico può distribuire il traffico in entrata al servizio Cloud Run.
  • Il servizio Cloud Run viene aggiunto come endpoint di backend nella configurazione dei backend NEG serverless di Cloud Load Balancing.
Configura un bilanciatore del carico delle applicazioni esterno globale con Cloud Run

Memorystore for Redis

  • Il servizio Cloud Run può memorizzare i dati nella cache nell'istanza Memorystore for Redis.
  • Le informazioni di connessione di Memorystore for Redis vengono aggiunte alle variabili di ambiente di Cloud Run.
  • Il ruolo roles/redis.editor viene aggiunto al account di servizio Cloud Run.
Connessione a un'istanza Redis da un servizio Cloud Run

Memorystore for Redis Cluster

  • Il servizio Cloud Run può memorizzare i dati nella cache di Memorystore for Redis Cluster.
  • Le informazioni di connessione di Memorystore for Redis Cluster vengono aggiunte alle variabili di ambiente di Cloud Run.
  • App Design Center aggiunge il ruolo roles/redis.dbConnectionUser al account di servizio Cloud Run.
Connettiti a un'istanza Memorystore for Redis Cluster

Memorystore for Valkey

  • Il servizio Cloud Run può memorizzare nella cache i dati nell'istanza Memorystore for Valkey.
  • App Design Center aggiunge le informazioni di connessione di Memorystore for Valkey alle variabili di ambiente di Cloud Run.
  • App Design Center aggiunge il ruolo roles/memorystore.dbConnectionUser al account di servizio Cloud Run.
Connettiti a un'istanza Memorystore for Valkey

Pub/Sub

  • Il servizio Cloud Run può ricevere messaggi o pubblicare nell'argomento Pub/Sub.
  • L'ID argomento Pub/Sub viene aggiunto alle variabili di ambiente di Cloud Run.
  • I ruoli roles/pubsub.publisher e roles/pubsub.subscriber vengono aggiunti al account di servizio Cloud Run.
  • Il servizio Cloud Run viene aggiunto ai campi della sottoscrizione push e pull di Pub/Sub.
Tutorial sull'utilizzo di Pub/Sub con Cloud Run

Backend Cloud Load Balancing regionale

  • Il bilanciatore del carico può distribuire il traffico in entrata al servizio Cloud Run.
  • Il servizio Cloud Run viene aggiunto come endpoint di backend nella configurazione dei backend NEG serverless di Cloud Load Balancing.
Configura un bilanciatore del carico delle applicazioni esterno regionale con Cloud Run

Frontend Cloud Load Balancing regionale

  • Gli indirizzi IP HTTP e HTTPS del bilanciatore del carico sono disponibili per l'applicazione in esecuzione nel container Cloud Run.
  • I metadati dell'indirizzo di Cloud Load Balancing vengono aggiunti alle variabili di ambiente di Cloud Run.
Panoramica delle regole di forwarding

Spanner

  • Il servizio Cloud Run può gestire l'istanza Spanner.
  • I dettagli della connessione Spanner vengono aggiunti alle variabili di ambiente di Cloud Run.
  • Il ruolo roles/spanner.databaseAdmin viene aggiunto al account di servizio Cloud Run.
  • Le informazioni IAM del account di servizio Cloud Run vengono aggiunte all'istanza Spanner.
Connettiti ai servizi Google Cloud

Vertex AI

  • Il servizio Cloud Run può interagire con i servizi Vertex AI.
  • Il ruolo roles/aiplatform.user viene aggiunto al account di servizio Cloud Run.
Ospita app di AI e agenti su Cloud Run

Parametri di configurazione obbligatori

Se il modello include un componente Cloud Run, devi configurare i seguenti parametri prima di eseguire il deployment.

Nome parametro

Descrizione e vincoli

Informazioni introduttive

ID progetto

Il progetto in cui vuoi eseguire il deployment della risorsa Cloud Run.

Configura i componenti

Regione

La località di deployment del servizio Cloud Run.

Località di Cloud Run

Nome servizio

name Servizio Cloud Run

Parametri di configurazione facoltativi

I seguenti parametri sono facoltativi. Per visualizzare i parametri avanzati, nell'area Configurazione, seleziona Mostra campi avanzati.

Funzionalità

Sottofunzionalità

Nome parametro

Informazioni su descrizione e vincoli

Informazioni introduttive

Container

Nome contenitore

name Creazione di container

Immagine container

image Deployment di immagini container in Cloud Run

Working Dir

La directory di lavoro del container. Se non specificato, viene utilizzato il valore predefinito del runtime del container, che potrebbe essere configurato nell'immagine container.

workingDir

Dipende dal container

dependsOn[] Configura l'ordine di avvio dei container per i deployment sidecar

Argomenti container

args[] Configura i container per i servizi

Comando del container

command Configura i container per i servizi
Variabili di ambiente

Key (Chiave)

name Variabili di ambiente per i servizi

Valore

valore Variabili di ambiente per i servizi
Variabili di ambiente secret

Key (Chiave)

EnvVarSource Gestisci i secret

Secret

secret Gestisci i secret

Versione

version Gestisci i secret
Montaggi volumi

Nome

name Connettiti da Cloud Run

Percorso di montaggio

mountPath Connettiti da Cloud Run
Porte

Nome

name Utilizza HTTP/2 per i servizi

Porta container

containerPort Utilizza HTTP/2 per i servizi
Risorse

CPU

limits Configura i limiti di CPU per i servizi

Memoria

limits Configura i limiti di memoria per i servizi

CPU inattiva

Indica se la CPU viene allocata solo durante le richieste.

cpuIdle

Boost della CPU all'avvio

startupCPUBoost Imposta il boosting della CPU all'avvio
Probe di avvio

Soglia di errore

failureThreshold Configura i controlli di integrità dei container per i servizi

Initial Delay Seconds

initialDelaySeconds Configura i probe

Timeout (secondi)

timeoutSeconds Configura i probe

Period Seconds

periodSeconds Configura i probe

HTTP Get Path

path Configura i probe

Porta HTTP Get

port Configura i probe

Nome intestazioni HTTP

name Configura i probe

Valore delle intestazioni HTTP

valore Configura i probe

Porta socket TCP

port Probe di avvio TCP predefinito

Porta GRPC

port Configura i probe

Servizio gRPC

service Configura i probe

Probe di attività

livenessProbe Casi d'uso

Descrizione

description Imposta le descrizioni dei servizi

Crea service account

Crea un nuovo account di servizio per il servizio Cloud Run.

Configura l'identità di servizio per i job

Ruoli dei progetti dei service account

Ruoli da concedere al account di servizio appena creato. Attiva Crea service account e non fornire input per Service account.

Configura l'identità di servizio per i job

In entrata

IngressTraffic Limita il traffico di rete in entrata per Cloud Run

Membri

Utenti e service account che possono richiamare il servizio. Per l'accesso pubblico, inserisci allUsers. Per l'accesso da parte degli utenti Google che hanno eseguito l'accesso, inserisci allAuthenticatedUsers o un elenco di utenti e service account specifici. Per saperne di più, consulta Membri.

Configura l'identità di servizio per i job

Accesso VPC

Connettore

connector VPC con connettori

Egress egress Controlla il traffico dei servizi in uscita

Interfacce di rete

Rete network Esegui il deployment di un servizio
Subnet subnetwork Esegui il deployment di un servizio
Tag tags Esegui il deployment di un servizio

Protezione da eliminazione di Cloud Run

Impedisce a Terraform di eliminare o ricreare job e servizi Cloud Run.

deletion_protection

Abilita il sidecar Prometheus

Abilita il sidecar Prometheus nell'istanza Cloud Run.

Scrivi le metriche di Prometheus utilizzando il sidecar di Prometheus

Volumi

Nome

name Configura un volume in memoria
Secret Secret secret Rendi un secret accessibile a Cloud Run
Modalità predefinita defaultMode
Percorso path Rendi disponibile un secret per Cloud Run
Versione version Rendi disponibile un secret per Cloud Run
Modalità mode Rendi disponibile un secret per Cloud Run
Istanza Cloud SQL Istanze instances[] Connettiti da Cloud Run
emptyDir Medio medium Configura i mount dei volumi in memoria per i servizi
Limite di dimensioni sizeLimit Configura i montaggi dei volumi in memoria per i servizi
GCS Bucket bucket Configura i montaggi dei volumi Cloud Storage per i servizi
Sola lettura readOnly Configura i montaggi dei volumi Cloud Storage per i servizi
NFS Server server Configura i mount dei volumi NFS per i servizi
Percorso path Configura i mount dei volumi NFS per i servizi
Sola lettura readOnly Configura i mount dei volumi NFS per i servizi

Scalabilità del servizio

Numero minimo di istanze

minInstanceCount Imposta il numero minimo di istanze per i servizi

Revisione

revision Revisioni dei servizi Cloud Run

Scalabilità dei modelli

Numero minimo di istanze

minInstanceCount Imposta il numero minimo di istanze per i servizi
Numero massimo di istanze maxInstanceCount Informazioni sul numero massimo di istanze

Chiave di crittografia

encryptionKey Utilizzo delle chiavi di crittografia gestite dal cliente

Concorrenza massima delle richieste per istanza

maxInstanceRequestConcurrency Numero massimo di richieste in parallelo per i servizi

Affinità di sessione

sessionAffinity Imposta l'affinità sessione per i servizi

Ambiente di esecuzione

executionEnvironment Informazioni sugli ambienti di esecuzione dei servizi

Traffico

Tipo

type Rollback, implementazioni graduali e migrazione del traffico
Percent percent Rollback, implementazioni graduali e migrazione del traffico
Revisione revision Rollback, implementazioni graduali e migrazione del traffico
Tag tag Rollback, implementazioni graduali e migrazione del traffico

Etichette di servizio

Key (Chiave)

labels Configura le etichette per i servizi
Valore labels Configura le etichette per i servizi

Annotazioni di servizio

Key (Chiave)

annotations annotations
Valore annotations annotations

Client

Nome

Identificatore arbitrario per il client API.

client
Versione

Identificatore arbitrario per l'identificatore della versione.

clientVersion

Fase di lancio

LaunchStage Fasi di lancio dei prodotti

Segmenti di pubblico personalizzati

customAudience Imposta segmenti di pubblico personalizzati per i servizi

Autorizzazione binaria

Motivazione deployment di emergenza

breakglassJustification Utilizza il deployment di emergenza
Usa valore predefinito useDefault Utilizza Autorizzazione binaria

Etichette dei modelli

Key (Chiave)

labels Configurazione delle etichette per i servizi
Valore labels Configurazione delle etichette per i servizi

Annotazioni del modello

Key (Chiave)

annotations annotations
Valore annotations annotations

Timeout

timeout Imposta il timeout della richiesta per i servizi

Account di servizio

serviceAccount Configura l'identità di servizio per i servizi