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
- Tinjau kontrol akses dengan IAM.
- Pelajari cara membuat dan mengelola tag.
- Lihat region tempat Bigtable mendukung endpoint regional.