您可以將使用者標籤套用於 Dataproc 叢集和工作資源,以將資源和相關作業分組後進行篩選和建立清單。您可以在建立資源時 (建立叢集或提交工作時),將標籤與資源建立關聯。資源與標籤建立關聯後,標籤會傳播至資源上執行的作業 (叢集建立、更新、修補或刪除;工作提交、更新、取消或刪除),方便您依標籤篩選及列出叢集、工作和作業。
您也可以將標籤新增至與叢集資源相關聯的 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](https://console.cloud.google.com/dataproc/clusters) 和 [Dataproc→List jobs](https://console.cloud.google.com/dataproc/jobs) 頁面上的 Dataproc 資源。在頁面頂端,您可以使用搜尋模式 `labels.
自動套用的標籤
建立或更新叢集時,Dataproc 會將數個標籤自動套用於叢集和叢集資源。舉例來說,Dataproc 會在建立叢集時,將標籤套用於虛擬機器、永久磁碟和加速器。自動套用的標籤有特殊的 goog-dataproc
前置字串。
下列 goog-dataproc
標籤會自動套用於 Dataproc 資源。您在建立叢集時為保留的 goog-dataproc
標籤所提供的任何值,都將覆寫系統自動提供的值。因此,不建議為這些標籤提供您自己的值。
標籤 | 說明 |
---|---|
goog-dataproc-cluster-name |
使用者指定的叢集名稱 |
goog-dataproc-cluster-uuid |
不重複的叢集 ID |
goog-dataproc-location |
Dataproc 地區叢集端點 |
您可以透過多種方式使用這些自動套用的標籤,包括: