Memantau dan mengontrol biaya

Last reviewed 2023-09-08 UTC

Dokumen dalam Framework Arsitektur Google Cloud ini menjelaskan praktik terbaik, alat, dan teknik untuk membantu Anda melacak dan mengontrol biaya resource di Google Cloud.

Panduan di bagian ini ditujukan bagi pengguna yang menyediakan atau mengelola resource di cloud.

Area fokus pengelolaan biaya

Biaya resource Anda di Google Cloud bergantung pada jumlah resource yang Anda gunakan serta tarif yang ditagih untuk resource.

Untuk mengelola biaya resource cloud, sebaiknya Anda berfokus pada area berikut:

  • Visibilitas biaya
  • Pengoptimalan resource
  • Pengoptimalan tarif

Visibilitas biaya

Lacak jumlah pembelanjaan Anda dan bagaimana resource serta layanan Anda ditagih, sehingga Anda dapat menganalisis pengaruh biaya pada hasil bisnis. Sebaiknya Anda mengikuti model operasi FinOps, yang menyarankan tindakan berikut agar informasi biaya terlihat di seluruh organisasi Anda:

  • Alokasi: Menetapkan pemilik untuk setiap item biaya.
  • Laporan: Membuat data biaya tersedia, dapat digunakan, dan dapat ditindaklanjuti.
  • Perkiraan: Memperkirakan dan melacak pembelanjaan berikutnya.

Pengoptimalan resource

Sesuaikan jumlah dan ukuran resource cloud Anda dengan persyaratan beban workload. Jika memungkinkan, pertimbangkan untuk menggunakan layanan terkelola atau mendesain ulang aplikasi Anda. Biasanya, tim engineering individu memiliki lebih banyak konteks daripada tim FinOps pusat (operasi keuangan) terkait peluang dan teknik untuk mengoptimalkan deployment resource. Sebaiknya tim FinOps bekerja sama dengan setiap tim engineering untuk mengidentifikasi peluang pengoptimalan resource yang dapat diterapkan di seluruh organisasi.

Pengoptimalan tarif

Tim FinOps sering membuat keputusan pengoptimalan tarif secara terpusat. Sebaiknya, setiap tim engineering bekerja sama dengan tim FinOps pusat untuk memanfaatkan diskon besar-besaran untuk reservasi, penggunaan sesuai komitmen, Spot VM, harga tetap, serta diskon volume dan kontrak.

Rekomendasi desain

Bagian ini menyarankan pendekatan yang dapat Anda gunakan untuk memantau dan mengontrol biaya.

Penagihan gabungan dan pengelolaan resource

Untuk mengelola penagihan dan resource di Google Cloud secara efisien, sebaiknya gunakan satu akun penagihan untuk organisasi Anda, serta gunakan mekanisme penagihan balik internal untuk mengalokasikan biaya. Gunakan beberapa akun penagihan untuk organisasi dan perusahaan yang berstruktur longgar dengan entitas yang tidak saling memengaruhi. Misalnya, reseller mungkin memerlukan akun berbeda untuk setiap pelanggan. Menggunakan akun penagihan terpisah juga dapat membantu Anda memenuhi peraturan pajak spesifik per negara.

Praktik terbaik lainnya yang direkomendasikan adalah memindahkan semua project yang Anda kelola ke dalam organisasi Anda. Sebaiknya gunakan Resource Manager untuk membuat hierarki resource yang membantu Anda mencapai sasaran berikut:

  • Buat hierarki kepemilikan resource berdasarkan hubungan setiap resource dengan induk langsungnya.
  • Kontrol cara kebijakan akses dan tag atau label alokasi biaya dilampirkan dan diwarisi oleh resource di organisasi Anda.

Selain itu, sebaiknya alokasikan biaya layanan bersama secara proporsional berdasarkan konsumsi. Tinjau dan sesuaikan parameter alokasi biaya secara berkala berdasarkan perubahan sasaran dan prioritas bisnis Anda.

Lacak atau alokasikan biaya menggunakan tag atau label

Tag dan label adalah dua metode berbeda yang dapat Anda gunakan untuk menganotasi resource Google Cloud. Tag memberikan lebih banyak kemampuan daripada label. Misalnya, Anda dapat mengimplementasikan kontrol terperinci atas resource dengan membuat kebijakan Identity and Access Management (IAM) yang kondisional berdasarkan apakah tag dilampirkan ke resource yang didukung. Selain itu, tag yang terkait dengan resource diwarisi oleh semua resource turunan dalam hierarki. Untuk informasi selengkapnya tentang perbedaan antara tag dan label, lihat Ringkasan tag.

