Ringkasan project kuota

Halaman ini menjelaskan project kuota dan cara project kuota ditentukan. Pastikan project kuota Anda ditetapkan dengan benar untuk membantu menghindari error dan permintaan yang gagal ke Cloud API.

Anda harus menentukan project kuota karena setiap permintaan ke Google Cloud API dihitung berdasarkan kuota dan karena kuota diberlakukan berdasarkan project. Untuk mengetahui informasi selengkapnya, lihat Cara menetapkan project kuota .

Catatan untuk pengguna gcloud CLI: project kuota terkadang disebut sebagai project penagihan. Hal ini karena tanda billing_project lebih diutamakan daripada properti billing/quota_project dalam konfigurasi gcloud CLI Anda.

Cara project kuota ditentukan

Cara project kuota ditentukan bergantung pada jenis metode API yang Anda gunakan: API berbasis resource atau API berbasis klien. Dalam kasus yang jarang terjadi, layanan mungkin memiliki kedua jenis metode API.

API berbasis resource

Untuk Cloud API berbasis resource, project yang menyediakan kuota untuk panggilan API juga merupakan project yang berisi resource yang sedang diakses. Misalnya, saat membuat instance Compute Engine, Anda harus menentukan project untuk instance baru tersebut. Selanjutnya, project berisi instance yang baru dibuat. Kemudian, jika Anda menjalankan operasi pada instance Compute Engine, project yang berisi instance tersebut akan menyediakan kuota untuk permintaan tersebut. Hal ini berlaku terlepas dari apakah Anda menggunakan Google Cloud CLI, REST API, atau library klien.

Anda tidak dapat mengubah project kuota yang digunakan oleh permintaan ke API berbasis resource. Permintaan ini selalu menggunakan project yang berisi resource tempat permintaan tersebut beroperasi.

API berbasis klien

Jika API bukan API berbasis resource, berarti API tersebut adalah API berbasis klien. Misalnya, Cloud Translation API adalah API berbasis klien yang umum digunakan.

Permintaan dapat gagal jika Anda membuat permintaan ke API berbasis klien dan project kuota tidak dapat diidentifikasi. Project kuota dapat ditetapkan dengan beberapa cara dan diverifikasi dengan memeriksa opsi berikut. Item tersebut muncul dalam urutan prioritas:

  • Ditentukan dalam permintaan: Project kuota yang ditentukan dalam permintaan. (Saat menggunakan library klien, Anda juga dapat menggunakan variabel lingkungan dalam permintaan Anda.)

  • Kunci API: Jika Anda menggunakan kunci API untuk memberikan kredensial bagi permintaan, project yang terkait dengan kunci API akan digunakan sebagai project kuota.

  • Kredensial Google Cloud CLI: Jika Anda menggunakan gcloud CLI untuk mendapatkan token akses, dan Anda telah melakukan autentikasi ke gcloud CLI dengan kredensial pengguna, project bersama gcloud CLI terkadang digunakan sebagai project kuota. Namun, tidak semua API berbasis klien kembali ke project bersama.

  • Akun layanan: Jika akun utama untuk panggilan API adalah akun layanan, termasuk dengan peniruan identitas, project yang terkait dengan akun layanan tersebut akan digunakan sebagai project kuota.

  • Workforce identity federation: Jika pokok untuk API adalah pengguna workforce identity federation, project pengguna kumpulan tenaga kerja akan digunakan sebagai project kuota.

Jika tidak ada satu pun pemeriksaan sebelumnya yang menghasilkan project kuota, permintaan akan gagal.

Tentang project bersama gcloud CLI untuk API berbasis klien

Jika Anda menggunakan gcloud CLI untuk membuat permintaan ke API berbasis klien tanpa menetapkan project kuota, permintaan tersebut mungkin akan kembali ke project bersama gcloud CLI, atau permintaan mungkin akan gagal. Project bersama gcloud CLI digunakan oleh semua permintaan gcloud CLI di semua project. Jadi, jika banyak permintaan gcloud CLI lainnya yang juga menggunakan project ini sebagai project kuota mereka, kuota untuk project bersama mungkin akan habis untuk sementara. Jika hal ini terjadi, permintaan Anda akan gagal dengan pesan error kehabisan kuota.

Identifikasi project kuota saat ini untuk API berbasis klien

Metode untuk mengidentifikasi project kuota bergantung pada cara project Anda dikonfigurasi:

  • Jika metode API dikonfigurasi untuk menggunakan API berbasis resource, project klien menggunakan project resource sebagai project kuota.

  • Jika penggantian project pengguna diterapkan, gunakan perintah gcloud [command] --log-http untuk mencetak log dan memeriksa project kuota yang muncul di kolom x-goog-user-project.

  • Jika kunci API digunakan untuk autentikasi, gunakan perintah gcloud [command] --log-http untuk mencetak log dan memeriksa project kuota yang muncul di kolom x-goog-api-key.

Untuk konfigurasi lainnya, project kuota tidak muncul di header HTTP.

Menentukan apakah API berbasis resource atau berbasis klien

Anda mungkin mengalami kesulitan dalam menentukan jenis API yang Anda gunakan Namun, aktivasi dan kuota diberlakukan dengan cara yang sama. Misalnya, jika akun layanan dari project A memanggil metode baca di project B, dan tidak ada project yang mengaktifkan API, pesan error API not enabled akan menunjukkan project mana yang diperiksa aktivasinya. Project yang diperiksa aktivasinya adalah project yang sama dengan project yang diperiksa kuota kapasitasnya.

Langkah berikutnya