Anda dapat menggabungkan ekspor data Penagihan Cloud ke BigQuery dengan Looker Studio untuk mendapatkan informasi terbaru seputar biaya Google Cloud Anda.
Dokumen ini menunjukkan cara menyiapkan Dasbor penggunaan dan insight biaya penagihan dengan data Penagihan Cloud Anda. Anda dapat menggunakan dasbor untuk menjawab pertanyaan tentang pembelanjaan Google Cloud, seperti Berapa banyak yang saya belanjakan untuk resource Compute Engine?, dan Manakah lingkungan yang paling banyak menghabiskan biaya?.
Anda dapat menyiapkan dasbor dengan mengikuti tutorial ini, atau menonton video berikut:
Tujuan
Tutorial ini menunjukkan kepada Anda cara menyelesaikan tugas-tugas berikut:
Siapkan salinan Dasbor penggunaan dan insight biaya penagihan Anda sendiri menggunakan Cloud Shell.
Anda dapat menggunakan Terraform atau Python untuk mengikuti langkah-langkah dalam tutorial ini.
Konfigurasikan filter dasbor untuk menggunakan label yang Anda gunakan di lingkungan Google Cloud.
Pelajari cara mengubah sumber data dasbor untuk kasus lanjutan, misalnya jika Anda memiliki beberapa akun Penagihan Cloud, atau akun Penagihan Cloud dalam mata uang selain Dolar AS (USD).
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:
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.
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
Pastikan Anda dapat mengakses contoh Dasbor penggunaan dan insight biaya penagihan. Jika Anda tidak dapat mengakses contoh, organisasi Anda mungkin mengaktifkan pembatasan domain. Administrator dapat menonaktifkan pembatasan domain untuk akun Anda untuk sementara.
Pastikan organisasi Anda telah mengaktifkan ekspor Penagihan Cloud ke BigQuery untuk data Biaya penggunaan standar.
Jika ekspor data Penagihan Cloud tidak diaktifkan, pelajari cara mengaktifkan ekspor data Penagihan Cloud ke BigQuery.
Anda harus memiliki izin untuk membuat tampilan BigQuery di project yang menghosting set data untuk ekspor data Penagihan Cloud Anda.
Opsi lain, jika ingin membuat set data baru untuk tampilan BigQuery, Anda harus memiliki izin untuk membuat set data BigQuery.
Dapatkan informasi berikut tentang lingkungan Google Cloud Anda:
- Project ID tempat set data BigQuery Penagihan Cloud Anda dihosting.
- Nama set data untuk ekspor data biaya Standar dan Terperinci. Biasanya, ekspor data biaya berada dalam set data yang sama.
Jika Anda membagikan dasbor kepada orang lain di organisasi, sebaiknya lakukan langkah tambahan berikut. Hal ini membantu Anda menyiapkan akun layanan Google Cloud, yang dapat mengautentikasi ke data BigQuery, bukan mengharuskan orang lain menggunakan kredensial Anda atau kredensial mereka sendiri untuk mengakses data.
Dapatkan alamat email untuk agen layanan Looker Studio dari halaman bantuan agen layanan Looker Studio.
Jika Anda menggunakan skrip Python untuk membuat dasbor, buat akun layanan untuk agen layanan Looker Studio.
Jika menggunakan Terraform, Anda tidak perlu membuat akun layanan secara manual. Konfigurasi Terraform membuat akun layanan saat Anda menerapkan konfigurasi.
Jika Anda menggunakan skrip Python, pastikan lingkungan Cloud Shell Anda memiliki Python 3 versi terbaru. Untuk memeriksa versi Python, di terminal Cloud Shell, ketik
python --version
dan tekan Enter.
Membuat salinan dasbor
Terraform
Untuk membuat salinan dasbor Anda sendiri menggunakan Terraform, pertama-tama Anda harus meng-clone repositori GitHub yang mengotomatiskan proses ini. Langkah ini menggunakan Cloud Shell, yang merupakan lingkungan shell interaktif untuk Google Cloud yang dapat Anda gunakan dari browser. Cloud Shell dilengkapi dengan Terraform yang telah diinstal sebelumnya.
Pada tingkat tinggi, konfigurasi Terraform dalam repositori melakukan tugas berikut:
- Membuat tampilan BigQuery baru yang mengambil data dari ekspor data biaya Standar Anda.
- Menyalin template dasbor dan menghubungkan salinan tersebut ke tampilan BigQuery data Anda.
- Memberi Anda link Looker Studio ke salinan Anda, yang dapat disimpan ke dasbor Looker Studio.
- Memberi Anda ID akun layanan Google Cloud, yang Anda gunakan sebagai metode autentikasi untuk dasbor.
Ikuti langkah-langkah berikut untuk membuat dasbor:
Buka repositori GitHub di Cloud Shell:
Buat file definisi variabel Terraform, dengan informasi tentang project dan set data BigQuery Anda. Gunakan perintah berikut untuk membuat file, yang disebut
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
Dengan variabel sebagai berikut:
- PROJECT_ID: Project ID yang menghosting set data Penagihan Cloud Anda.
- DATASET_NAME: Set data BigQuery yang berisi ekspor data biaya Standar.
- TABLE_ID: Nama untuk tabel BigQuery yang berisi ekspor data penagihan Standar.
- LOOKER_STUDIO_AGENT_NAME: Alamat email untuk agen layanan Looker Studio, yang Anda dapatkan dari halaman bantuan agen layanan Looker Studio
Untuk melakukan inisialisasi repositori GitHub sebagai direktori kerja Terraform, jalankan perintah berikut:
terraform init
Jika ingin, untuk melihat pratinjau perubahan yang dilakukan konfigurasi Terraform, jalankan perintah
terraform plan
berikut:terraform plan -var-file=variables.tfvars
Anda mungkin diminta untuk memberikan otorisasi kepada Cloud Shell agar dapat melakukan panggilan API atas nama Anda.
Tinjau perubahan Terraform, dan edit
variables.tfvars
jika Anda perlu mengubah nilai variabel apa pun. Jika Anda sudah siap membuat resource, jalankan perintahterraform apply
berikut:terraform apply -var-file=variables.tfvars
Setelah perintah berjalan, Anda akan mendapatkan akun layanan yang dibuat untuk autentikasi, dan link ke dasbor Looker Studio.
Salin nama akun layanan. Anda memerlukan informasi ini saat mengonfigurasi autentikasi untuk sumber data Looker Studio.
Klik link Looker Studio untuk membuka dasbor.
Di Looker Studio, klik Edit dan bagikan untuk menyimpan dasbor. Saat diminta untuk meninjau setelan akses data, klik Acknowledge and save.
Jika Anda diminta untuk menambahkan data ke laporan, klik Tambahkan ke laporan.
Sekarang Anda dapat mengakses dasbor dari halaman beranda Looker Studio.
Python
Untuk membuat salinan dasbor Anda sendiri menggunakan Python, pertama-tama Anda harus meng-clone repositori GitHub yang mengotomatiskan proses ini. Langkah ini menggunakan Cloud Shell, yang merupakan lingkungan shell interaktif untuk Google Cloud yang dapat Anda gunakan dari browser.
Pada level tinggi, skrip penyiapan dalam repositori melakukan tugas berikut:
- Membuat tampilan BigQuery baru di set data yang memiliki ekspor data biaya Standar Anda.
- Menyalin template dasbor dan menghubungkan salinan tersebut ke tampilan BigQuery data Anda.
- Memberi Anda link Looker Studio ke salinan Anda, yang dapat disimpan ke dasbor Looker Studio.
Ikuti langkah-langkah berikut untuk membuat dasbor:
Buka repositori GitHub di Cloud Shell:
Buka direktori
billboard
:cd examples/billboard
Jalankan perintah berikut untuk menyiapkan lingkungan Python untuk skrip:
rm -rf bill-env python3 -m venv bill-env source bill-env/bin/activate pip install -r requirements.txt
Jalankan skrip yang membuat dasbor Anda. Anda mungkin perlu mengizinkan Cloud Shell untuk melakukan panggilan API atas nama Anda:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -bb 'BILLBOARD_DATASET'
Dengan variabel sebagai berikut:
- PROJECT_ID: Project ID yang menghosting set data Penagihan Cloud Anda.
- STANDARD_BILLING_EXPORT_DATASET: Set data BigQuery yang berisi ekspor data biaya penggunaan Standar.
- BILLBOARD_DATASET: Nama untuk set data BigQuery tempat tampilan BigQuery untuk dasbor dibuat, misalnya,
example_dashboard_view
. Jika Anda belum memiliki set data untuk tampilan, skrip akan membuat set data baru dengan nama ini.
Setelah skrip selesai berjalan, Anda akan mendapatkan link Looker Studio ke dasbor.
Klik link Looker Studio untuk membuka dasbor.
Di Looker Studio, klik Edit dan bagikan untuk menyimpan dasbor. Saat diminta untuk menambahkan sumber data ke laporan, klik Tambahkan ke laporan.
Sekarang Anda dapat mengakses dasbor dari halaman beranda Looker Studio.
(Opsional) Konfigurasi kredensial sumber data
Secara default, dasbor Penggunaan penagihan menggunakan kredensial Anda untuk mengakses sumber data BigQuery. Jika Anda ingin membagikan dasbor kepada orang lain, sebaiknya gunakan akun layanan Google Cloud untuk mengautentikasi ke set data BigQuery, sehingga sumber data tidak bergantung pada kredensial Anda.
Jika menggunakan Terraform untuk menyalin dasbor, Anda akan mendapatkan ID akun layanan saat
menjalankan perintah terraform apply
. Jika menggunakan skrip Python, Anda harus membuat akun layanan secara manual, menggunakan langkah-langkah berikut:
Dapatkan alamat email untuk agen layanan Looker Studio dari halaman bantuan agen layanan Looker Studio.
Berikan izin berikut ke akun layanan di project yang memiliki tampilan BigQuery untuk dasbor:
bigquery.dataViewer
bigquery.jobUser
iam.serviceAccountTokenCreator
Jika Anda memiliki ID akun layanan, ikuti langkah-langkah berikut untuk menggunakan akun layanan untuk autentikasi:
Dari halaman beranda Looker Studio, buka dasbor.
Klik Edit untuk mengedit dasbor.
Dari menu Referensi, pilih Kelola sumber data yang ditambahkan. Nama sumber data untuk dasbor dimulai dengan
billing-export-view
.Dari kolom Tindakan untuk sumber data, klik Edit.
Klik Kredensial data.
Di halaman Update data credentials, pilih Service account credentials, lalu masukkan ID akun layanan.
Klik Perbarui untuk menggunakan kredensial akun layanan.
Klik Selesai untuk menyimpan perubahan pada sumber data.
Untuk melihat dasbor, klik Lihat.
Memperbarui dasbor untuk menggunakan label organisasi Anda
Beberapa diagram di dasbor, seperti yang ada di halaman Cost Reporting: Labels
, didasarkan pada label di resource Anda. Untuk melihat perincian biaya yang akurat berdasarkan label tertentu, Anda harus mengubah filter default untuk menggunakan label Anda sendiri.
Dari halaman beranda Looker Studio, buka dasbor.
Klik Edit untuk mengedit dasbor.
Dari menu Aset, pilih Kelola filter.
Tinjau filter yang didasarkan pada
labels.key
danproject.labels.key
, dan jika berlaku, klik Edit untuk mengubah kunci label menjadi kunci yang digunakan organisasi Anda.Misalnya, jika Anda menggunakan kunci label
department
untuk mengatur resource menurut unit bisnis, edit filterbusiness_unit
, dan ubah filterproject.labels.key
menjadidepartment
.Klik Tutup untuk menyelesaikan pengeditan filter.
Menganalisis data di dasbor
Halaman di dasbor Looker Studio mengelompokkan data biaya sehingga Anda dapat melihat ringkasan singkat tentang biaya dan tren, serta mendapatkan informasi mendetail tentang pembelanjaan Anda.
Di sebagian besar halaman, Anda dapat memfilter data menurut project, dan menggunakan kalender untuk memilih periode yang biayanya ingin Anda analisis.
Mendapatkan ringkasan umum biaya
Gunakan halaman Ringkasan untuk melihat ringkasan biaya bersih untuk bulan invoice saat ini dan sebelumnya, biaya untuk layanan teratas Anda, dan biaya harian selama 30 hari terakhir.
Gunakan halaman Tren untuk membandingkan biaya Anda selama berbagai periode, seperti bulan ini dan bulan lalu, atau kuartal ini dan kuartal lalu.
Gunakan halaman Analisis untuk menganalisis biaya Anda dari waktu ke waktu, dan identifikasi anomali seperti pengeluaran yang sangat tinggi atau rendah.
Mengidentifikasi pendorong biaya
Gunakan halaman berikut untuk menemukan tempat Anda membelanjakan paling banyak:
- Biaya menurut layanan menurut bulan
- Biaya berdasarkan project per bulan
- Biaya berdasarkan project, layanan, dan SKU
- Biaya menurut wilayah
Untuk melihat biaya Anda secara mendetail untuk setiap layanan, gunakan halaman khusus layanan. Misalnya, halaman Cluster GKE menampilkan biaya yang diperinci berdasarkan cluster dan namespace GKE Anda.
Identifikasi peluang untuk menghemat dengan diskon abonemen
Diskon abonemen (CUD) memberikan harga diskon sebagai imbalan atas komitmen Anda untuk menggunakan tingkat minimum resource selama jangka waktu tertentu.
Halaman CUD di dasbor menampilkan penggunaan Compute Engine, Cloud SQL, dan Memorystore Anda yang mungkin memenuhi syarat untuk CUD. Jika Anda sudah memiliki satu atau beberapa CUD, halaman ini hanya menampilkan penggunaan yang belum tercakup oleh CUD yang ada.
Melihat biaya untuk software Cloud Marketplace dan lisensi tambahan
Gunakan halaman Marketplace untuk melihat biaya software yang Anda beli dari Cloud Marketplace, seperti Google Cloud NetApp Volumes.
Gunakan halaman Lisensi untuk melihat jumlah yang Anda belanjakan untuk lisensi tambahan, seperti lisensi untuk Windows Server di Compute Engine, dan lisensi pihak ketiga yang telah Anda beli dari Cloud Marketplace.
Melihat biaya berdasarkan label
Anda dapat menyesuaikan filter dasbor untuk menggunakan label organisasi. Setelah memperbarui filter, Anda dapat menggunakan halaman berikut untuk melihat biaya di seluruh project dan folder:
Halaman Menurut aplikasi menampilkan biaya untuk semua resource berdasarkan kunci label
application
. Misalnya, jika Anda memiliki aplikasi web dan seluler, dan memberi label pada resource masing-masing denganapplication:web
danapplication:mobile
, Anda dapat melihat biaya untuk setiap aplikasi secara terpisah.Halaman Label menampilkan biaya Anda untuk label tertentu, seperti pusat biaya dan kode bisnis. Jika menyesuaikan filter untuk dasbor, Anda dapat mengubah judul pada diagram untuk mencerminkan filter Anda.
(Lanjutan) Mengubah data untuk beberapa akun Penagihan Cloud
Jika ingin dasbor menyertakan data dari beberapa akun Penagihan Cloud, Anda dapat mengubah tampilan BigQuery agar menyertakan ekspor data penagihan untuk semua akun Penagihan Cloud.
Sebelum memulai
Untuk setiap akun Penagihan Cloud yang ingin Anda sertakan, ikuti semua langkah dalam prasyarat tutorial.
Memperbarui tampilan BigQuery agar dapat menyertakan ekspor Penagihan Cloud tambahan
Di Konsol Google Cloud, buka halaman BigQuery.
Pilih project yang berisi set data yang Anda buat untuk dasbor.
Di panel Explorer, luaskan project Anda, lalu luaskan set data.
Klik tampilan billboard untuk melihat detailnya. Tampilan ini mengkueri ekspor data penggunaan dan biaya Standar.
Klik tab Detail, lalu klik Edit Kueri. Kueri untuk tampilan terlihat mirip dengan berikut ini:
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)
Dengan PROJECT_ID adalah project yang berisi ekspor data biaya Standar BigQuery untuk Penagihan Cloud, dan BILLING_ACCOUNT_EXPORT adalah nama tabel BigQuery dengan data biaya Standar Anda.
Buat duplikat kueri yang ada, dan di klausa
FROM
, ganti project ID dan tabel BigQuery dengan informasi untuk akun Penagihan Cloud tambahan.Tambahkan operator
UNION ALL
di antara dua kueri untuk menggabungkan data. Kueri akhir Anda terlihat seperti contoh berikut, yang menggabungkan ekspor data untuk BILLING_ACCOUNT_1 dan BILLING_ACCOUNT_2, yang ada di PROJECT_ID_1 dan PROJECT_ID_2 masing-masing.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)
Ulangi langkah-langkah ini untuk tampilan billboard_detail yang mengkueri Data biaya dan penggunaan mendetail.
Jika salah satu akun Anda menggunakan mata uang yang berbeda dengan USD, ulangi langkah-langkah ini, dan gunakan kolom
currency_conversion_rate
untuk mengonversi ke USD, seperti contoh berikut: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)
Pembersihan
Terraform
Jika Anda tidak ingin menggunakan dasbor lagi, buka direktori kerja Terraform
lagi, dan gunakan perintah terraform apply
untuk menghapus resource
yang Anda buat.
Buka direktori kerja Terraform Anda di Cloud Shell. Jika Anda menggunakan repositori GitHub dalam tutorial ini, gunakan link berikut untuk membuka repositori:
Secara opsional, untuk melihat pratinjau resource yang dihapus, jalankan perintah
terraform plan
berikut:terraform plan -destroy
Tinjau perubahan Terraform. Jika Anda siap menghapus resource, jalankan perintah
terraform apply
berikut:terraform apply -destroy
Python
Jika Anda tidak ingin menggunakan dasbor lagi, clone repositori GitHub dan jalankan skrip dasbor dengan opsi -clean
. Skrip ini menghapus
tampilan BigQuery, tetapi membiarkan set data BigQuery Export
tetap utuh.
Buka repositori GitHub di Cloud Shell:
Buka direktori
billboard
:cd examples/billboard
Jalankan perintah berikut untuk menyiapkan lingkungan Python untuk skrip:
pip install virtualenv virtualenv bill-env source bill-env/bin/activate pip install -r requirements.txt
Jalankan perintah pembersihan:
python billboard.py \ -pr 'PROJECT_ID' \ -se 'STANDARD_BILLING_EXPORT_DATASET' \ -de 'DETAILED_BILLING_EXPORT_DATASET' \ -bb 'BILLBOARD_DATASET' \ -clean yes
Dengan variabel sebagai berikut:
- PROJECT_ID: Project ID yang menghosting set data Penagihan Cloud Anda.
- STANDARD_BILLING_EXPORT_DATASET: Set data BigQuery yang berisi ekspor data biaya penggunaan Standar.
- DETAILED_BILLING_EXPORT_DATASET: Set data BigQuery yang berisi ekspor data Biaya penggunaan yang Terperinci.
- BILLBOARD_DATASET: Set data BigQuery tempat Anda membuat tampilan BigQuery untuk dasbor.
Untuk menghapus dasbor Looker Studio, buka Looker Studio, cari dasbor, lalu dari menu , klik Hapus.
Langkah selanjutnya
Baca cara menerapkan FinOps di Google Cloud, dan praktik terbaik untuk memantau biaya.