Best practice per i servizi Cloud Run ottimizzati per i costi

L'ottimizzazione dei servizi Cloud Run riduce le spese allineando l'allocazione delle risorse alla domanda effettiva. L'implementazione di configurazioni economiche previene l'overprovisioning mantenendo l'affidabilità e le prestazioni del servizio. Non esiste una soluzione universale per l'ottimizzazione dei costi. È importante monitorare le esigenze, il budget e le risorse per determinare la soluzione più adatta alle tue esigenze.

Le best practice descritte in questo documento sono specifiche per Cloud Run. Non includono altri Google Cloud prodotti.

Configurazioni delle risorse

L'ottimizzazione dei servizi per i costi comporta la considerazione di molte configurazioni diverse. Personalizza queste configurazioni in base alle tue esigenze per creare servizi affidabili ed economici.

Seleziona la regione appropriata

La località di deployment del servizio influisce sul costo totale. Cloud Run utilizza un modello di prezzi regionali a due livelli. Le regioni di livello 1 offrono un costo inferiore per vCPU e memoria rispetto alle regioni di livello 2, quindi valuta la possibilità di eseguire il deployment in una regione di livello 1.

Richiedi autenticazione

Quando configuri un servizio Cloud Run, puoi scegliere una delle due opzioni di autenticazione:

  • Consenti accesso pubblico: non sono richiesti controlli di autenticazione.
  • Richiedi autenticazione: solo gli utenti autenticati possono accedere al tuo servizio Cloud Run.

Ti consigliamo di richiedere l'autenticazione, a meno che tu non abbia una necessità specifica di consentire l'accesso pubblico. In questo modo, si evitano richieste indesiderate che potrebbero comportare costi.

Se gestisci gli utenti con Identity-Aware Proxy (IAP), IAP potrebbe avere costi associati.

Confronta la fatturazione basata sulle istanze e quella basata sulle richieste

I servizi Cloud Run hanno due impostazioni di fatturazione:

  • Fatturazione basata sulle richieste (impostazione predefinita): ti vengono addebitati i costi per richiesta, oltre a una tariffa al secondo più elevata per vCPU e memoria consumate durante l'elaborazione delle richieste.
  • Fatturazione basata sulle istanze: ti vengono addebitati i costi per l'intero ciclo di vita di un' istanza. Non è prevista una tariffa per richiesta e le tariffe al secondo per vCPU e memoria sono inferiori.

Per i servizi con traffico costante e a variazione lenta, valuta la possibilità di utilizzare la fatturazione basata sulle istanze. I risparmi derivanti da tariffe di computing inferiori e dall'assenza di una tariffa per richiesta superano il costo del pagamento del tempo di inattività tra le richieste. Per i servizi con traffico sporadico, a raffica o con picchi, valuta la possibilità di utilizzare la fatturazione basata sulle richieste. Se non sai ancora quale impostazione di fatturazione utilizzare, consulta Motore per suggerimenti. Il motore per suggerimenti esamina il traffico ricevuto dal tuo servizio Cloud Run nell'ultimo mese e fornisce suggerimenti per passare dalla fatturazione basata sulle richieste a quella basata sulle istanze, se è più conveniente.

Configura la scalabilità del servizio a livello di servizio

Per stabilire una base di riferimento per la sicurezza dei costi, configura il numero massimo di istanze per il tuo servizio. L'impostazione di un numero massimo più elevato dà la priorità alla disponibilità, ma introduce potenziali rischi di fatturazione dovuti a picchi di traffico imprevisti o configurazioni errate. Devi configurare questa impostazione a livello di servizio quando esegui il deployment iniziale del servizio per stabilire una base di riferimento per i costi. Per ulteriori strumenti di controllo dei costi, consulta le quote di allocazione delle risorse o i budget e gli avvisi di fatturazione.

Ottimizza l'utilizzo di CPU e memoria

