Endpoint lokasi

Halaman ini menjelaskan endpoint lokasi Bigtable, menjelaskan hal-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 untuk mendukung kebutuhan keamanan dan kepatuhan project Anda.

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

Konsep utamanya meliputi hal-hal berikut:

  • 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 lokasi Endpoint lokasi menerapkan pembatasan lokasi, yang memastikan 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 harus menggunakan endpoint lokasi

Manfaat menggunakan endpoint lokasi Bigtable dibandingkan endpoint global adalah 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

Pertimbangkan faktor-faktor berikut saat Anda menggunakan endpoint lokasi.

Lokasi cluster

Sebelum dapat menggunakan endpoint lokasi, Anda harus membuat instance dengan setidaknya 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 menayangkan 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 informasi selengkapnya tentang FAILED_PRECONDITION, lihat Kode status Bigtable.

Profil aplikasi

Setelah menetapkan endpoint lokasi, Anda harus menggunakan profil aplikasi yang dikonfigurasi untuk merutekan permintaan ke cluster di wilayah 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 dari endpoint (menggunakan perutean multi-cluster), Anda akan menerima pesan error prasyarat gagal There are no clusters accessible through this app profile and the REGION_NAME endpoint.. Untuk informasi selengkapnya tentang perutean cluster, lihat Kebijakan perutean.

Jika Anda menggunakan profil aplikasi yang dikonfigurasi untuk merutekan ke cluster apa pun dalam instance untuk ketersediaan tinggi (HA), dan Anda juga menggunakan endpoint lokasi, endpoint lokasi akan memastikan bahwa semua permintaan hanya dirutekan ke cluster di regionnya, meskipun instance memiliki cluster di region lain. Failover otomatis dibatasi, sehingga permintaan hanya ditayangkan 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 ditayangkan oleh us-central1-a meskipun Anda tidak mengonfigurasi ulang profil aplikasi. Permintaan yang tidak dapat ditayangkan oleh us-central1-a akan 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 replikasi 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 >=99,999%. Waktu beroperasi bulanan >=99,999% memerlukan failover otomatis permintaan di luar batas lokasi, yang dicegah oleh endpoint lokasi karena membatasi semua permintaan ke satu region. Untuk 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 regionGoogle Cloud . Endpoint lokasi mengikuti format REGION-bigtable.googleapis.com, dengan REGION adalah nama region, seperti northamerica-northeast2.

Misalnya, jika Anda ingin mengisolasi data di wilayah Iowa, karena nama wilayah untuk Iowa adalah us-central1, URL endpoint lokasi untuk wilayah 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, CLI cbt, 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 Anda dapat menambahkan hal berikut ke file ~/.cbtrc. Untuk informasi tambahan tentang cara membuat file ~/.cbtrc, lihat referensi cbt CLI.

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 menambahkan baris data-endpoint ke file ~/.cbtrc, hapus baris tersebut.

Langkah selanjutnya