Jika Anda membuat framework baru untuk alokasi dan pelacakan biaya, sebaiknya gunakan tag.

Untuk mengategorikan data biaya pada tingkat perincian yang diperlukan, tetapkan skema pemberian tag atau pelabelan yang sesuai dengan mekanisme penagihan balik organisasi Anda dan membantu Anda mengalokasikan biaya dengan tepat. Anda dapat menentukan tag di level organisasi atau project. Anda dapat menetapkan label di level project, dan menentukan sekumpulan label yang dapat diterapkan secara default ke semua project.

Tentukan proses untuk mendeteksi dan memperbaiki anomali pemberian tag dan pelabelan serta project tidak berlabel. Misalnya, dari Inventaris Aset Cloud, Anda dapat mendownload inventaris (file .csv) yang berisi semua resource dalam sebuah project dan menganalisis inventaris tersebut untuk mengidentifikasi resource yang tidak diberi tag atau label apa pun.

Untuk memantau biaya resource dan layanan bersama (misalnya, datastore umum, cluster multi-tenant, dan langganan dukungan), pertimbangkan untuk menggunakan tag atau label khusus untuk mengidentifikasi project yang berisi resource bersama.

Mengonfigurasi kontrol akses penagihan

Untuk mengontrol akses ke Penagihan Cloud, sebaiknya Anda menetapkan peran Billing Account Administrator hanya kepada pengguna yang mengelola informasi kontak penagihan. Misalnya, karyawan di bidang keuangan, akuntansi, dan operasi mungkin memerlukan peran ini.

Untuk menghindari titik tunggal kegagalan untuk dukungan penagihan, tetapkan peran Billing Account Administrator ke beberapa pengguna atau ke grup. Hanya pengguna dengan peran Billing Account Administrator yang dapat menghubungi dukungan. Untuk panduan mendetail, lihat Contoh kontrol akses Penagihan Cloud dan Peran Penting.

Buat konfigurasi berikut untuk mengelola akses ke penagihan:

  • Untuk mengaitkan akun penagihan dengan project, anggota memerlukan peran Billing Account User di akun penagihan dan peran Project Billing Manager di project tersebut.
  • Agar tim dapat mengaitkan akun penagihan dengan project secara manual, Anda dapat menetapkan peran Project Billing Manager di tingkat organisasi dan peran Billing Account User di akun penagihan. Anda dapat mengotomatiskan pengaitan akun penagihan selama pembuatan project dengan menetapkan peran Project Billing Manager dan Billing Account User ke akun layanan. Sebaiknya batasi peran Billing Account Creator atau hapus semua penetapan peran ini.
  • Untuk mencegah pemadaman layanan yang disebabkan oleh perubahan yang tidak disengaja pada status penagihan project, Anda dapat mengunci penautan antara project dan akun penagihannya. Untuk informasi selengkapnya, lihat Mengamankan link antara project dan akun penagihannya.

Mengonfigurasi laporan penagihan

Siapkan laporan penagihan untuk menyediakan data bagi metrik utama yang perlu Anda lacak. Sebaiknya Anda melacak metrik berikut:

  • Tren biaya
  • Konsumen terbesar (menurut project dan produk)
  • Area pengeluaran yang tidak teratur
  • Insight utama dari seluruh organisasi sebagai berikut:
    • Deteksi anomali
    • Tren dari waktu ke waktu
    • Tren yang terjadi dalam pola yang ditetapkan (misalnya, bulan ke bulan)
    • Perbandingan biaya dan analisis tolok ukur antara workload internal dan eksternal
    • Pelacakan kasus bisnis dan realisasi nilai (misalnya, biaya cloud dibandingkan dengan biaya resource lokal yang serupa)
    • Memvalidasi yang ditagih Google Cloud sesuai harapan dan akurat

Sesuaikan dan analisis laporan biaya menggunakan Ekspor Penagihan BigQuery dan visualisasikan data biaya menggunakan Looker Studio. Nilai tren biaya sebenarnya dan jumlah yang mungkin Anda keluarkan dengan menggunakan alat perkiraan.

