Membuat dan mengelola label.

Anda dapat menerapkan label pengguna ke cluster dan tugas Dataproc untuk mengelompokkan resource ini agar dapat difilter dan dicantumkan nanti. Anda mengaitkan label dengan resource saat resource dibuat, saat pembuatan cluster, atau pengiriman tugas. Setelah resource dikaitkan dengan label, label tersebut akan disebarkan ke operasi yang dilakukan pada resource pembuatan, update, patch, atau penghapusan cluster; pengiriman, update, pembatalan, atau penghapusan tugas, sehingga Anda dapat memfilter dan mencantumkan cluster, tugas, dan operasi menurut label.

Anda juga dapat menambahkan label ke resource Compute Engine yang dikaitkan dengan resource cluster, seperti instance dan disk Virtual Machine.

Apa yang dimaksud dengan label?

Label adalah pasangan nilai kunci yang dapat Anda tetapkan ke cluster dan tugas Dataproc. Label membantu Anda mengatur resource ini dan mengelola biaya dalam skala besar, dengan perincian yang Anda butuhkan. Anda dapat menghubungkan label ke tiap resource, lalu memfilter resource menurut labelnya. Informasi tentang label akan 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 pada resource harus memenuhi persyaratan berikut:

  • Tiap cluster atau tugas dapat memiliki hingga 32 label.
  • Tiap 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 panjang maksimumnya 63 karakter.
  • Kunci dan nilai hanya boleh berisi huruf kecil, karakter numerik, garis bawah, dan tanda hubung. Semua karakter harus menggunakan encoding UTF-8, dan karakter internasional diizinkan. 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 tiap label, serta untuk tiap cluster atau tugas Dataproc yang memiliki label. Tidak ada batasan jumlah label yang dapat Anda terapkan di semua resource dalam satu project.

Penggunaan label yang umum

Berikut adalah beberapa kasus penggunaan umum terkait dengan label:

  • Label tim atau pusat biaya: Tambahkan label berdasarkan tim atau pusat biaya untuk membedakan cluster dan tugas Dataproc yang dimiliki berbagai tim (misalnya, team:research dan team:analytics). Anda dapat menggunakan jenis label ini untuk akuntansi atau penganggaran biaya.

  • Label komponen: Misalnya, component:redis, component:frontend, component:ingest, dan component:dashboard.

  • Label lingkungan atau tahap: Misalnya, environment:production dan environment:test.

  • Label status: Misalnya, state:active, state:readytodelete, dan state: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 individu bagi tiap panggilan API. Masalah dari pendekatan ini adalah ketika nilai sering berubah atau dengan adanya kunci yang mengacaukan katalog, pemfilteran dan pelaporan resource secara efektif akan sulit dilakukan.

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 atau tidak, dengan memberikan kontrol terperinci atas kebijakan. Untuk mengetahui informasi selengkapnya, baca Ringkasan tag.

Membuat dan menggunakan label Dataproc

Perintah gcloud

Anda dapat menyebutkan salah satu atau beberapa label yang akan diterapkan pada cluster atau tugas Dataproc pada saat pembuatan atau 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 mengupdate label yang terhubung 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 menurut 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"

Baca dokumentasi Dataproc API clusters.list dan jobs.list untuk mengetahui informasi selengkapnya tentang cara menulis ekspresi filter.

REST API

Label dapat dihubungkan ke cluster atau tugas Dataproc melalui Dataproc REST API. API clusters.create dan jobs.submit dapat digunakan untuk menghubungkan label ke cluster atau tugas pada saat pembuatan atau pengiriman. API clusters.patch dan jobs.patch dapat digunakan untuk mengedit label setelah cluster dibuat. Berikut adalah isi JSON permintaan cluster.create yang mencakup tindakan menghubungkan 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 cluster atau tugas yang cocok dengan filter tertentu, menggunakan format berikut: labels.<key=value>.

Berikut adalah contoh permintaan GET HTTPS 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

Baca dokumentasi Dataproc API clusters.list dan jobs.list untuk mengetahui informasi selengkapnya tentang cara menulis ekspresi filter.

Konsol

Anda dapat menentukan serangkaian label untuk ditambahkan ke cluster atau tugas Dataproc pada saat pembuatan atau pengiriman menggunakan konsol Google Cloud .

  • Tambahkan label ke cluster dari bagian Label di panel Customize cluster pada halaman Create a cluster Dataproc.
  • Tambahkan label ke tugas dari halaman Submit a job Dataproc.

Setelah cluster atau tugas Dataproc dibuat atau dikirimkan, Anda dapat mengupdate label yang terkait dengan cluster atau tugas tersebut. Untuk mengupdate label, klik kotak pilihan cluster atau tugas yang tercantum, lalu klik SHOW INFO PANEL. Berikut adalah contoh dari halaman Dataproc→Daftar cluster.

Setelah panel info ditampilkan, Anda dapat mengupdate label untuk cluster atau tugas Dataproc. Berikut adalah contoh cara mengupdate label untuk cluster Dataproc.

Anda juga dapat mengupdate label pada beberapa item dalam satu operasi. Dalam contoh ini, label diupdate untuk beberapa tugas Dataproc secara bersamaan.

Dengan label, Anda dapat memfilter resource Dataproc yang ditampilkan di halaman [Dataproc→List clusters](https://console.cloud.google.com/dataproc/clusters) dan [Dataproc→List jobs](https://console.cloud.google.com/dataproc/jobs). Di bagian atas halaman, Anda dapat menggunakan pola penelusuran `labels.=` untuk memfilter resource menurut label.

Label yang diterapkan secara otomatis

Saat membuat atau mengupdate cluster, Dataproc akan otomatis menerapkan beberapa label ke cluster dan resource cluster. Misalnya, Dataproc akan menerapkan label ke virtual machine, persistent disk, dan akselerator saat cluster dibuat. Label yang diterapkan akan otomatis memiliki awalan khusus yaitu goog-dataproc.

Label goog-dataproc berikut akan otomatis diterapkan ke resource Dataproc. Nilai apa pun yang Anda berikan untuk label goog-dataproc yang dicadangkan saat pembuatan cluster akan menggantikan nilai yang diberikan secara otomatis. Oleh sebab itu, sebaiknya jangan memberikan nilai secara manual 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 dengan berbagai cara, antara lain:

Langkah berikutnya