Visualizza i costi con Looker Studio


Puoi combinare l'esportazione dei dati di fatturazione Cloud in BigQuery con Looker Studio per rimanere al corrente dei costi Google Cloud .

Questo documento mostra come configurare la dashboard Utilizzo e approfondimenti sui costi della fatturazione con i dati di fatturazione Cloud. Puoi utilizzare la dashboard per rispondere a domande sulla tua spesa, ad esempio Quanto spendo per le risorse Compute Engine? e Quali ambienti mi costano di più?. Google Cloud

Visualizzazione di esempio in Looker Studio

Puoi configurare la dashboard seguendo questo tutorial o guardando il seguente video:

Obiettivi

Questo tutorial mostra come completare le seguenti attività:

  • Configura la tua copia della dashboard Utilizzo e approfondimenti sui costi di fatturazione utilizzando Cloud Shell.

    Puoi utilizzare Terraform o Python per seguire i passaggi di questo tutorial.

  • Configura i filtri del dashboard in modo che utilizzino le etichette che utilizzi nel tuo ambienteGoogle Cloud .

  • Scopri come modificare l'origine dati del dashboard per i casi avanzati, ad esempio se hai più account di fatturazione Cloud o un account di fatturazione Cloud in una valuta diversa dal dollaro statunitense (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 in base all'utilizzo previsto, utilizza il calcolatore prezzi. I nuovi utenti di Google Cloud potrebbero avere diritto a una prova gratuita.

Prima di iniziare

  1. Assicurati di poter accedere al dashboard di esempio Utilizzo e approfondimenti sui costi di fatturazione. Se non riesci ad accedere al campione, è possibile che la tua organizzazione abbia attivato restrizioni di dominio. L'amministratore può disattivare temporaneamente la limitazione del dominio per il tuo account.

    Scopri di più sulle limitazioni dei domini.

  2. Verifica che la tua organizzazione abbia abilitato l'esportazione della fatturazione Cloud in BigQuery per i dati di costo di utilizzo standard.

    Se l'esportazione dei dati di fatturazione Cloud non è abilitata, scopri come abilitarla in BigQuery.

  3. Devi disporre delle autorizzazioni per creare viste BigQuery nel progetto che ospita i set di dati per l'esportazione dei dati di fatturazione Cloud.

    Se vuoi creare un nuovo set di dati per le viste BigQuery, devi disporre delle autorizzazioni per creare set di dati BigQuery.

  4. Fornisci 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.
  5. Se condividi la dashboard con altri membri della tua organizzazione, ti consigliamo di seguire questi passaggi aggiuntivi. Questi ti aiutano a configurare un service accountGoogle Cloud , che può autenticarsi sui dati BigQuery senza richiedere ad altri di utilizzare le tue credenziali o le proprie per accedere ai dati.

    1. Recupera l'indirizzo email dell'agente di servizio Looker Studio dalla pagina di assistenza dell'agente di servizio Looker Studio.

    2. Se utilizzi lo script Python per creare la dashboard, crea un account di serviziot per l'agente di servizio Looker Studio.

      Se utilizzi Terraform, non devi creare l'account di servizio manualmente. La configurazione Terraform crea il account di servizio quando applichi la configurazione.

  6. Se utilizzi lo script Python, assicurati che l'ambiente Cloud Shell disponga di 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 è preinstallato con Terraform.

A livello generale, la configurazione Terraform nel repository svolge queste attività:

  • Crea una nuova visualizzazione BigQuery che recupera i dati dall'esportazione dei dati di costo standard.
  • Copia il modello di dashboard e collega la copia alla vista BigQuery dei tuoi dati.
  • Fornisce un link di Looker Studio alla tua copia, che puoi salvare nelle dashboard di Looker Studio.
  • Fornisce un ID account di servizio Google Cloud , che utilizzi come metodo di autenticazione per la dashboard.

Per creare la dashboard:

  1. Apri il repository GitHub in Cloud Shell:

    Apri in