Mengoptimalkan penggunaan dan biaya resource

Bagian ini merekomendasikan praktik terbaik untuk membantu Anda mengoptimalkan penggunaan dan biaya resource di seluruh layanan Google Cloud.

Untuk mencegah pengeluaran berlebih, pertimbangkan untuk mengonfigurasi anggaran dan pemberitahuan default dengan batas tinggi untuk semua project Anda. Agar tetap sesuai dengan anggaran, sebaiknya Anda melakukan hal berikut:

  • Konfigurasikan anggaran dan pemberitahuan untuk project yang memerlukan batas penggunaan absolut (misalnya, project pelatihan atau sandbox).

  • Tentukan anggaran berdasarkan anggaran keuangan yang perlu Anda lacak. Misalnya, jika suatu departemen memiliki anggaran cloud secara keseluruhan, tetapkan cakupan anggaran Google Cloud untuk menyertakan project tertentu yang perlu Anda lacak.

  • Untuk memastikan anggaran dipertahankan, delegasikan tanggung jawab untuk mengonfigurasi anggaran dan pemberitahuan kepada tim yang memiliki workload.

Untuk membantu mengoptimalkan biaya, sebaiknya Anda juga melakukan hal berikut:

  • Batasi penggunaan API jika memiliki dampak bisnis minimal atau tidak berdampak sama sekali. Pembatasan dapat berguna untuk project pelatihan atau sandbox dan untuk project dengan anggaran tetap (misalnya, analisis ad-hoc di BigQuery). Pembatasan tidak menghapus semua resource dan data dari project terkait.
  • Gunakan quotas untuk menetapkan batas ketat yang membatasi deployment resource. Kuota membantu Anda mengontrol biaya dan mencegah penggunaan yang berbahaya atau penyalahgunaan resource. Kuota diterapkan di level project, per jenis resource dan lokasi.
  • Lihat dan terapkan rekomendasi pengoptimalan biaya di Hub Rekomendasi.
  • Beli diskon abonemen (CUD) guna menghemat biaya resource untuk workload dengan kebutuhan resource yang dapat diprediksi.

Alat dan teknik

Karakteristik penyediaan on demand dan bayar per penggunaan cloud membantu Anda mengoptimalkan pembelanjaan IT Anda. Bagian ini menjelaskan alat yang disediakan oleh Google Cloud dan teknik yang dapat Anda gunakan untuk melacak dan mengontrol biaya resource di cloud. Sebelum Anda menggunakan alat dan teknik ini, tinjau konsep dasar Penagihan Cloud.

Laporan penagihan

Google Cloud menyediakan laporan penagihan dalam Konsol Google Cloud untuk membantu Anda melihat pengeluaran saat ini dan yang diperkirakan. Dengan laporan penagihan, Anda dapat melihat data biaya di satu halaman, menemukan dan menganalisis tren, memperkirakan biaya akhir periode, serta mengambil tindakan korektif jika diperlukan.

Laporan penagihan menyediakan data berikut:

  • Biaya dan tren biaya untuk periode tertentu, disusun sebagai berikut:
    • Menurut akun penagihan
    • Menurut project
    • Menurut produk (misalnya, Compute Engine)
    • Menurut SKU (misalnya, alamat IP statis)
  • Potensi biaya jika diskon atau kredit promo dikecualikan
  • Perkiraan pembelanjaan

Ekspor data ke BigQuery

Anda dapat mengekspor laporan penagihan ke BigQuery, dan menganalisis biaya menggunakan tampilan data historis dan terperinci, termasuk data yang dikategorikan menggunakan label. Anda dapat melakukan analisis yang lebih canggih menggunakan BigQuery ML. Sebaiknya aktifkan ekspor laporan penagihan ke BigQuery saat Anda membuat akun Penagihan Cloud. Set data BigQuery Anda berisi data penagihan dari tanggal Anda menyiapkan ekspor Penagihan Cloud. Set data tidak mencakup data untuk periode sebelum Anda mengaktifkan ekspor.

Untuk memvisualisasikan data biaya, Anda dapat membuat dasbor kustom yang terintegrasi dengan BigQuery (contoh template: Looker, Looker Studio).