Il costo del tuo servizio Cloud Run è influenzato, tra gli altri fattori, dalla configurazione di CPU/memoria e dalla durata di attività del servizio. L'overprovisioning delle risorse può aumentare i costi. Per determinare la configurazione più adatta al tuo servizio:

  1. Stabilisci una configurazione di base.
  2. Monitora le metriche durante il test delle metriche di utilizzo di CPU e memoria in Cloud Monitoring.
  3. Modifica la configurazione 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.

Se l'utilizzo della memoria è costantemente basso, valuta la possibilità di ridurre la memoria allocata. Se la latenza è elevata e l'utilizzo della memoria è vicino al 100%, valuta la possibilità di aumentare la memoria allocata. Se riscontri errori di out of memory (OOM), devi aumentare la memoria allocata o modificare l'applicazione per evitare perdite di memoria o utilizzare meno memoria. Consulta la dashboard di Cloud Monitoring per comprendere meglio l'utilizzo della memoria.

Configura la GPU

Tutti i servizi Cloud Run che utilizzano le GPU devono avere la fatturazione basata sulle istanze configurata. Ciò significa che le istanze Cloud Run vengono addebitate per l'intero ciclo di vita delle istanze, anche quando non ci sono richieste in entrata. Anche le configurazioni minime di CPU e memoria richieste per le GPU influiscono sul costo del tuo servizio Cloud Run. Per impostazione predefinita, la ridondanza zonale della GPU è attivata. La disattivazione della ridondanza zonale della GPU comporta un costo inferiore per secondo-GPU, ma non garantisce la capacità riservata per gli scenari di failover.

Ottimizza i costi di networking

Quando configuri le opzioni di networking per il tuo servizio, tieni presente quanto segue:

  • Colloca le risorse: prova a eseguire il deployment dei servizi Cloud Run nella stessa regione dei database di backend (come Cloud SQL o Firestore) e dei bucket Cloud Storage. Il trasferimento di dati tra Google Cloud risorse all'interno della stessa regione è senza costi.
  • Passa al VPC diretto in uscita: se stai instradando in modo sicuro il traffico alle risorse di rete VPC interne, valuta la possibilità di passare dal VPC diretto in uscita dai connettori di accesso VPC serverless. Il VPC diretto in uscita esegue lo scale-to-zero, eliminando il sovraccarico di computing di base e i costi di inattività associati alle istanze del connettore.
  • Utilizza Cloud CDN: scarica gli asset statici e i contenuti altamente memorizzabili nella cache inserendo Cloud CDN davanti ai tuoi servizi Cloud Run. La pubblicazione dei dati dall'edge è notevolmente più economica rispetto al pagamento del traffico in uscita da internet standard direttamente da Cloud Run.
  • Monitora il traffico in uscita da internet: il traffico in entrata (in ingresso) è sempre senza costi e ricevi 1 GiB di trasferimento di dati in uscita da internet gratuito al mese in Nord America. Concentra i tuoi sforzi di monitoraggio sul traffico in uscita che supera i limiti delle regioni o supera il livello senza costi.

Configura le impostazioni di contemporaneità

Quando più istanze elaborano le richieste, Cloud Run alloca più CPU e memoria a costi più elevati. Un'impostazione di contemporaneità più elevata consente a un numero inferiore di istanze di gestire lo stesso volume di richieste, il che può ridurre i costi. Tuttavia, il codice dell'applicazione deve essere in grado di gestire in modo efficiente le richieste parallele. Per saperne di più, consulta Ottimizzare la contemporaneità per la scalabilità automatica e l'utilizzo delle risorse.

Sconti per impegno di utilizzo

Gli sconti per impegno di utilizzo (CUD) offrono prezzi scontati in cambio dell'impegno a utilizzare continuamente Cloud Run per un periodo di tempo specificato. I CUD si applicano a livello di account di fatturazione Cloud. Puoi acquistare CUD flessibili di Compute per le risorse Cloud Run. I CUD flessibili di Compute non si applicano a GPU o networking. Per maggiori dettagli, consulta Sconto per impegno di utilizzo flessibile di Compute.