Cloud Shell

  2. Crea un file di definizioni delle variabili Terraform con le informazioni sul tuo progetto e sul set di dati BigQuery. Utilizza il comando seguente 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 datifatturazione Cloudg.
    • DATASET_NAME: il set di dati BigQuery che contiene l'esportazione dei dati sui costi 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 del servizio Looker Studio, che puoi trovare nella pagina di assistenza dell'agente del servizio Looker Studio
  3. Per inizializzare il repository GitHub come directory di lavoro di Terraform, esegui questo comando:

    terraform init
    
  4. (Facoltativo) Per visualizzare l'anteprima delle modifiche apportate dalla configurazione Terraform, esegui il seguente comando terraform plan:

    terraform plan -var-file=variables.tfvars
    

    Potrebbe esserti chiesto di autorizzare Cloud Shell a effettuare chiamate API per tuo conto.

  5. Esamina le modifiche di Terraform e modifica variables.tfvars se devi modificare i valori delle variabili. Quando è tutto pronto per creare le risorse, esegui il seguente comando terraform apply:

    terraform apply -var-file=variables.tfvars
    

    Dopo l'esecuzione del comando, riceverai l'account di servizio creato per l'autenticazione e il link alla dashboard di Looker Studio.

  6. Copia il nome del account di servizio. Queste informazioni sono necessarie per configurare l'autenticazione per l'origine dati di Looker Studio.

  7. Fai clic sul link di Looker Studio per aprire la dashboard.

  8. In Looker Studio, fai clic su Modifica e condividi per salvare la dashboard. Quando ti viene chiesto di rivedere le impostazioni di accesso ai dati, fai clic su Accetta e salva.

  9. Se ti viene chiesto di aggiungere dati al report, fai clic su Aggiungi a report.

Ora puoi accedere alla dashboard dalla home page di Looker Studio.

Python

Per creare la tua copia della dashboard utilizzando Python, clona innanzitutto il repository GitHub che automatizza il processo. Questo passaggio utilizza Cloud Shell, un ambiente shell interattivo per Google Cloud che puoi utilizzare dal browser.

A livello generale, lo script di configurazione nel repository esegue queste attività:

  • Crea una nuova visualizzazione BigQuery nel set di dati che contiene l'esportazione dei dati del costo standard.
  • Copia il modello di dashboard e collega la copia alla vista BigQuery dei tuoi dati.
  • Fornisce un link di Looker Studio alla tua copia, che puoi salvare nelle dashboard di Looker Studio.

Per creare la dashboard:

  1. Apri il repository GitHub in Cloud Shell:

    Apri in
Cloud Shell

  2. Vai alla directory billboard:

    cd examples/billboard
    
  3. 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
    
  4. Esegui lo script che crea la dashboard. Potrebbe essere necessario 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 i tuoi set di datifatturazione Cloudg.
    • STANDARD_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati sui costi di utilizzo standard.
    • BILLBOARD_DATASET: il nome del set di dati BigQuery in cui viene creata la visualizzazione BigQuery per il dashboard, ad esempio example_dashboard_view. Se non hai ancora un set di dati per le visualizzazioni, lo script ne crea uno nuovo con questo nome.

    Al termine dell'esecuzione dello script, ricevi un link di Looker Studio alla tua dashboard.

  5. Fai clic sul link di Looker Studio per aprire la dashboard.

  6. 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 altre persone, ti consigliamo di utilizzare un Google Cloud service account per l'autenticazione al set di dati BigQuery, in modo che l'origine dati non dipenda dalle 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 ilaccount di serviziot seguendo questi passaggi:

  1. Recupera l'indirizzo email dell'agente di servizio Looker Studio dalla pagina di assistenza dell'agente di servizio Looker Studio.

  2. Crea un account di servizio per l'agente di servizio Looker Studio.

  3. Concedi al account di servizio le seguenti autorizzazioni per il progetto che contiene la visualizzazione BigQuery per il dashboard:

    • bigquery.dataViewer
    • bigquery.jobUser
    • iam.serviceAccountTokenCreator

