Panduan ini menjelaskan cara membuat dan mengelola tag untuk resource Compute Engine. Tag adalah pasangan nilai kunci yang dapat dipasang ke resource Google Cloud Platform. Tag digunakan untuk beberapa tujuan, termasuk:
- Kebijakan izinkan atau tolak bersyarat berdasarkan apakah resource memiliki tag tertentu.
- Tentukan sumber dan target dalam kebijakan firewall jaringan global dan kebijakan firewall jaringan regional.
- Mengatur resource dengan cara yang logis
Setelah membuat tag dan memberikan akses yang sesuai ke tag dan resource,
Anda dapat melampirkan tag tersebut sebagai pasangan nilai kunci. Anda dapat menyertakan dengan tepat
satu nilai ke resource untuk kunci tertentu. Misalnya, jika melampirkan tag
environment: development
, Anda tidak dapat melampirkan
tag environment: production
atau environment: test
. Setiap resource dapat melampirkan
maksimum 50 pasangan nilai kunci.
Untuk melampirkan tag ke resource, Anda harus membuat resource TagBinding yang menautkan nilai tag ke resource Google Cloud. Untuk informasi lebih lanjut tentang tag dan cara kerjanya, tinjau Ringkasan tag.
Sebelum memulai
- Baca Ringkasan tag di dokumentasi Resource Manager.
- Baca artikel Membuat dan mengelola tag di dokumentasi Resource Manager.
-
Siapkan autentikasi, jika Anda belum melakukannya.
Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
- Menetapkan 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, lalu initialize dengan menjalankan perintah berikut:
gcloud init
-
Izin
Agar dapat mengelola tag untuk resource Compute Engine, pengguna dan akun layanan harus
diberi peran tagUser
. Untuk mengetahui informasi selengkapnya tentang peran tagUser
, lihat
Izin yang diperlukan.
Resource yang didukung
Referensi berikut hanya mendukung pemberian tag setelah pembuatan resource:
- Instance virtual machine (VM)
- Disk
- Grup Instance Terkelola
- Gambar
- Mengambil snapshot
- Sebagian besar resource jaringan seperti resource Network, Subnetwork, Firewall, dan HealthCheck.
Resource berikut juga mendukung pemberian tag selama pembuatan resource:
- VM instance
- Disk
Menambahkan tag ke resource
Tag yang sudah ada dapat dipasang ke resource tertentu setelah resource dibuat, dengan menggunakan petunjuk berikut.
Konsol
Tergantung jenis resource, langkah-langkahnya mungkin sedikit berbeda. Misalnya, langkah-langkah berikut akan melampirkan tag ke VM:
Di Konsol Google Cloud, buka halaman Instance VM.
Pilih project Anda, lalu klik Lanjutkan.
Di kolom Nama, klik nama VM yang ingin Anda tambahi tag.
Dari halaman detail Instance VM, selesaikan langkah-langkah berikut:
- Klik Edit.
- Di bagian Dasar, klik Kelola Tag, lalu tambahkan tag yang Anda inginkan untuk instance.
- Klik Save.
gcloud
Untuk meninjau petunjuk mendetail tentang cara menggunakan flag ini, baca Melampirkan tag ke resource dalam dokumentasi Resource Manager.
Misalnya, perintah berikut akan melampirkan tag ke VM:
gcloud resource-manager tags bindings create \ --location LOCATION_NAME \ --tag-value=tagValues/TAGVALUE_ID \ --parent=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Ganti kode berikut:
- LOCATION_NAME: region resource target, misalnya
us-central1
- TAGVALUE_ID: ID numerik nilai Tag
- PROJECT_NUMBER: ID numerik untuk project Anda
- ZONE: nama zona seperti
us-central1-a
- VM_ID: ID numerik instance VM
API
Untuk melampirkan tag ke resource, Anda harus terlebih dahulu membuat representasi JSON binding tag yang menyertakan ID permanen atau nama dengan namespace dari nilai tag dan ID permanen resource tersebut. Untuk mengetahui informasi selengkapnya tentang format binding tag, lihat Referensi TagBinding.
Untuk melampirkan tag ke resource zona, seperti instance VM, gunakan
metode tagBindings.create
dengan endpoint regional tempat resource
Anda berada. Contoh:
POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings
Isi permintaan dapat berupa salah satu dari:
{ "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID", "tagValue": "tagValue/TAGVALUE_ID" }
Atau yang berikut:
{ "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID", "tagValueNamespacedName": TAGVALUE_NAMESPACED_NAME }
Ganti kode berikut:
- LOCATION: lokasi tempat resource target berada
- PROJECT_NUMBER: ID numerik untuk project Anda
- ZONE: nama zona seperti
us-central1-a
- VM_ID: ID numerik VM
- TAGVALUE_ID: ID permanen nilai tag yang dilampirkan; misalnya:
4567890123
- TAGVALUE_NAMESPACED_NAME adalah nama dengan namespace nilai tag yang
dilampirkan dan memiliki format:
parentNamespace/tagKeyShortName/tagValueShortName
Menambahkan tag ke resource selama pembuatan resource
Dalam skenario tertentu, Anda dapat memberi tag pada resource selama pembuatan resource, bukan setelah resource dibuat. Misalnya, Anda mungkin ingin menerapkan tag firewall untuk kebijakan jaringan saat membuat resource Cloud Next Generation Firewall.
Konsol
Tergantung jenis resource, langkah-langkahnya mungkin sedikit berbeda. Langkah-langkah berikut ditujukan untuk VM:
Di Konsol Google Cloud, buka halaman Instance VM.
Pilih project Anda, lalu klik Continue.
Klik Create instance.
Klik Kelola Tag dan Label.
Klik Tambahkan Tag.
Ikuti petunjuk di panel samping untuk memilih tag yang akan ditambahkan ke instance.
Klik Save.
Selesaikan langkah-langkah lain di bagian Membuat dan memulai instance VM untuk menyelesaikan pembuatan instance.
gcloud
Untuk melampirkan tag ke resource selama pembuatan resource, tambahkan
flag --resource-manager-tags
dengan perintah create
masing-masing. Misalnya,
untuk melampirkan tag ke VM, gunakan perintah berikut:
gcloud compute instances create INSTANCE_NAME --resource-manager-tags=tagKeys/TAGKEY_ID=tagValues/TAGVALUE_ID
Ganti kode berikut:
- INSTANCE_NAME: nama instance Anda
- TAGKEY_ID: ID numerik nomor kunci tag
- TAGVALUE_ID: ID numerik permanen nilai tag yang
dilampirkan; misalnya:
4567890123
Tentukan beberapa tag dengan memisahkan tag menggunakan koma, misalnya,
TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2
.
API
Buat permintaan POST
ke URL berikut:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances
Sertakan isi JSON permintaan berikut:
{ "name": INSTANCE_NAME, "params": { "resourceManagerTags": { "tagKeys/TAGKEY_ID: "tagValues/TAGVALUE_ID", }, } // other fields omitted }
Ganti kode berikut:
- INSTANCE_NAME: nama instance Anda
- TAGKEY_ID: ID numerik nomor kunci tag
- TAGVALUE_ID: ID numerik permanen nilai tag yang
dilampirkan; misalnya:
4567890123
Melepaskan tag dari resource
Anda dapat melepaskan tag dari resource dengan menghapus resource binding tag.
Untuk meninjau petunjuk cara melepaskan tag, lihat Melepaskan tag dari resource dalam dokumentasi Resource Manager.
Konsol
Tergantung jenis resource, langkah-langkahnya mungkin sedikit berbeda. Misalnya, langkah-langkah berikut melepaskan tag dari VM:
Di Konsol Google Cloud, buka halaman Instance VM.
Pilih project Anda, lalu klik Lanjutkan.
Di kolom Nama, klik nama VM yang ingin Anda tambahi tag.
Dari halaman detail Instance VM, selesaikan langkah-langkah berikut:
- Klik Edit.
- Di bagian Dasar, klik Kelola Tag, lalu hapus tag yang Anda inginkan untuk instance.
- Klik Save.
gcloud
Contoh berikut melepaskan tag dari VM menggunakan gcloud CLI:
gcloud resource-manager tags bindings delete \ --location LOCATION_NAME \ --tag-value=tagValues/TAGVALUE_ID \ --parent //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Ganti kode berikut:
- LOCATION_NAME: region resource target, misalnya
us-central1
- TAGVALUE_ID: ID numerik Kunci tag
- PROJECT_NUMBER: ID numerik untuk project Anda
- ZONE: nama zona seperti
us-central1-a
- VM_ID: ID numerik instance VM
Untuk mengupdate atau mengganti binding tag yang ada ke yang lain, lepaskan binding tag lama dan lampirkan yang baru.
API
Untuk menghapus binding tag yang terpasang ke resource, seperti VM, gunakan
metode tagBindings.delete
dengan endpoint regional tempat resource
Anda berada.
DELETE https://LOCATION-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}
Dengan keterangan:
TAGBINDINGS_NAME adalah ID permanen TagBinding; misalnya:
tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456
.LOCATION adalah endpoint regional untuk resource Anda; misalnya:
us-central1
.
Melihat tag yang dilampirkan ke resource
Untuk meninjau petunjuk mendetail mengenai cara mencantumkan tag, lihat Mencantumkan tag yang dilampirkan ke resource dalam dokumentasi Resource Manager.
Konsol
Tergantung jenis resource, langkah-langkahnya mungkin sedikit berbeda. Misalnya, langkah-langkah berikut menunjukkan cara melihat tag untuk VM:
Di Konsol Google Cloud, buka halaman Instance VM.
Pilih project Anda, lalu klik Lanjutkan.
Di kolom Nama, klik nama VM yang ingin Anda lihat tagnya.
Dari halaman detail instance VM, cari tag di bagian Tag.
gcloud
Untuk mendapatkan daftar binding tag yang langsung dilampirkan ke resource, gunakan
perintah gcloud resource-manager tags bindings list
. Jika menambahkan
flag --effective
, Anda juga akan menampilkan daftar tag yang diwarisi oleh
resource ini. Contoh:
gcloud resource-manager tags bindings list \ --location=LOCATION_NAME \ --parent //compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID
Ganti kode berikut:
- LOCATION_NAME: region resource target, misalnya
us-central1
- PROJECT_NUMBER: ID numerik untuk project Anda
- ZONE: nama zona seperti
us-central1-a
- VM_ID: ID numerik instance VM
Jika menambahkan flag --effective
ke perintah tags bindings list
, Anda juga
akan menampilkan daftar semua tag yang diwarisi oleh resource ini. Anda akan
mendapatkan respons seperti berikut:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Jika semua tag yang dievaluasi pada resource dilampirkan langsung, kolom inherited
akan bernilai salah dan akan dihilangkan.
API
Untuk menampilkan daftar binding tag yang dilampirkan ke resource regional,
seperti instance Compute Engine, gunakan metode tagBindings.list
dengan endpoint regional tempat resource Anda berada. Contoh:
GET https://LOCATION_NAME-cloudresourcemanager.googleapis.com/v3/tagBindings { "parent": "//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/VM_ID" }
Ganti kode berikut:
- LOCATION_NAME: region menjadi resource target, misalnya
us-central1
- PROJECT_NUMBER: ID numerik untuk project Anda
- ZONE: nama zona seperti
us-central1-a
- VM_ID: ID numerik instance VM