Dengan menggunakan skrip penskalaan otomatis atau layanan runtime di Compute Engine, Anda dapat mengotomatiskan pipeline continuous integration dan continuous deployment (CI/CD). Namun, karena resource ini sangat bergantung pada definisi resource global saat membuat kueri endpoint API global, pendekatan ini dapat menimbulkan satu titik kegagalan di seluruh arsitektur multi-region Anda.
Untuk mengurangi risiko ini, Anda dapat mengonfigurasi layanan untuk mengakses tampilan regional resource global. Dengan mengirim permintaan GET dan LIST ke endpoint hanya baca yang diregionalkan dalam region yang sama dengan tempat workload komputasi Anda berjalan, layanan Anda akan mengisolasi penggunaan API dari potensi pemadaman layanan di bidang kontrol global atau di region lain. Untuk mengetahui informasi selengkapnya tentang
endpoint hanya baca yang diregionalkan dan praktik terbaik ketahanan, lihat Menggunakan tampilan regional untuk pembacaan bidang kontrol yang tangguh.
Sebelum memulai
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses Google Cloud layanan dan API. Untuk menjalankan
kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke
Compute Engine dengan memilih salah satu opsi berikut:
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan Google Cloud konsol untuk mengakses Google Cloud layanan dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initJika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .
-
- Tetapkan region dan zona default.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu .
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam Google Cloud dokumentasi autentikasi.
Peran yang diperlukan
Agar mendapatkan izin yang
Anda perlukan untuk mengakses resource global secara regional,
minta administrator untuk memberi Anda peran IAM
Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) di project atau OS image.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk mengakses resource global secara regional. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk mengakses resource global secara regional:
-
Untuk mendapatkan tampilan regional untuk project:
compute.projects.getdi project -
Untuk mendapatkan tampilan regional untuk OS image:
compute.images.getdancompute.images.listdi project atau OS image
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Resource project
Anda bisa mendapatkan tampilan regional resource project global menggunakan endpoint hanya baca projectViews.
Saat Anda membuat kueri endpoint projectViews, Compute Engine
akan menampilkan objek resource compute.Project
global standar. Resource itu sendiri tetap global.
Mendapatkan tampilan regional resource project
Anda bisa mendapatkan tampilan regional project global menggunakan Google Cloud CLI atau REST API.
gcloud
Untuk mendeskripsikan project global Anda melalui bidang kontrol untuk region tertentu, jalankan perintah
gcloud compute project-views describe command:
gcloud compute project-views describe \
--region=REGION \
--project=PROJECT_ID
Ganti kode berikut:
REGION: Google Cloud region untuk permintaan API—misalnya,us-central1.PROJECT_ID: project ID Anda.
REST
Untuk mendeskripsikan project global Anda melalui bidang kontrol untuk region tertentu, kirim permintaan GET ke metode
projectViews.
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/projectViews"
Ganti kode berikut:
PROJECT_ID: project ID Anda.REGION: Google Cloud region untuk permintaan API —misalnya,us-central1.
API akan menampilkan representasi resource compute.Project standar secara langsung.
{
"kind": "compute#project",
"id": "1234567890123456789",
"creationTimestamp": "2024-01-15T10:00:00.000-08:00",
"name": "my-project12345",
"commonInstanceMetadata": {
"items": [
{
"key": "example-key",
"value": "example-value"
}
]
},
"selfLink": "https://www.googleapis.com/compute/v1/projects/my-project12345",
"defaultServiceAccount": "SERVICE_ACCOUNT_EMAIL"
}
Resource OS image
Anda bisa mendapatkan tampilan regional resource OS image global menggunakan endpoint hanya baca imageViews.
Saat Anda membuat kueri endpoint imageViews, Compute Engine
akan menampilkan objek resource compute.Image
global standar. Resource itu sendiri tetap global.
Mendapatkan daftar regional resource OS image
Anda dapat mencantumkan semua OS image global yang tersedia untuk project Anda melalui endpoint regional tertentu menggunakan gcloud CLI atau REST API.
gcloud
Untuk mencantumkan OS image global menggunakan endpoint regional, jalankan perintah
gcloud compute image-views list command:
gcloud compute image-views list \
--region=REGION \
--project=PROJECT_ID
Ganti kode berikut:
REGION: Google Cloud region untuk permintaan API —misalnya,us-central1.PROJECT_ID: project ID Anda.
REST
Untuk mencantumkan OS image global menggunakan endpoint regional, kirim permintaan GET ke metode imageViews:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/imageViews"
Ganti kode berikut:
PROJECT_ID: project ID Anda.REGION: Google Cloud region untuk permintaan API —misalnya,us-central1.
Mendapatkan tampilan regional resource OS image
Anda dapat mengambil informasi untuk OS image global tertentu melalui endpoint regional menggunakan gcloud CLI atau REST API.
gcloud
Untuk mengambil detail OS image global menggunakan endpoint regional, jalankan
perintah gcloud compute image-views describe:
gcloud compute image-views describe IMAGE_NAME \
--region=REGION \
--project=PROJECT_ID
Ganti kode berikut:
IMAGE_NAME: nama resource OS image global.REGION: Google Cloud region untuk permintaan API —misalnya,us-central1.PROJECT_ID: project ID Anda.
REST
Untuk mengambil detail OS image global menggunakan endpoint regional, kirim GET permintaan ke
imageViews metode tertentu:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/imageViews/IMAGE_NAME"
Ganti kode berikut:
PROJECT_ID: project ID Anda.REGION: Google Cloud region untuk permintaan API—misalnya,us-central1.IMAGE_NAME: nama resource OS image global.
API akan menampilkan representasi resource compute.Image standar secara langsung.
{
"kind": "compute#image",
"id": "1234567890123456789",
"creationTimestamp": "2024-01-15T10:00:00.000-08:00",
"name": "my-image12345",
"sourceDisk": "https://www.googleapis.com/compute/v1/projects/my-project12345/zones/us-central1-a/disks/my-disk12345",
"sourceDiskId": "1234567890123456789",
"sourceType": "RAW",
"status": "READY",
"selfLink": "https://www.googleapis.com/compute/v1/projects/my-project12345/global/images/my-image12345"
}
Langkah berikutnya
- Pelajari lebih lanjut Resource project.
- Pelajari lebih lanjut OS image.
- Pelajari cara Memecahkan masalah tampilan regional resource global.