Una volta ottenuto l'ID account di servizio, segui questi passaggi per utilizzare il service account per l'autenticazione:

  1. Dalla home page di Looker Studio, apri la dashboard.

  2. Fai clic su Modifica per modificare la dashboard.

  3. Nel menu Risorsa, seleziona Gestisci origini dati aggiunte. Il nome dell'origine dati per la dashboard inizia con billing-export-view.

  4. Nella colonna Azioni dell'origine dati, fai clic su Modifica.

  5. Fai clic su Credenziali dati.

  6. Nella pagina Aggiorna credenziali dati, seleziona Credenziali dell'account di servizio e inserisci l'ID account di servizio.

  7. Fai clic su Aggiorna per utilizzare le credenziali del account di servizio.

  8. Fai clic su Fine per salvare le modifiche all'origine dati.

  9. Per visualizzare la dashboard, fai clic su Visualizza.

Aggiornare la dashboard per utilizzare le etichette della tua organizzazione

Diversi grafici nella dashboard, come quelli nella pagina Cost Reporting: Labels, sono basati 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.

  1. Dalla home page di Looker Studio, apri la dashboard.

  2. Fai clic su Modifica per modificare la dashboard.

  3. Nel menu Risorsa, seleziona Gestisci filtri.

  4. Rivedi i filtri basati su labels.key e project.labels.key e, se applicabile, fai clic su Modifica per modificare le chiavi delle etichette in modo che corrispondano a quelle utilizzate dalla tua organizzazione.

    Ad esempio, se utilizzi la chiave di etichetta department per organizzare le risorse per unità aziendale, modifica il filtro business_unit e cambia il filtro project.labels.key in department.

  5. Fai clic su Chiudi per terminare la modifica del filtro.

Analizzare i dati nella dashboard

Le pagine della dashboard di Looker Studio analizzano i dati sui costi in modo da poter visualizzare riepiloghi rapidi dei costi e delle tendenze e ottenere informazioni dettagliate sulle tue spese.

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.

Visualizzare una panoramica generale dei costi

Utilizza la pagina Panoramica per visualizzare una panoramica dei costi netti per i mesi di fatturazione corrente e precedente, i costi per i servizi principali e i costi giornalieri degli ultimi 30 giorni.

Utilizza la pagina Tendenze per confrontare i costi di periodi diversi, ad esempio il mese in corso e il mese precedente oppure il trimestre in corso e il trimestre precedente.

Utilizza la pagina Analisi per analizzare i costi nel tempo e identificare anomalie come spese insolitamente alte o basse.

Identificare i fattori di costo

Utilizza le seguenti pagine per scoprire dove spendi di più:

  • Costo per servizio al mese
  • Costo per progetto per mese
  • Costo per progetto, servizio e SKU
  • Costo per regione

Per un'analisi dettagliata dei costi per ogni servizio, utilizza le pagine specifiche del servizio. Ad esempio, la pagina Cluster GKE mostra i costi suddivisi in base ai cluster GKE e agli spazi dei nomi.

Identificare 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 CUD nella dashboard mostrano l'utilizzo di Compute Engine, Cloud SQL e Memorystore che potrebbe essere idoneo per gli sconti per impegno di utilizzo. Se hai già uno o più CUD, queste pagine mostrano solo l'utilizzo non ancora coperto dai CUD esistenti.

Visualizzare i costi per il software Cloud Marketplace e le licenze aggiuntive

Utilizza la pagina Marketplace per visualizzare i costi del software che hai acquistato da Cloud Marketplace, ad esempio Google Cloud NetApp Volumes.

Utilizza la pagina Licenze per visualizzare la spesa per le licenze aggiuntive, ad esempio le licenze per Windows Server su Compute Engine e le licenze di terze parti che hai acquistato da Cloud Marketplace.

Visualizzare i costi per etichette

Puoi personalizzare i filtri della dashboard per utilizzare le etichette della tua organizzazione. Dopo aver aggiornato i filtri, puoi utilizzare le seguenti pagine per visualizzare i costi di progetti e cartelle:

  • La pagina Per applicazione mostra i costi per tutte le risorse nella chiave dell'etichetta application. Ad esempio, se hai un'app web e un'app mobile ed etichetti le relative risorse con application:web e application:mobile rispettivamente, puoi visualizzare i costi per ogni applicazione separatamente.

  • La pagina Etichette mostra i costi per etichette specifiche, ad esempio centro di costo e codice aziendale. Se hai personalizzato i filtri per la dashboard, puoi modificare i titoli dei grafici in modo che riflettano i filtri.

