Endpoint lokasi

Halaman ini menjelaskan endpoint lokasi Bigtable, menjelaskan hal yang harus Anda pertimbangkan sebelum menggunakannya, dan menunjukkan cara menetapkan endpoint menggunakan Google Cloud CLI.

Anda dapat menggunakan endpoint layanan global atau lokasi untuk mengirim permintaan ke Bigtable. Endpoint lokasi untuk Bigtable memastikan bahwa data instance disimpan dan diproses di region Bigtable tempat data berada. Anda mungkin perlu menggunakan endpoint lokasi untuk Bigtable di region geografis tertentu guna mendukung kebutuhan keamanan dan kepatuhan project Anda.

Sebelum membaca dokumen ini, Anda harus sudah memahami Instance, cluster, dan node, serta Profil aplikasi.

Konsep utama mencakup:

  • Endpoint layanan: Endpoint layanan adalah URL dasar yang menentukan alamat jaringan layanan API. Bigtable memiliki endpoint global dan lokasi.

  • Endpoint global: Endpoint global memungkinkan Bigtable menyimpan dan merutekan data dalam instance Bigtable ke region mana pun yang berisi salah satu cluster instance. Endpoint global untuk Cloud Bigtable API (Data API) adalah bigtable.googleapis.com. Endpoint Data API default mengakses endpoint global.

  • Endpoint umum Endpoint lokasi menerapkan pembatasan lokasi, yang memastikan bahwa data disimpan dan diproses di region yang ditentukan.

Anda hanya dapat menggunakan endpoint lokasi dengan Cloud Bigtable API (Data API). Endpoint lokasi tidak didukung untuk Cloud Bigtable Admin API.

Kapan endpoint lokasi digunakan

Manfaat menggunakan endpoint lokasi Bigtable melalui endpoint global adalah bahwa endpoint lokasi menyediakan isolasi dan perlindungan lokasi untuk memenuhi persyaratan keamanan, kepatuhan, dan peraturan.

Gunakan endpoint lokasi jika lokasi data Anda harus dibatasi dan dikontrol untuk mematuhi persyaratan peraturan.

Gunakan endpoint global jika Anda tidak memiliki persyaratan pembatasan lokasi yang ketat.

Pertimbangan saat menggunakan endpoint lokasi

Lokasi cluster

Sebelum dapat menggunakan endpoint lokasi, Anda harus membuat instance dengan minimal satu cluster di region tempat Anda ingin mengisolasi data. Endpoint lokasi Bigtable tersedia di semua lokasi Bigtable.

Anda hanya dapat menggunakan endpoint lokasi yang termasuk dalam region tempat Anda ingin mengisolasi data. Misalnya, Anda tidak dapat menggunakan us-west1-bigtable.googleapis.com untuk melayani permintaan jika cluster yang Anda akses berada di region us-central1.

Jika Anda mencoba menggunakan endpoint lokasi untuk mengakses cluster di region yang berbeda, permintaan akan ditolak dengan error FAILED_PRECONDITION dengan pesan yang menyatakan bahwa tidak ada cluster yang dapat diakses menggunakan cluster dan endpoint yang ditentukan. Misalnya, permintaan yang dikirim ke us-west1-bigtable.googleapis.com untuk cluster di us-central1 gagal dengan FAILED_PRECONDITION. Untuk mengetahui informasi selengkapnya tentang FAILED_PRECONDITION, lihat Kode status Bigtable.

Profil aplikasi

Setelah menetapkan endpoint lokasi, Anda harus menggunakan profil aplikasi yang dikonfigurasi untuk mengarahkan permintaan ke cluster di region endpoint.

Jika Anda mencoba menggunakan profil aplikasi yang dikonfigurasi untuk mengirim operasi tulis hanya ke cluster (menggunakan perutean cluster tunggal) atau cluster di region yang berbeda dengan endpoint (menggunakan perutean multi-cluster), Anda akan menerima pesan error prakondisi yang gagal There are no clusters accessible through this app profile and the REGION_NAME endpoint. Untuk mengetahui informasi selengkapnya tentang perutean cluster, lihat Kebijakan pemilihan rute.

Jika Anda menggunakan profil aplikasi yang dikonfigurasi untuk merutekan ke cluster apa pun pada instance untuk ketersediaan tinggi (HA), dan Anda juga menggunakan endpoint lokasi, endpoint lokasi memastikan bahwa semua permintaan hanya dirutekan ke cluster di region-nya, meskipun instance memiliki cluster di region lain. Failover otomatis dibatasi, sehingga permintaan hanya disalurkan dari cluster di region endpoint.