Anda dapat menggunakan tag dan label sebagai kriteria untuk memfilter data penagihan yang diekspor. Jumlah label yang disertakan dalam ekspor penagihan dibatasi. Hingga 1.000 peta label dalam jangka waktu satu jam akan dipertahankan. Label tidak akan muncul di invoice PDF atau CSV. Pertimbangkan untuk membuat anotasi resource menggunakan tag atau label yang menunjukkan unit bisnis, unit penagihan balik internal, dan metadata lain yang relevan.

Kontrol akses penagihan

Anda dapat mengontrol akses ke Penagihan Cloud untuk resource tertentu dengan menentukan kebijakan Identity and Access Management (IAM) untuk resource tersebut. Untuk memberikan atau membatasi akses ke Penagihan Cloud, Anda dapat menetapkan kebijakan IAM di level organisasi, level akun penagihan, atau level project.

Kontrol akses untuk penagihan dan pengelolaan resource mengikuti prinsip pemisahan tugas. Setiap pengguna hanya memiliki izin yang diperlukan untuk peran bisnisnya. Peran Administrator Organisasi dan Administrator Penagihan tidak memiliki izin yang sama.

Anda dapat menetapkan izin terkait penagihan di tingkat akun penagihan dan tingkat organisasi. Peran yang umum adalah Billing Account Administrator, Billing Account User, dan Billing Account Viewer.

Sebaiknya gunakan penagihan dengan invoice, atau konfigurasikan metode pembayaran cadangan. Pertahankan setelan kontak dan notifikasi untuk penagihan dan pembayaran.

Anggaran, pemberitahuan, dan kuota

Anggaran membantu Anda melacak biaya Google Cloud sebenarnya terhadap pembelanjaan yang direncanakan. Saat membuat anggaran, Anda dapat mengonfigurasi aturan pemberitahuan untuk memicu notifikasi email saat pengeluaran aktual atau yang diperkirakan melebihi batas yang ditentukan. Anda juga dapat menggunakan anggaran untuk mengotomatiskan respons pengendalian biaya.

Anggaran dapat memicu pemberitahuan untuk memberi tahu Anda tentang penggunaan resource dan tren biaya, serta meminta Anda untuk mengambil tindakan pengoptimalan biaya. Namun, anggaran tidak akan mencegah penggunaan atau penagihan layanan Anda jika biaya sebenarnya mencapai atau melebihi anggaran atau nilai minimum. Untuk mengontrol biaya secara otomatis, Anda dapat menggunakan notifikasi anggaran guna menonaktifkan Penagihan Cloud secara terprogram untuk sebuah project. Anda juga dapat membatasi penggunaan API untuk menghentikan tagihan setelah batas penggunaan yang ditentukan.

Anda dapat mengonfigurasi pemberitahuan untuk akun penagihan dan project. Konfigurasi setidaknya satu anggaran untuk satu akun.

Untuk mencegah penyediaan resource di luar level yang ditentukan atau untuk membatasi volume operasi tertentu, Anda dapat menetapkan quotas pada resource atau level API. Berikut adalah contoh cara menggunakan kuota:

  • Mengontrol jumlah panggilan API per detik.
  • Batasi jumlah VM yang dibuat.
  • Batasi jumlah data yang dikueri per hari di BigQuery.

Pemilik project dapat mengurangi jumlah kuota yang dapat ditagihkan terhadap batas kuota, dengan menggunakan Service Usage API untuk menerapkan penggantian konsumen ke batas kuota tertentu. Untuk informasi selengkapnya, lihat Membuat penggantian kuota konsumen.

Peningkatan efisiensi workload

Kami merekomendasikan strategi berikut untuk membantu membuat workload Anda di Google Cloud hemat biaya:

  • Optimalkan penggunaan resource dengan meningkatkan efisiensi produk.
  • Mengurangi tingkat yang ditagih untuk resource.
  • Mengontrol dan membatasi penggunaan dan pengeluaran resource.

Saat memilih teknik pengurangan biaya dan fitur Google Cloud, pertimbangkan upaya yang diperlukan dan penghematan yang diharapkan, seperti yang ditunjukkan pada grafik berikut:

Strategi pengoptimalan biaya: peta upaya penghematan

