Anda juga dapat menambahkan label ke resource Compute Engine yang terkait dengan resource cluster, seperti instance Virtual Machine dan disk.
Apa itu label?
Label adalah pasangan nilai kunci yang dapat Anda tetapkan ke cluster dan tugas Google Cloud Dataproc. Label membantu Anda mengatur resource ini dan mengelola biaya dalam skala besar, dengan perincian yang Anda butuhkan. Anda dapat melampirkan label ke setiap resource, lalu memfilter resource berdasarkan labelnya. Informasi tentang label diteruskan ke sistem penagihan, sehingga Anda dapat mengelompokkan tagihan biaya berdasarkan label. Dengan laporan penagihan bawaan, Anda dapat memfilter dan mengelompokkan biaya berdasarkan label resource. Anda juga dapat menggunakan label untuk membuat kueri ekspor data penagihan.
Persyaratan untuk label
Label yang diterapkan ke resource harus memenuhi persyaratan berikut:
- Setiap resource dapat memiliki maksimal 64 label.
- Setiap label harus berupa pasangan nilai kunci.
- Kunci memiliki panjang minimum 1 karakter dan panjang maksimum 63 karakter, serta tidak boleh kosong. Nilai boleh kosong dan memiliki panjang maksimum 63 karakter.
- Kunci dan nilai hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda pisah. Semua karakter harus menggunakan encoding UTF-8, dan boleh menggunakan karakter internasional. Kunci harus diawali dengan huruf kecil atau karakter internasional.
- Bagian kunci label harus unik dalam satu resource. Namun, Anda dapat menggunakan kunci yang sama dengan beberapa resource.
Batasan ini berlaku untuk kunci dan nilai untuk setiap label, serta untuk masing-masing resource Google Cloud yang memiliki label. Tidak ada batasan jumlah label yang dapat diterapkan di semua resource dalam satu project.
Penggunaan label secara umum
Berikut adalah beberapa kasus penggunaan umum untuk label:
Label tim atau pusat biaya: Menambahkan label berdasarkan tim atau pusat biaya untuk membedakan cluster dan tugas Dataproc yang dimiliki oleh tim yang berbeda (misalnya,
team:research
danteam:analytics
). Anda dapat menggunakan jenis label ini untuk akuntansi atau penganggaran biaya.Label komponen: Misalnya,
component:redis
,component:frontend
,component:ingest
, dancomponent:dashboard
.Label lingkungan atau tahap: Misalnya,
environment:production
danenvironment:test
.Label status: Misalnya,
state:active
,state:readytodelete
, danstate:archive
.Label kepemilikan: Digunakan untuk mengidentifikasi tim yang bertanggung jawab atas operasi, misalnya:
team:shopping-cart
.
Sebaiknya Anda tidak membuat label unik dalam jumlah besar, seperti untuk stempel waktu atau nilai individual bagi setiap panggilan API. Masalah dari pendekatan ini adalah ketika nilai sering berubah atau dengan kunci yang mengacaukan katalog, ini akan menyulitkan pemfilteran dan pelaporan resource secara efektif.
Label dan tag
Label dapat digunakan sebagai anotasi yang dapat dikueri untuk resource, tetapi tidak dapat digunakan untuk menetapkan kondisi pada kebijakan. Tag menyediakan cara untuk mengizinkan atau menolak kebijakan secara bersyarat berdasarkan apakah resource memiliki tag tertentu, dengan memberikan kontrol terperinci atas kebijakan. Untuk informasi selengkapnya, lihat Ringkasan tag.
Membuat dan menggunakan label Dataproc
Perintah gcloud
Anda dapat menentukan satu atau beberapa label yang akan diterapkan ke cluster atau tugas Dataproc saat pembuatan atau waktu pengiriman menggunakan Google Cloud CLI.
gcloud dataproc clusters create args --labels environment=production,customer=acme
gcloud dataproc jobs submit args --labels environment=production,customer=acme
Setelah cluster atau tugas Dataproc dibuat, Anda dapat memperbarui label yang terkait dengan resource tersebut menggunakan Google Cloud CLI.
gcloud dataproc clusters update args --update-labels environment=production,customer=acme
gcloud dataproc jobs update args --update-labels environment=production,customer=acme
Demikian pula, Anda dapat menggunakan Google Cloud CLI untuk memfilter resource Dataproc berdasarkan label menggunakan
ekspresi filter dengan format berikut: labels.<key=value>
.
gcloud dataproc clusters list \ --region=region \ --filter="status.state=ACTIVE AND labels.environment=production"
gcloud dataproc jobs list \ --region=region \ --filter="status.state=ACTIVE AND labels.customer=acme"
Lihat dokumentasi Dataproc API untuk clusters.list dan jobs.list untuk mengetahui informasi selengkapnya tentang cara menulis ekspresi filter.
REST API
Label dapat dilampirkan ke resource Dataproc melalui
Dataproc REST API. API clusters.create,
jobs.submit
dapat digunakan untuk melampirkan label ke cluster atau tugas pada saat pembuatan atau pengiriman.
API clusters.patch,
jobs.patch
dapat digunakan untuk mengedit label setelah resource dibuat. Berikut adalah isi JSON permintaan cluster.create yang menyertakan label key1:value
ke cluster.
{ "clusterName":"cluster-1", "projectId":"my-project", "config":{ "configBucket":"", "gceClusterConfig":{ "networkUri":".../networks/default", "zoneUri":".../zones/us-central1-f" }, "masterConfig":{ "numInstances":1, "machineTypeUri":"..../machineTypes/n1-standard-4", "diskConfig":{ "bootDiskSizeGb":500, "numLocalSsds":0 } }, "workerConfig":{ "numInstances":2, "machineTypeUri":"...machineTypes/n1-standard-4", "diskConfig":{ "bootDiskSizeGb":500, "numLocalSsds":0 } } }, "labels":{ "key1":"value1" } }
API clusters.list
dan jobs.list
dapat digunakan untuk mencantumkan resource yang cocok dengan filter yang ditentukan, menggunakan
format berikut: labels.<key=value>
.
Berikut adalah contoh permintaan HTTPS GET
clusters.list
Dataproc API yang menentukan filter label key=value
. Pemanggil menyisipkan
project
, region
, filter label-key
dan label-value
, serta api-key
. Perhatikan bahwa contoh permintaan ini dibagi menjadi
dua baris agar mudah dibaca.
GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters? filter=labels.label-key=label-value&key=api-key
Lihat dokumentasi Dataproc API untuk clusters.list dan jobs.list untuk mengetahui informasi selengkapnya tentang cara menulis ekspresi filter.
Konsol
Anda dapat menentukan kumpulan label yang akan ditambahkan ke resource Dataproc saat pembuatan atau waktu pengiriman menggunakan Konsol Google Cloud.
- Tambahkan label ke cluster dari bagian Label di panel Sesuaikan cluster di halaman Buat cluster Dataproc.
- Tambahkan label ke tugas dari halaman Kirim tugas Dataproc.
Setelah resource Dataproc dibuat, Anda dapat memperbarui label
yang terkait dengan resource tersebut. Untuk memperbarui label, Anda harus mengklik SHOW INFO PANEL
di kiri atas halaman terlebih dahulu. Ini adalah contoh dari halaman Dataproc→List clusters.
Setelah panel info ditampilkan, Anda dapat memperbarui label untuk resource Dataproc. Berikut adalah contoh pembaruan label untuk cluster Dataproc.
Anda juga dapat memperbarui label untuk beberapa item dalam satu operasi. Dalam contoh ini, label diperbarui untuk beberapa tugas Dataproc secara bersamaan.
Label memungkinkan Anda memfilter resource Dataproc yang ditampilkan di halaman Dataproc→List clusters dan Dataproc→List jobs. Di bagian atas halaman, Anda dapat menggunakan pola penelusuran labels.<labelname>=<value>
untuk memfilter resource menurut label.
Label yang diterapkan secara otomatis
Saat membuat atau memperbarui cluster, Dataproc akan otomatis menerapkan beberapa label ke cluster dan resource cluster. Misalnya,
Dataproc menerapkan label ke virtual machine, persistent disk,
dan akselerator saat cluster dibuat. Label yang diterapkan secara otomatis memiliki
awalan goog-dataproc
khusus.
Label goog-dataproc
berikut diterapkan secara otomatis ke
resource Dataproc. Setiap nilai yang Anda berikan untuk label goog-dataproc
yang dicadangkan saat pembuatan cluster akan menggantikan nilai yang diberikan secara otomatis. Oleh karena itu, sebaiknya jangan memberikan nilai Anda sendiri untuk
label ini.
Label | Deskripsi |
---|---|
goog-dataproc-cluster-name |
Nama cluster yang ditentukan pengguna |
goog-dataproc-cluster-uuid |
ID cluster unik |
goog-dataproc-location |
Endpoint cluster regional Dataproc |
Anda dapat menggunakan label yang diterapkan secara otomatis ini dengan berbagai cara, termasuk:
- Menelusuri dan memfilter resource Dataproc
- Memfilter data penagihan untuk menghitung biaya Dataproc