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 di Google Cloud.

Questo documento mostra come configurare la dashboard Approfondimenti sull'utilizzo e sui costi della fatturazione con i dati del 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ù?.

Visualizzazione di esempio in Looker Studio

Per configurare la tua dashboard, segui questo tutorial o guarda il seguente video:

Obiettivi

Questo tutorial mostra come completare le seguenti 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 in modo da utilizzare le etichette che utilizzi nel tuo ambiente Google Cloud.

  • Scopri come modificare l'origine dati della dashboard per casi avanzati, ad esempio se hai più account di fatturazione Cloud o un 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. I nuovi utenti di Google Cloud potrebbero essere idonei per una prova gratuita.

Prima di iniziare

  1. Assicurati di poter accedere alla dashboard di utilizzo e insight sui costi di fatturazione di esempio. Se non riesci ad accedere al Sample, è possibile che nella tua organizzazione siano state attivate le limitazioni per il 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 attivato l'esportazione della fatturazione Cloud in BigQuery per i dati sul costo di utilizzo standard.

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

  3. Devi disporre delle autorizzazioni per creare visualizzazioni 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. 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.
  5. 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.

    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 servizio per l'agente di servizio di Looker Studio.

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

  6. Se utilizzi lo script Python, assicurati che l'ambiente Cloud Shell abbia una versione recente di Python 3. Per controllare la versione di Python, digita python --version nel terminale Cloud Shell 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 è fornito con Terraform preinstallato.

A livello generale, la configurazione Terraform nel repository esegue le seguenti 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 dati.
  • Ti fornisce un link a Looker Studio per la tua copia, che puoi salvare 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:

  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 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: 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 di servizio di Looker Studio, che puoi trovare nella pagina di assistenza dell'agente di servizio di Looker Studio
  3. Per inizializzare il repository GitHub come directory di lavoro di Terraform, esegui il seguente comando:

    terraform init
    
  4. Se vuoi, per visualizzare l'anteprima delle modifiche apportate dalla configurazione di 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 cambiare 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, viene visualizzato l'account di servizio creato per l'autenticazione e il link alla dashboard di Looker Studio.

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

  7. Fai clic sul link a 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 esaminare 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 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 browser.

A livello generale, 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 collega la copia alla vista BigQuery dei dati.
  • Ti 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 i seguenti 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. 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 i set di dati di fatturazione Cloud.
    • STANDARD_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati sul costo di utilizzo standard.
    • 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 hai ancora un set di dati per le visualizzazioni, lo script ne crea uno nuovo con questo nome.

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

  5. Fai clic sul link a 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 account di servizio Google Cloud per autenticarti 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 l'account di servizio 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 di Looker Studio.

  3. 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 ottenuto l'ID account di servizio, segui questi passaggi per utilizzarlo 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 dei dati.

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

  7. Fai clic su Aggiorna per utilizzare le credenziali dell'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 dell'organizzazione

Diversi grafici della dashboard, come 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.

  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 quelle utilizzate dalla tua organizzazione.

    Ad esempio, se utilizzi la chiave di etichetta department per organizzare le risorse in base all'unità di business, modifica il filtro business_unit e imposta il filtro project.labels.key su department.

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

Analizzare i dati nella dashboard

Le pagine della dashboard di Looker Studio suddividono i dati sui costi in modo da poter visualizzare riepiloghi rapidi di costi e 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.

Visualizzare una panoramica generale dei costi

Utilizza la pagina Panoramica per una panoramica dei costi netti per i mesi di fatturazione corrente e precedente, i costi per i tuoi servizi principali 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 un'analisi dettagliata dei costi per ogni servizio, utilizza le pagine specifiche per ciascun servizio. Ad esempio, la pagina Cluster GKE mostra i costi suddivisi in base ai tuoi cluster e 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 del tuo impegno a utilizzare un livello minimo di risorse per un periodo di tempo specificato.

Le pagine CUD nella dashboard mostrano il tuo utilizzo di Compute Engine, Cloud SQL e Memorystore che potrebbe essere idoneo per le 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 visualizzare i costi del software che hai acquistato da Cloud Marketplace, ad esempio Google Cloud NetApp Volumes.

Utilizza la pagina Licenze per vedere quanto stai spendendo per licenze aggiuntive, ad esempio licenze per Windows Server su Compute Engine e 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 per progetti e cartelle:

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

  • La pagina Etichette mostra i costi per etichette specifiche, come centro di costo e codice attività. Se hai personalizzato i filtri per la dashboard, puoi modificare i titoli dei grafici in base ai 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 visualizzazioni BigQuery per includere ulteriori esportazioni di fatturazione Cloud

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

    Vai a BigQuery

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

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

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

  5. Fai clic sulla scheda Dettagli e poi 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 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 all'esempio seguente, che combina le esportazioni dei dati per BILLING_ACCOUNT_1 e BILLING_ACCOUNT_2, rispettivamente in PROJECT_ID_1 e PROJECT_ID_2.

    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)
    
  8. Ripeti questi passaggi per la vista billboard_detail, che esegue query sui dati dettagliati su costi e utilizzo.

  9. Se uno dei tuoi account è in una valuta diversa dal dollaro statunitense, ripeti questi passaggi e utilizza la colonna currency_conversion_rate per convertire in dollari statunitensi, come nell'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 di nuovo la directory di lavoro 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, usa il seguente link per aprirlo:

    Apri in
Cloud Shell

  2. Facoltativamente, per visualizzare l'anteprima delle risorse che vengono eliminate, esegui il seguente comandoterraform 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 invariato il set di dati BigQuery Export.

  1. Apri il repository GitHub in Cloud Shell:

    Apri in
Cloud Shell

  2. Vai alla directory billboard:

    cd examples/billboard
    
  3. Esegui i seguenti 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 set di dati di fatturazione Cloud.
    • STANDARD_BILLING_EXPORT_DATASET: il set di dati BigQuery che contiene l'esportazione dei dati sul costo di utilizzo standard.
    • 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.
  5. Per eliminare la dashboard di Looker Studio, apri Looker Studio individua la dashboard e, nel menu , fai clic su Rimuovi.

Passaggi successivi