(Avanzato) Modifica i dati per più account di fatturazione Cloud

Se vuoi che la dashboard includa i dati di più account di fatturazione Cloud, puoi modificare le viste BigQuery in modo che includano le esportazioni dei dati di fatturazione per tutti gli account di fatturazione Cloud.

Prima di iniziare

Per ogni account di fatturazione Cloud da includere, segui tutti i passaggi descritti nei prerequisiti del tutorial.

Aggiorna le viste BigQuery in modo da includere ulteriori esportazioni della fatturazione Cloud

  1. Nella console Google Cloud , apri la pagina BigQuery.

    Vai a BigQuery

  2. Seleziona il progetto che contiene il set di dati che hai creato per la dashboard.

  3. Nel riquadro Explorer, espandi il progetto, quindi espandi il set di dati.

  4. Fai clic sulla visualizzazione tabellone per visualizzarne i dettagli. Questa visualizzazione esegue query sull'esportazione dei dati di costo e utilizzo standard.

  5. Fai clic sulla scheda Dettagli, poi su Modifica query. La query per la vista è 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,
       date(usage_end_time) AS date
    from `PROJECT_ID.BILLING_ACCOUNT_EXPORT` s
    WHERE date(usage_end_time) > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
    

    dove PROJECT_ID è il progetto che contiene l'esportazione dei dati di costo standard di BigQuery per la fatturazione Cloud e BILLING_ACCOUNT_EXPORT è il nome della tabella BigQuery con i dati di costo standard.

  6. 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.

  7. Aggiungi l'operatore UNION ALL tra le due query per combinare i dati. La query finale è simile al seguente esempio, che combina le esportazioni di dati per 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,
    date(usage_end_time) AS date
    from `PROJECT_ID_2.BILLING_ACCOUNT_2_EXPORT` s
    WHERE date(usage_end_time) > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
    
  8. Ripeti questi passaggi per la visualizzazione billboard_detail, che esegue query sui dati dettagliati su costi e utilizzo.

  9. Se uno dei tuoi account utilizza una valuta diversa dal dollaro statunitense, ripeti questi passaggi e utilizza la colonna currency_conversion_rate per la conversione in dollari statunitensi, come nel seguente esempio:

    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,
          date(usage_end_time) AS date
    from `PROJECT_ID.BILLING_ACCOUNT_DATASET` s
    WHERE date(usage_end_time) > DATE_SUB(CURRENT_DATE(), INTERVAL 13 MONTH)
    

Esegui la pulizia

Terraform

Se non vuoi più utilizzare la dashboard, apri di nuovo la directory di lavoro di Terraform e utilizza il comando terraform apply per eliminare le risorse che hai creato.

  1. Apri la directory di lavoro di Terraform in Cloud Shell. Se hai utilizzato il repository GitHub in questo tutorial, utilizza il seguente link per aprirlo:

    Apri in
Cloud Shell

  2. (Facoltativo) Per visualizzare l'anteprima delle risorse eliminate, esegui questo comando terraform plan:

    terraform plan -destroy
    
  3. Rivedi le modifiche di Terraform. Quando è tutto pronto per eliminare le risorse, esegui il seguente comando terraform apply:

    terraform apply -destroy
    

Python

Se non vuoi più utilizzare la dashboard, clona il repository GitHub e esegui lo script della dashboard con l'opzione -clean. Lo script elimina le visualizzazioni BigQuery, ma lascia intatto il set di dati di BigQuery Export.

  1. Apri il repository GitHub in Cloud Shell:

    Apri in
Cloud Shell

  2. Vai alla directory billboard:

    cd examples/billboard
    
  3. 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
    
  4. 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 i tuoi set di datifatturazione Cloudg.
    • STANDARD_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati sui costi di utilizzo standard.
    • DETAILED_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati del costo di utilizzo dettagliato.
    • BILLBOARD_DATASET: il set di dati BigQuery in cui hai creato le viste BigQuery per la dashboard.
  5. Per eliminare la dashboard di Looker Studio, apri Looker Studio, individua la dashboard e, dal menu , fai clic su Rimuovi.

Passaggi successivi