Pertimbangkan contoh saat Anda mengirim permintaan menggunakan profil aplikasi yang dikonfigurasi untuk perutean multi-cluster ke instance yang memiliki cluster di us-west1-a (Oregon), us-west1-b (Oregon), dan us-central1-a (Iowa). Jika Anda mengirim permintaan ini ke endpoint lokasi us-central1-bigtable.googleapis.com, semua permintaan akan dilayani oleh us-central1-a meskipun Anda tidak mengonfigurasi ulang profil aplikasi. Permintaan yang tidak dapat dilayani oleh us-central1-a gagal.

Replikasi

Endpoint lokasi tidak memengaruhi atau mencegah replikasi. Jika Anda mengonfigurasi endpoint lokasi di Region A, lalu menambahkan cluster ke instance di Region B, data Anda akan direplikasi ke Region B seperti halnya jika Anda menggunakan endpoint global.

Untuk menghindari mereplikasi data ke region lain, buat cluster hanya di region yang diinginkan.

Untuk mencegah pengguna di organisasi menambahkan cluster di luar region endpoint, Anda dapat menetapkan kebijakan organisasi yang menggunakan batasan lokasi. Untuk mempelajari lebih lanjut, lihat Membatasi lokasi resource.

Ketersediaan

Saat menggunakan endpoint lokasi, Anda tidak dapat mengonfigurasi Bigtable untuk mencapai persentase waktu beroperasi bulanan sebesar >=99,999%. Waktu beroperasi bulanan >=99,999% memerlukan failover otomatis permintaan melalui batas lokasi, yang dicegah oleh endpoint lokasi karena endpoint membatasi semua permintaan ke satu region. Untuk mengetahui informasi selengkapnya tentang persentase waktu beroperasi bulanan, lihat Perjanjian tingkat layanan (SLA) Bigtable.

Semantik endpoint lokasi

Segmen pertama dari nama endpoint lokasi Bigtable adalah nama region Google Cloud. Endpoint lokasi mengikuti format REGION-bigtable.googleapis.com, dengan REGION adalah nama region, seperti northamerica-northeast2.

Misalnya, jika Anda ingin mengisolasi data di region Iowa, karena nama region untuk Iowa adalah us-central1, URL endpoint lokasi untuk region Iowa adalah us-central1-bigtable.googleapis.com. Untuk mengetahui daftar region yang tersedia, lihat lokasi Bigtable.

Menentukan endpoint lokasi

Anda dapat menentukan endpoint lokasi Bigtable menggunakan Google Cloud CLI, cbt CLI, atau library klien Cloud Bigtable.

gcloud

Untuk menentukan endpoint lokasi dan mengganti endpoint global menggunakan gcloud CLI, jalankan perintah berikut:

gcloud config set api_endpoint_overrides/bigtable https://REGION-bigtable.googleapis.com/

Ganti REGION dengan region tempat Anda ingin menetapkan endpoint lokasi, seperti us-central1 atau europe-west1.

Misalnya, untuk mengonfigurasi endpoint lokasi sebagai us-central1, jalankan perintah berikut:

gcloud config set api_endpoint_overrides/bigtable https://us-central1-bigtable.googleapis.com/

cbt

Untuk menentukan endpoint lokasi dan mengganti endpoint global menggunakan CLI cbt, Anda dapat menggunakan opsi --data-endpoint dalam permintaan, atau menambahkan berikut ini ke file ~/.cbtrc. Untuk informasi tambahan mengenai cara membuat file ~/.cbtrc, lihat referensi CLI cbt.

data-endpoint = https://REGION-bigtable.googleapis.com/

Ganti REGION dengan region tempat Anda ingin menetapkan endpoint lokasi, seperti us-central1 atau europe-west1.

Misalnya, untuk mengonfigurasi endpoint lokasi sebagai us-central1, tambahkan ini ke file ~/.cbtrc:

data-endpoint = https://us-central1-bigtable.googleapis.com/

Menentukan endpoint global

gcloud

Untuk mengonfigurasi ulang endpoint lokasi ke endpoint global, jalankan perintah ini:

gcloud config unset api_endpoint_overrides/bigtable

cbt

Untuk menentukan sendpoint global, kirim permintaan Anda tanpa menggunakan opsi --data-endpoint. Jika sebelumnya Anda telah menambahkan baris data-endpoint ke file ~/.cbtrc, hapuslah.

Langkah selanjutnya