Berikut adalah ringkasan teknik yang ditampilkan dalam grafik sebelumnya:

  • Teknik berikut berpotensi menghasilkan penghematan yang tinggi dengan sedikit upaya:
    • Diskon abonemen
    • Penskalaan otomatis
    • Slot BigQuery
  • Teknik berikut berpotensi menghasilkan penghematan yang tinggi dengan upaya tingkat menengah hingga tinggi:
    • Spot VM
    • Merancang ulang sebagai aplikasi serverless atau dalam container
    • Peralihan ke platform baru untuk menggunakan layanan terkelola
  • Teknik berikut berpotensi menghasilkan penghematan sedang dengan upaya sedang:
    • Jenis mesin kustom
    • Pengelolaan siklus proses Cloud Storage
    • Penyesuaian ukuran
    • Mengklaim kembali resource nonaktif

Teknik yang dijelaskan di bagian berikut dapat membantu Anda meningkatkan efisiensi workload.

Pemfaktoran ulang atau perancangan ulang

Anda dapat menghemat biaya yang signifikan dengan memfaktorkan ulang atau merancang ulang workload Anda untuk menggunakan produk Google Cloud. Misalnya, beralih ke layanan serverless (seperti Cloud Storage, Cloud Run, BigQuery, dan Cloud Functions) yang mendukung penskalaan hingga nol dapat membantu meningkatkan efisiensi. Untuk menghitung dan membandingkan biaya produk tersebut, Anda dapat menggunakan kalkulator harga.

Penyesuaian ukuran

Teknik ini membantu Anda memastikan bahwa skala infrastruktur sesuai dengan penggunaan yang dimaksudkan. Strategi ini relevan terutama untuk solusi infrastructure-as-a-service (IaaS), di mana Anda membayar untuk infrastruktur yang mendasarinya. Misalnya, Anda telah men-deploy 50 VM, tetapi VM tersebut tidak sepenuhnya digunakan, dan Anda memutuskan bahwa workload dapat berjalan secara efektif pada lebih sedikit VM (atau lebih kecil). Dalam hal ini, Anda dapat menghapus atau mengubah ukuran beberapa VM. Google Cloud memberikan rekomendasi penyesuaian guna membantu Anda mendeteksi peluang untuk menghemat uang tanpa memengaruhi performa dengan menyediakan VM yang lebih kecil. Penyesuaian ukuran memerlukan lebih sedikit upaya jika dilakukan selama fase desain dibandingkan setelah men-deploy resource ke produksi.

Penskalaan otomatis

Jika produk yang Anda gunakan mendukung penskalaan otomatis dinamis, pertimbangkan untuk merancang workload guna memanfaatkan penskalaan otomatis untuk mendapatkan manfaat dari segi biaya dan performa. Misalnya, untuk workload yang membutuhkan komputasi intensif, Anda dapat menggunakan grup instance terkelola di Compute Engine atau memasukkan aplikasi dalam container dan men-deploy-nya ke cluster Google Kubernetes Engine.

Rekomendasi Active Assist

Active Assist menggunakan data, kecerdasan, dan machine learning untuk mengurangi kompleksitas cloud dan upaya administratif. Active Assist memudahkan pengoptimalan keamanan, performa, dan biaya topologi cloud Anda. Solusi ini memberikan rekomendasi cerdas untuk mengoptimalkan biaya dan penggunaan Anda. Anda dapat menerapkan rekomendasi ini agar dapat langsung menghemat biaya dan meningkatkan efisiensi.

Berikut adalah contoh rekomendasi yang diberikan oleh Active Assist:

  • Penyesuaian ukuran resource Compute Engine: Ubah ukuran instance VM Anda untuk mengoptimalkan biaya dan performa berdasarkan penggunaan. Identifikasi dan hapus atau cadangkan VM nonaktif dan persistent disk untuk mengoptimalkan biaya infrastruktur Anda.
  • Diskon abonemen (CUD): Google Cloud menganalisis penggunaan historis, menemukan jumlah komitmen yang optimal untuk workload Anda, dan memberikan rekomendasi yang mudah dipahami dan dapat ditindaklanjuti untuk menghemat biaya. Untuk informasi selengkapnya, lihat Pemberi rekomendasi diskon abonemen.
  • Project tanpa pengawasan: Temukan project tanpa pengawasan di organisasi Anda, lalu hapus atau klaim kembali project tersebut. Untuk informasi selengkapnya, lihat Pemberi rekomendasi project tanpa pengawasan.

Untuk mengetahui daftar lengkapnya, lihat Pemberi rekomendasi.

Langkah selanjutnya