Questa pagina descrive come specificare il numero di vCPU da utilizzare per ogni istanza Cloud Run. Per impostazione predefinita, le istanze container Cloud Run sono limitate a 2 vCPU. Puoi aumentare o diminuire questo valore come descritto in questa pagina.
Impostare e aggiornare i limiti di vCPU
Per impostazione predefinita, ogni istanza è impostata su 2 vCPU e 2 GiB per la memoria. Puoi modificare questo valore in uno qualsiasi dei valori mostrati nella tabella seguente.
La concorrenza non è configurabile, è impostata su 80.
Tabella vCPU e memoria
Di seguito sono riportati i requisiti di memoria per le vCPU:
| CPU | Memoria richiesta |
|---|---|
| 1 vCPU | Da 512 MiB a 4 GiB |
| 2 vCPU | Da 512 MiB a 8 GiB |
| 4 vCPU | Da 2 a 16 GiB |
| 6 vCPU | Da 4 a 24 GiB |
| 8 vCPU | Da 4 a 32 GiB |
I valori maggiori di 1 devono essere valori interi.
Quantità massima di vCPU
La quantità massima di vCPU che puoi configurare è 8 vCPU.
Quantità minima di vCPU
La vCPU minima per l'istanza è 1 vCPU. Sebbene ogni container possa essere configurato con CPU frazionarie, la somma di tutti i container nell'istanza deve essere maggiore o uguale a 1 vCPU.
Considerazioni sui costi
Il costo della risorsa Cloud Run è influenzato, tra gli altri fattori, dalla configurazione della CPU e dalla durata di attività della risorsa. Il provisioning eccessivo delle risorse può aumentare i costi. Per determinare la configurazione della CPU più adatta alla tua risorsa:
- Stabilisci una configurazione di base iniziale per un limite di CPU che bilanci l'utilizzo della CPU e i costi.
- Monitora le metriche di utilizzo della CPU in Cloud Monitoring durante il test del sistema sotto carico.
- Modifica la configurazione della CPU in base alle esigenze.
Se l'utilizzo della CPU è costantemente basso con un carico di picco, valuta la possibilità di ridurre l'allocazione della vCPU. Se la latenza è elevata, valuta la possibilità di aumentare l'allocazione della vCPU.
Puoi visualizzare i dati di riepilogo dei costi, i dati di utilizzo e i consigli per l'ottimizzazione dei costi per le risorse nella pagina Ottimizzazione di Cloud Hub. Per ulteriori informazioni, consulta i prezzi di Cloud Run o stima i costi con il calcolatore prezzi.
Burst e limitazione della CPU
Le istanze Cloud Run utilizzano un modello di allocazione della CPU condiviso con quote di base e funzionalità di burst, gestito in modo simile all'allocazione cgroup dello scheduler Linux.
Quando configuri i limiti di vCPU per un'istanza Cloud Run, il comportamento della CPU è costituito dai seguenti meccanismi:
- Quota di base: a ogni istanza viene allocata una base continua del 6,25% (1/16) per ogni vCPU configurata. Puoi eseguire l'istanza all'interno di questa base a tempo indeterminato.
- Capacità di burst: quando l'istanza viene eseguita al di sotto della capacità di base, accumula continuamente il tempo della CPU inutilizzato in un budget di bilanciamento del burst (fino a 500 secondi). Quando il workload attiva attività a elevato utilizzo di calcolo, l'istanza esegue automaticamente il burst fino al 100% dell'allocazione della vCPU configurata finché il saldo del burst accumulato non viene esaurito.
- Limitazione: una volta esaurito il saldo del burst durante un utilizzo elevato della CPU, l'istanza viene limitata alla quota di base (6,25% per vCPU configurata) finché non viene accumulato un saldo del burst aggiuntivo.
- Riempimento: il budget del burst viene riempito ogni volta che l'utilizzo della CPU scende al di sotto della base del 6,25%.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare ed eseguire il deployment di istanze Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:
- Sviluppatore Cloud Run (
roles/run.developer) sull'istanza Cloud Run - Utente account di servizio (
roles/iam.serviceAccountUser) sull'identità di servizio
Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se l'istanza Cloud Run interagisce con Google Cloud API, come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per saperne di più sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestisci l'accesso.
Configurare i limiti della CPU
Puoi impostare i limiti della CPU per un'istanza Cloud Run utilizzando Google Cloud CLI o YAML:
gcloud
Puoi aggiornare i limiti della CPU per una determinata istanza utilizzando il seguente comando:
gcloud beta run instances update INSTANCE --cpu CPU
Sostituisci quanto segue:
- INSTANCE: il nome dell'istanza.
- CPU: il limite della CPU. Specifica il valore
1,2,4,6, o8CPU, seguendo i requisiti mostrati nella tabella CPU e memoria.
Puoi anche impostare la CPU durante il deployment utilizzando il comando:
gcloud beta run instances deploy --image IMAGE_URL --cpu CPU
Sostituisci quanto segue:
IMAGE_URL: un riferimento all'immagine container, ad esempious-docker.pkg.dev/cloudrun/container/hello:latest..- CPU: il valore
1,2,4,6, o8CPU, seguendo i requisiti mostrati nella tabella CPU e memoria.
YAML
Se stai creando una nuova istanza, salta questo passaggio. Se stai aggiornando un'istanza esistente, scarica la sua configurazione YAML:
gcloud beta run instances describe INSTANCE --format export > instance.yaml
L'esempio seguente contiene la configurazione YAML:
apiVersion: run.googleapis.com/v1 kind: Instance metadata: name: INSTANCE annotations: run.googleapis.com/launch-stage: BETA spec: containers: — image: IMAGE_URL resources: limits: cpu: `CPU`
Sostituisci quanto segue:
- INSTANCE: il nome dell'istanza Cloud Run.
IMAGE_URL: un riferimento all'immagine container, ad esempious-docker.pkg.dev/cloudrun/container/hello:latest..- CPU: il valore del limite della CPU.
Specifica il valore
1,2,4,6o8CPU oppure, per meno di 1 CPU, specifica un valore compreso tra 0,08 e meno di 1,00, con incrementi di 0,01. (Consulta la tabella in Impostare e aggiornare i limiti della CPU per le impostazioni obbligatorie.)
Crea o aggiorna l'istanza utilizzando il seguente comando:
gcloud beta run instances replace instance.yaml
Scenario di esempio: istanza con 2 vCPU
Se un'istanza è configurata con un limite di 2 vCPU:
- Operazione di base: l'istanza può essere eseguita in modo coerente consumando fino a 0,125 vCPU (6,25% di 2 vCPU). Durante l'esecuzione in base a questa base, accumula il saldo del burst.
- Burst completo: quando il workload richiede ulteriore potenza di elaborazione, l'istanza esegue il burst fino a 2 vCPU complete (utilizzo del 100%), consumando il budget del burst accumulato.
- Limitazione: quando il budget del saldo del burst viene esaurito, l'istanza viene limitata alla base di 0,125 vCPU finché non accumula un nuovo saldo del burst.
Visualizzare la configurazione della CPU per l'istanza
Puoi utilizzare il comando gcloud beta run instances describe di Google Cloud CLI per visualizzare i dettagli della configurazione.