Puoi combinare l'esportazione dei dati di fatturazione Cloud in BigQuery con Looker Studio per rimanere al corrente dei costi di Google Cloud.
Questa pagina mostra come configurare la dashboard Approfondimenti sull'utilizzo e sui costi della fatturazione con i dati di Fatturazione Cloud. Puoi utilizzare la dashboard per rispondere a domande sulla tua spesa per Google Cloud, ad esempio Quanto spendo per le risorse Compute Engine? e Quali ambienti mi costano di più?.
Per configurare la dashboard, segui questo tutorial o guarda il seguente video:
Obiettivi
Questo tutorial mostra come completare queste attività:
Configura una tua copia della dashboard Approfondimenti su utilizzo e costi della fatturazione utilizzando Cloud Shell.
Puoi utilizzare Terraform o Python per seguire i passaggi di questo tutorial.
Configura i filtri della dashboard per utilizzare le etichette che utilizzi nelle nell'ambiente Google Cloud.
Scopri di più su come modificare l'origine dati della dashboard per casi avanzati, come come se avessi più account di fatturazione Cloud oppure Account di fatturazione Cloud in una valuta diversa dai dollari statunitensi (USD).
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
The cost of storing your Cloud Billing data in BigQuery is typically free or minimal. Depending on the size of the BigQuery dataset, you might incur costs for querying the data for analysis.
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Prima di iniziare
Assicurati di poter accedere all'esempio di dashboard sull'utilizzo della fatturazione e sugli approfondimenti sui costi. Se non riesci ad accedere al Sample, è possibile che nella tua organizzazione siano state attivate le limitazioni per i domini. L'amministratore può disattivare temporaneamente limitazione di dominio per il tuo account.
Verifica che la tua organizzazione abbia abilitato l'esportazione della fatturazione Cloud a BigQuery per i dati di costo relative all'utilizzo standard.
Se l'esportazione dei dati di fatturazione Cloud non è abilitata, scopri come abilitare l'esportazione dei dati di fatturazione Cloud BigQuery.
Devi disporre delle autorizzazioni per creare BigQuery visualizzazioni nel progetto che ospita i set di dati per la fatturazione Cloud esportazione dei dati.
Facoltativamente, se vuoi creare un nuovo set di dati per viste BigQuery, devi disporre delle autorizzazioni per creare BigQuery set di dati.
Visualizza le seguenti informazioni sul tuo ambiente Google Cloud:
- L'ID progetto in cui è ospitato il set di dati BigQuery di fatturazione Cloud.
- I nomi dei set di dati per le esportazioni dei dati di costo standard e dettagliati. In genere, le esportazioni dei dati di costo si trovano nello stesso set di dati.
Se condividi la dashboard con altri utenti della tua organizzazione, consigliamo di svolgere i seguenti passaggi aggiuntivi. Ti aiutano a configurare un account di servizio Google Cloud, che può autenticarsi ai dati BigQuery anziché richiedere ad altri di utilizzare le tue credenziali o le loro per accedere ai dati.
Richiedere l'indirizzo email dell'agente di servizio Looker Studio dalla guida dell'agente di servizio di Looker Studio
Se utilizzi lo script Python per creare la dashboard, crea un account di servizio per l'agente di servizio di Looker Studio.
Se utilizzi Terraform, non devi creare manualmente l'account di servizio. La configurazione Terraform crea l'account di servizio quando applichi la configurazione.
Se utilizzi lo script Python, assicurati che il tuo Cloud Shell ha una versione recente di Python 3. Per controllare la versione di Python, nel terminale Cloud Shell digita
python --version
e premi Invio.
Creare una copia della dashboard
Terraform
Per creare una tua copia della dashboard utilizzando Terraform, devi prima clonare il repository GitHub che automatizza il processo. Questo passaggio utilizza Cloud Shell, un ambiente shell interattivo per Google Cloud che puoi utilizzare dal browser. Cloud Shell Terraform è preinstallato sullo schermo.
A livello generale, la configurazione Terraform nel repository esegue le seguenti attività:
- Crea una nuova vista BigQuery che recupera i dati dal tuo Esportazione dei dati di costo standard.
- Copia il modello di dashboard e collega la copia alla vista BigQuery dei dati.
- Fornisce un link di Looker Studio alla tua copia, che puoi e salvare dati nelle dashboard di Looker Studio.
- Ti fornisce un ID account di servizio Google Cloud, che utilizzerai come metodo di autenticazione per la dashboard.
Per creare la dashboard, procedi nel seguente modo:
Apri il repository GitHub in Cloud Shell:
Crea un file di definizioni delle variabili Terraform con le informazioni sul progetto e sul set di dati BigQuery. Utilizza il seguente comando per creare il file denominato
variables.tfvars
:cat << EOF > variables.tfvars project-id = "PROJECT_ID" bq-dashboard-dataset-name = "DATASET_NAME" bq-billing-export-table-id = "PROJECT_ID.DATASET_NAME.TABLE_ID" looker-studio-service-agent-name = "LOOKER_STUDIO_AGENT_NAME" EOF
Dove le variabili sono le seguenti:
- PROJECT_ID: l'ID progetto che ospita il tuo Set di dati di fatturazione Cloud.
- DATASET_NAME: set di dati BigQuery che contiene l'esportazione dei dati di costo standard.
- TABLE_ID: il nome della tabella BigQuery che contiene l'esportazione dei dati di fatturazione standard.
- LOOKER_STUDIO_AGENT_NAME: l'indirizzo email dell'agente di servizio di Looker Studio, che puoi trovare nella pagina di assistenza dell'agente di servizio di Looker Studio
Per inizializzare il repository GitHub come directory di lavoro Terraform, esegui il seguente comando:
terraform init
Facoltativamente, per visualizzare l'anteprima delle modifiche apportate dalla configurazione Terraform, esegui questo comando
terraform plan
:terraform plan -var-file=variables.tfvars
È possibile che ti venga richiesto di autorizzare Cloud Shell a effettuare chiamate API per conto tuo.
Rivedi le modifiche a Terraform e, se necessario, modifica
variables.tfvars
. modificare i valori delle variabili. Quando è tutto pronto per creare le risorse, esegui il seguente comandoterraform apply
:terraform apply -var-file=variables.tfvars
Dopo l'esecuzione del comando, viene visualizzato l'account di servizio creato per l'autenticazione e il link alla dashboard di Looker Studio.
Copia il nome dell'account di servizio. Queste informazioni ti servono quando configuri per l'origine dati di Looker Studio.
Fai clic sul link Looker Studio per aprire la dashboard.
In Looker Studio, fai clic su Modifica e condividi per salvare la dashboard. Quando ti viene chiesto di esaminare le impostazioni di accesso ai dati, fai clic su Accetta e salva.
Se ti viene richiesto di aggiungere dati al report, fai clic su Aggiungi al report.
Ora puoi accedere alla dashboard dalla home page di Looker Studio .
Python
Per creare una tua copia della dashboard utilizzando Python, devi prima clonare il repository GitHub che automatizza il processo. Questo passaggio utilizza Cloud Shell, un ambiente shell interattivo per Google Cloud che puoi utilizzare dal tuo browser.
In linea di massima, lo script di configurazione nel repository esegue le seguenti attività:
- Crea una nuova visualizzazione BigQuery nel set di dati contenente l'esportazione dei dati di costo standard.
- Copia il modello di dashboard. e connette la copia alla vista dati BigQuery.
- Fornisce un link di Looker Studio alla tua copia, che puoi nelle dashboard di Looker Studio.
Per creare la dashboard, procedi nel seguente modo:
Apri il repository GitHub in Cloud Shell:
Vai alla directory
billboard
:cd examples/billboard
Esegui questi comandi per configurare l'ambiente Python per lo script:
rm -rf bill-env python3 -m venv bill-env source bill-env/bin/activate pip install -r requirements.txt
Esegui lo script che crea la dashboard. Potresti dover autorizzare Cloud Shell a effettuare chiamate API per tuo conto:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -bb 'BILLBOARD_DATASET'
Dove le variabili sono le seguenti:
- PROJECT_ID: l'ID progetto che ospita il tuo Set di dati di fatturazione Cloud.
- STANDARD_BILLING_EXPORT_DATASET: il Set di dati BigQuery contenente il costo di utilizzo standard esportazione dei dati.
- BILLBOARD_DATASET: il nome del set di dati BigQuery in cui viene creata la visualizzazione BigQuery per la dashboard, ad esempio
example_dashboard_view
. Se non disponi già di un set di dati per le viste, lo script crea un uno nuovo con questo nome.
Al termine dello script, viene visualizzato un link a Looker Studio la tua dashboard.
Fai clic sul link Looker Studio per aprire la dashboard.
In Looker Studio, fai clic su Modifica e condividi per salvare la dashboard. Quando ti viene chiesto di aggiungere origini dati al report, fai clic su Aggiungi al report.
Ora puoi accedere alla dashboard dalla home page di Looker Studio.
(Facoltativo) Configura le credenziali per l'origine dati
Per impostazione predefinita, la dashboard Utilizzo fatturazione utilizza le tue credenziali per accedere all'origine dati BigQuery. Se vuoi condividere la dashboard con per altri, consigliamo di utilizzare un account di servizio Google Cloud per l'autenticazione al set di dati BigQuery, in modo che l'origine dati non dipenda sulle tue credenziali.
Se hai utilizzato Terraform per copiare la dashboard, ottieni l'ID account di servizio quando esegui il comando terraform apply
. Se hai utilizzato lo script Python, devi creare manualmente l'account di servizio seguendo questi passaggi:
Richiedere l'indirizzo email dell'agente di servizio Looker Studio dalla guida dell'agente di servizio di Looker Studio
Creare un account di servizio per l'agente di servizio di Looker Studio
Concedi all'account di servizio le seguenti autorizzazioni per il progetto che ha la visualizzazione BigQuery per la dashboard:
bigquery.dataViewer
bigquery.jobUser
iam.serviceAccountTokenCreator
Una volta che hai l'ID account di servizio, segui questi passaggi per utilizzare il servizio account per l'autenticazione:
Dalla home page di Looker Studio, apri la dashboard.
Fai clic su Modifica per modificare la dashboard.
Nel menu Risorsa, seleziona Gestisci origini dati aggiunte. Il nome dell'origine dati per la dashboard inizia con
billing-export-view
.Nella colonna Azioni dell'origine dati, fai clic su Modifica.
Fai clic su Credenziali dei dati.
Nella pagina Aggiorna credenziali dei dati, seleziona Account di servizio credenziali e inserisci l'ID account di servizio.
Fai clic su Aggiorna per utilizzare le credenziali dell'account di servizio.
Fai clic su Fine per salvare le modifiche all'origine dati.
Per visualizzare la dashboard, fai clic su Visualizza.
Aggiorna la dashboard per utilizzare le etichette della tua organizzazione
Diversi grafici della dashboard, ad esempio quelli nella pagina Cost Reporting: Labels
, si basano sulle etichette delle risorse. Per visualizzare una suddivisione accurata dei costi in base a etichette specifiche, devi modificare i filtri predefiniti per utilizzare le tue etichette.
Dalla home page di Looker Studio, apri la dashboard.
Fai clic su Modifica per modificare la dashboard.
Nel menu Risorsa, seleziona Gestisci filtri.
Rivedi i filtri basati su
labels.key
eproject.labels.key
e, se applicabile, fai clic su Modifica per modificare le chiavi delle etichette in quelle utilizzate dalla tua organizzazione.Ad esempio, se utilizzi la chiave di etichetta
department
per organizzare le risorse per unità aziendale, modifica il filtrobusiness_unit
e cambia Filtroproject.labels.key
perdepartment
.Fai clic su Chiudi per completare la modifica del filtro.
Analizza i dati nella dashboard
Le pagine della dashboard di Looker Studio suddividono i dati sui costi in modo da poter visualizzare riepiloghi rapidi dei costi e delle tendenze e ottenere informazioni dettagliate sulla spesa.
Nella maggior parte delle pagine, puoi filtrare i dati per progetto e utilizzare il calendario per scegliere il periodo per cui vuoi analizzare i costi.
Una panoramica generale dei tuoi costi
Utilizza la pagina Panoramica per una panoramica generale dei costi netti dell'attuale e nei mesi di fatturazione precedenti, i costi dei servizi di punta e i costi giornalieri per gli ultimi 30 giorni.
Utilizza la pagina Tendenze per confrontare i costi per periodi diversi, ad esempio il mese corrente e quello precedente o il trimestre corrente e quello precedente.
Utilizza la pagina Analisi per analizzare i costi nel tempo e identificare anomalie come spese insolitamente elevate o ridotte.
Identifica i fattori di costo
Utilizza le seguenti pagine per scoprire dove spendi di più:
- Costo per servizio per mese
- Costo per progetto per mese
- Costo per progetto, servizio e SKU
- Costo per regione
Per una panoramica dettagliata dei costi di ciascun servizio, utilizza la pagine. Ad esempio, la pagina Cluster GKE mostra i costi suddivisi per dei cluster e degli spazi dei nomi GKE.
Identifica le opportunità di risparmio con gli sconti per impegno di utilizzo
Gli sconti per impegno di utilizzo (CUD) offrono prezzi scontati in cambio dell'impegno a utilizzare un livello minimo di risorse per un periodo di tempo specificato.
Le pagine dello sconto per impegno di utilizzo (CUD) nella dashboard ti mostrano Utilizzo di Compute Engine, Cloud SQL e Memorystore idonei per gli sconti per impegno di utilizzo (CUD). Se hai già uno o più CUD, queste pagine mostrano solo l'utilizzo non coperto dagli sconti per impegno di utilizzo esistenti.
Visualizzare i costi del software di Cloud Marketplace e delle licenze aggiuntive
Utilizza la pagina Marketplace per vedere i costi per il software che acquistato da Cloud Marketplace, ad esempio Google Cloud NetApp Volumes.
Utilizza la pagina Licenze per scoprire quanto stai spendendo per altre come licenze per Windows Server su Compute Engine e licenze di terze parti acquistate da Cloud Marketplace.
Visualizzare i costi per etichette
Puoi personalizzare i filtri della dashboard per utilizzare i tuoi le etichette dell'organizzazione. Dopo aver aggiornato i filtri, puoi utilizzare quanto segue: per visualizzare i costi relativi a progetti e cartelle:
La pagina Per applicazione mostra i costi per tutte le risorse sotto la chiave di etichetta
application
. Ad esempio, se hai un'app web e per dispositivi mobili ed etichetta i loro risorse rispettivamente conapplication:web
eapplication:mobile
, puoi vedere i tuoi costi per ogni applicazione separatamente.La pagina Etichette mostra i costi per etichette specifiche, ad esempio i costi e il codice dell'attività. Se hai personalizzato i filtri per la dashboard, puoi modificare i titoli dei grafici per riflettere i filtri.
(Avanzato) Modificare i dati di più account di fatturazione Cloud
Se vuoi che la dashboard includa i dati di più account di fatturazione Cloud, puoi modificare le visualizzazioni BigQuery in modo da includere le esportazioni dei dati di fatturazione per tutti gli account di fatturazione Cloud.
Prima di iniziare
Per ogni account di fatturazione Cloud che vuoi includere, segui tutti i passaggi descritti nei prerequisiti del tutorial.
Aggiorna le viste BigQuery per includere ulteriori esportazioni della fatturazione Cloud
Nella console Google Cloud, apri la pagina BigQuery.
Seleziona il progetto contenente il set di dati che hai creato per la dashboard.
Nel riquadro di esplorazione, espandi il progetto, quindi espandi il set di dati.
Fai clic sulla visualizzazione billboard per vedere i dettagli. Questa visualizzazione esegue query Esportazione standard dei dati su costi e utilizzo.
Fai clic sulla scheda Dettagli, quindi su Modifica query. La query per la visualizzazione è simile alla seguente:
SELECT *, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID.BILLING_ACCOUNT_EXPORT` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
Dove PROJECT_ID è il progetto che contiene Esportazione dei dati di costo di BigQuery Standard per Fatturazione Cloud, mentre BILLING_ACCOUNT_EXPORT è della tabella BigQuery con i tuoi dati di costo standard.
Duplica la query esistente e, nella clausola
FROM
, sostituisci l'ID progetto e la tabella BigQuery con le informazioni per l'account di fatturazione Cloud aggiuntivo.Aggiungi l'operatore
UNION ALL
tra le due query per combinare i dati. La tua query finale sembra qualcosa come l'esempio seguente, che combina le esportazioni dei dati BILLING_ACCOUNT_1 e BILLING_ACCOUNT_2, che si trovano in PROJECT_ID_1 e PROJECT_ID_2 rispettivamente.SELECT *, --query for BILLING_ACCOUNT_1 COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, EXTRACT(DATE FROM _PARTITIONTIME) AS date FROM `PROJECT_ID_1.BILLING_ACCOUNT_1_EXPORT` s WHERE _PARTITIONTIME >"2021-01-01" UNION ALL SELECT *, --query for BILLING_ACCOUNT_2 COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) AS credits_sum_amount, COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0) + cost as net_cost, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID_2.BILLING_ACCOUNT_2_EXPORT` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
Ripeti questi passaggi per la vista billboard_detail, che esegue una query Dati dettagliati su costi e utilizzo.
Se la valuta di uno dei tuoi account è diversa dal dollaro statunitense, ripeti questi passaggi passaggi e utilizza la colonna
currency_conversion_rate
per convertire in dollari statunitensi, simile all'esempio seguente:select *, (COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0))/currency_conversion_rate AS credits_sum_amount, (COALESCE((SELECT SUM(x.amount) FROM UNNEST(s.credits) x),0))/currency_conversion_rate + cost/currency_conversion_rate as net_cost, 'USD' as net_cost_currency, PARSE_DATE("%Y%m", invoice.month) AS Invoice_Month, _PARTITIONDATE AS date from `PROJECT_ID.BILLING_ACCOUNT_DATASET` s WHERE _PARTITIONDATE > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
Esegui la pulizia
Terraform
Se non vuoi più utilizzare la dashboard, apri il modulo di lavoro Terraform
nella directory attuale e usa il comando terraform apply
per eliminare le risorse
che hai creato.
Apri la directory di lavoro di Terraform in Cloud Shell. Se utilizzavi repository GitHub in questo tutorial, usa il link seguente per aprire repository:
Facoltativamente, per visualizzare l'anteprima delle risorse che vengono eliminate, esegui il seguente comando
terraform plan
:terraform plan -destroy
Rivedi le modifiche di Terraform. Quando vuoi eliminare le risorse, esegui questo comando
terraform apply
:terraform apply -destroy
Python
Se non vuoi più utilizzare la dashboard, clona il repository GitHub ed eseguite lo script della dashboard con l'opzione -clean
. Lo script elimina le visualizzazioni BigQuery, ma lascia invariato il set di dati BigQuery Export.
Apri il repository GitHub in Cloud Shell:
Vai alla directory
billboard
:cd examples/billboard
Esegui questi comandi per configurare l'ambiente Python per lo script:
pip install virtualenv virtualenv bill-env source bill-env/bin/activate pip install -r requirements.txt
Esegui il comando di pulizia:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -de 'DETAILED_BILLING_EXPORT_DATASET' \ -bb 'BILLBOARD_DATASET' \ -clean yes
Dove le variabili sono le seguenti:
- PROJECT_ID: l'ID progetto che ospita il tuo Set di dati di fatturazione Cloud.
- STANDARD_BILLING_EXPORT_DATASET: il Set di dati BigQuery contenente il costo di utilizzo standard esportazione dei dati.
- DETAILED_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati sul costo di utilizzo dettagliato.
- BILLBOARD_DATASET: il set di dati BigQuery in cui hai creato le visualizzazioni BigQuery per la dashboard.
Per eliminare la dashboard di Looker Studio, apri Looker Studio individua la dashboard e, nel menu , fai clic su Rimuovi.
Passaggi successivi
Scopri le tabelle di dati di fatturazione Cloud in BigQuery.
Esamina esempi di query per i dati di fatturazione Cloud esporta.
Scopri di più sull'implementazione di FinOps in Google Cloud e sulle best practice per il monitoraggio dei costi.