Strumenti utili

Puoi utilizzare i seguenti strumenti per comprendere meglio i costi e contribuire a evitare sforamenti di budget.

Panoramica di Cloud Run: riquadro Fatturazione

La pagina di panoramica di Cloud Run mostra i costi per nome risorsa nel riquadro Fatturazione. I numeri riflettono i costi lordi per gli intervalli di tempo selezionati per risorsa. Questo strumento ti aiuta a comprendere meglio il costo delle tue risorse.

Avvisi relativi al budget

Crea avvisi relativi al budget in Fatturazione Cloud per monitorare i costi effettivi rispetto ai costi pianificati. Un avviso relativo al budget è un meccanismo di avviso che attiva le notifiche quando vengono superate le soglie di spesa, non un limite di spesa rigido. Si verifica un ritardo nei dati di fatturazione che potrebbe influire sul momento in cui ricevi gli avvisi.

Limiti di spesa del budget

Se configuri i limiti di spesa del budget di fatturazione Cloud spend caps nella console di fatturazione Cloud, questi limiti vengono applicati automaticamente a tutti i tipi di risorse Cloud Run nel tuo progetto.

Puoi monitorare l'avanzamento del limite di spesa direttamente dalla pagina di panoramica della console Cloud Run. Quando raggiungi un limite di spesa, Google Cloud tutti i carichi di lavoro Cloud Run vengono messi in pausa per evitare ulteriori costi per le seguenti risorse Cloud Run:

  • Servizi: qualsiasi servizio esistente non sarà in grado di gestire il traffico e restituirà errori 5xx.
  • Job: le nuove esecuzioni delle attività non vengono avviate e le attività in corso non vengono completate.
  • Pool di worker: tutte le istanze esistenti interrompono l'elaborazione delle attività.

Se superi il limite di spesa, riceverai una notifica di avviso e vedrai un banner di applicazione nella console Cloud Run. Per riprendere le operazioni, devi aumentare o modificare il limite nella pagina di panoramica della console Cloud Run.

Fatturazione Cloud

La fatturazione Cloud è una raccolta di strumenti che ti aiutano a monitorare e comprendere la tua Google Cloud spesa. Questi strumenti ti aiutano a monitorare i costi di utilizzo, prevedere la spesa e identificare le opportunità di risparmio sui costi.

Esplora costi

Esplora costi ti consente di comprendere il costo e l'utilizzo delle tue risorse. Utilizza Esplora costi per:

  • Filtrare le risorse in base al costo per vedere quali sono le più costose.
  • Comprendere la proporzione dei costi determinati da configurazioni come vCPU, GPU, networking e altro ancora.
  • Monitorare l'impatto delle modifiche alla configurazione delle risorse sulla fattura mensile.

Google Cloud calcolatore prezzi

La Google Cloud panoramica dei prezzi contiene informazioni per comprendere meglio il Google Cloud modello di prezzi. Qui puoi trovare anche l' elenco prezzi dettagliato. Puoi stimare i costi aggiungendo e configurando i prodotti utilizzando il calcolatore prezzi.

Motore per suggerimenti

Il motore per suggerimenti è uno strumento che fornisce suggerimenti e informazioni sull'utilizzo dei prodotti Cloud.

Il motore per suggerimenti esamina automaticamente il traffico ricevuto dal tuo servizio Cloud Run nell'ultimo mese e consiglia di passare dalla fatturazione basata sulle richieste a quella basata sulle istanze, se è più conveniente.

Ottimizzazione di Cloud Hub

Puoi visualizzare i dati di riepilogo dei costi, i dati di utilizzo e i suggerimenti per l'ottimizzazione dei costi per i Google Cloud servizi nella pagina Ottimizzazione di Cloud Hub.