您也可以在與叢集資源相關聯的 Compute Engine 資源中新增標籤,例如虛擬機器執行個體和磁碟。
什麼是標籤?
標籤是鍵/值組合,可指派給 Google Cloud Dataproc 叢集和工作。這些標籤可協助您整理這些資源,並以所需精細度大規模管理費用。您可以為每項資源加上標籤,並根據標籤篩選資源。標籤的相關資訊會轉送至帳單系統,方便您依據標籤查看帳單費用明細。您可以使用內建的帳單報表,依資源標籤篩選及分組費用。您也可以使用標籤查詢帳單資料匯出內容。
標籤需求
套用於資源的標籤必須符合下列需求條件:
- 每項資源最多可有 64 個標籤。
- 每個標籤都必須是鍵/值組合。
- 鍵的長度必須至少為 1 個字元,最多 63 個字元,且不能空白。值可以空白,長度上限為 63 個字元。
- 鍵和值只能使用小寫字母、數字字元、底線和連字號。所有字元都必須使用 UTF-8 編碼,且可使用國際字元。鍵的開頭必須是小寫字母或國際字元。
- 標籤中的鍵部分不得重複。但可讓多個資源使用相同的鍵。
這些限制適用於每個標籤的鍵和值,以及具有標籤的個別 Google Cloud 資源。您可以在專案內的所有資源中套用任意數量的標籤。
標籤的常見用法
以下是一些常見的標籤用途:
團隊或成本中心標籤:依據團隊或成本中心來新增標籤,以區別不同團隊 (例如
team:research
和team:analytics
) 擁有的 Dataproc 叢集和工作。這個類型的標籤可用於成本會計或預算編列作業。元件標籤:例如
component:redis
、component:frontend
、component:ingest
和component:dashboard
。環境或階段標籤:例如
environment:production
和environment:test
。狀態標籤:例如
state:active
、state:readytodelete
和state:archive
。擁有權標籤:用於識別負責作業的團隊,例如
team:shopping-cart
。
我們不建議您建立大量的不重複標籤,例如為時間戳記或每個 API 呼叫的個別值建立標籤。這種做法的問題是,如果值經常變更,或鍵會使目錄變得雜亂,就很難有效篩選及回報資源。
標籤
標籤可用做為可查詢的資源註解,但無法用於設定政策條件。您可將資源是否具備特定標記設為條件,並按照這項條件允許或拒絕政策。詳情請參閱「標記總覽」。
建立及使用 Dataproc 標籤
gcloud 指令
您可以使用 Google Cloud CLI,指定要在建立 Dataproc 叢集或提交 Dataproc 工作時套用至該叢集或工作的一或多個標籤。
gcloud dataproc clusters create args --labels environment=production,customer=acme
gcloud dataproc jobs submit args --labels environment=production,customer=acme
建立 Dataproc 叢集或工作後,您就可以使用 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
同樣地,您可以使用 Google Cloud CLI 並採用下列格式的篩選條件運算式,按標籤篩選 Dataproc 資源: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"
如要進一步瞭解如何編寫篩選條件運算式,請參閱 clusters.list 和 jobs.list Dataproc API 說明文件。
REST API
標籤可以透過 Dataproc REST API 附加至 Dataproc 資源。您可以在建立叢集或提交工作時,使用 clusters.create 和 jobs.submit API 將標籤附加到該叢集或工作。資源建立完成後,您可以使用 clusters.patch 和 jobs.patch API 編輯標籤。以下是 cluster.create 要求的 JSON 主體,其中含有附加到叢集的 key1:value
標籤。
{ "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" } }
您可以使用 clusters.list 和 jobs.list API 列出符合指定篩選條件的資源,格式如下:labels.<key=value>
。
以下是指定 key=value
標籤篩選條件的範例 Dataproc API clusters.list HTTPS GET 要求。呼叫端會插入 project
、region
、篩選器 label-key
和 label-value
,以及 api-key
。請注意,為了方便閱讀,此要求範例分成兩行顯示。
GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters? filter=labels.label-key=label-value&key=api-key
如要進一步瞭解如何編寫篩選條件運算式,請參閱 clusters.list 和 jobs.list Dataproc API 說明文件。
控制台
您可以使用 Google Cloud 主控台,在建立或提交 Dataproc 資源時指定要新增至該資源的一組標籤。
- 在 Dataproc「建立叢集」頁面的「自訂叢集」面板中,透過「標籤」部分將標籤新增至叢集。
- 透過 Dataproc「Submit a job」頁面,為工作新增標籤。
建立 Dataproc 資源後,您就可以更新與該資源相關聯的標籤。如要更新標籤,您必須先按一下頁面左上方的 SHOW INFO PANEL
。以下是 Dataproc→List clusters (列出叢集) 頁面的範例。

顯示資訊面板後,您可以更新 Dataproc 資源的標籤。以下範例說明如何更新 Dataproc 叢集的標籤。

您也可以在一次作業中更新多個項目的標籤。下列範例說明如何同時更新多個 Dataproc 工作的標籤。

標籤可讓您篩選顯示在 Dataproc→List clusters (列出叢集) 和 Dataproc→List jobs (列出工作) 頁面上的 Dataproc 資源。在頁面頂端,您可以使用搜尋模式 labels.<labelname>=<value>
按標籤篩選資源。

自動套用的標籤
建立或更新叢集時,Dataproc 會自動將數個標籤套用至叢集和叢集資源。例如,Dataproc 會在建立叢集時,將標籤套用至虛擬機器、永久磁碟和加速器。自動套用的標籤有特殊的 goog-dataproc
前置字串。
下列 goog-dataproc
標籤會自動套用至 Dataproc 資源。您在建立叢集時為保留的 goog-dataproc
標籤所提供的任何值,都會覆寫自動提供的值。因此,不建議為這些標籤提供您自己的值。
標籤 | 說明 |
---|---|
goog-dataproc-cluster-name |
使用者指定的叢集名稱 |
goog-dataproc-cluster-uuid |
不重複的叢集 ID |
goog-dataproc-location |
Dataproc 地區叢集端點 |
您可以透過多種方式使用這些自動套用的標籤,包括: