Cloud Dataproc 用户标签

您可以将用户标签应用到 Cloud Dataproc 集群和作业资源,以便对资源和相关操作进行分组,方便以后过滤和列出这些内容。在使用 Google Cloud SDK gcloud 命令行工具、Google Cloud Platform ConsoleCloud Dataproc REST API 创建资源时(在创建集群或提交作业时),您可以将标签与资源进行关联。一旦资源与标签进行关联,标签即会传播到对资源执行的操作(集群创建、更新、修补或删除;作业提交、更新、取消或删除),可让您通过标签过滤和列出集群、作业和操作。

标签语义和要求

标签是字符串 key:value 对。Cloud Dataproc 标签同样具有其他 Google Cloud Platform 资源标签的特征(例外情况* 见下文):

  • 标签键和值不能超过 63 个字符。
  • 标签键和值只能包含小写字母、数字、下划线、连字符和国际字符。
  • 标签键和值的大小不能超过 128 个字节。
  • 标签键必须以字母开头。
  • 标签键在一个资源类型(集群、作业或操作)中必须具备唯一性。
  • 每个 Cloud Dataproc 资源最多可以具有 32 个标签(*其他 Google Cloud Platform 资源最多可以与 64 个标签关联)。
  • Cloud Dataproc 资源没有默认标签。
  • Cloud Dataproc 使用前缀 goog-dataproc- 来自动管理某些系统标签。

自动应用的标签

在创建或更新集群时,Cloud Dataproc 会自动将多个标签应用于集群和集群资源。例如,Cloud Dataproc 会将标签应用于虚拟机、永久性磁盘和加速器。自动应用的标签具有特殊的 goog-dataproc 前缀。

您可以通过多种方式使用这些标签,其中包括:

以下 goog-dataproc 标签会自动应用于 Cloud Dataproc 资源。您在创建集群时为预留的 goog-dataproc 标签提供的任何值都将替换自动提供的值。因此,建议您不要为这些标签提供您自己的值。

标签 说明
goog-dataproc-cluster-name 用户指定的集群名称。
goog-dataproc-cluster-uuid 唯一集群 ID。
goog-dataproc-location Cloud Dataproc 区域集群端点

创建和使用 Cloud Dataproc 标签

gcloud 命令

您可以使用 gcloud 命令行工具,指定一个或多个在创建或提交 Cloud Dataproc 集群或作业时要应用于集群或作业的标签。

gcloud dataproc clusters create args --labels env=prod,customer=acme
gcloud dataproc jobs submit args --labels env=prod,customer=acme
创建 Cloud Dataproc 集群或作业后,您可以使用 gcloud 命令行工具更新与该资源关联的标签。
gcloud dataproc clusters update args --update-labels env=prod,customer=acme
gcloud dataproc jobs update args --update-labels env=prod,customer=acme
同样地,您可以借助 gcloud 命令行工具,使用以下格式的过滤条件表达式按标签过滤 Cloud Dataproc 资源:labels.<key=value>
gcloud dataproc clusters list --filter "status.state=ACTIVE AND labels.env=prod"
gcloud dataproc jobs list --filter "status.state=ACTIVE AND labels.customer=acme"
如需详细了解如何编写过滤条件表达式,请参阅 clusters.listjobs.list Cloud Dataproc API 文档。

REST API

您可以通过 Cloud Dataproc REST API 将标签附加到 Cloud Dataproc 资源。您还可以使用 clusters.createjobs.submit API,在创建或提交集群或作业时将标签附加到集群或作业。创建资源后,可以使用 clusters.patchjobs.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.listjobs.list API 按照以下格式列出符合指定过滤条件的资源:labels.<key=value>。下面是一个示例 Cloud Dataproc API clusters.list HTTPS GET 请求,该请求指定了 key=value 标签过滤条件。调用者将插入 projectregion、过滤条件 label-keylabel-value 以及 api-key。请注意,此示例请求被划分为两行以提高可读性。
GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters?
filter=labels.label-key=label-value&key=api-key
如需详细了解如何编写过滤条件表达式,请参阅 clusters.listjobs.list Cloud Dataproc API 文档。

Console

您可以使用 GCP Console 指定一组要在创建或提交 Cloud Dataproc 资源时应用于资源的标签。以下示例展示了如何从 Cloud Dataproc→创建集群页面创建与 Cloud Dataproc 集群关联的标签。

下面的示例展示了如何在 Cloud Dataproc→提交作业页面中创建与 Cloud Dataproc 作业关联的标签。

创建 Cloud Dataproc 资源后,您可以更新与该资源关联的标签。要更新标签,您必须首先点击页面左上角的 SHOW INFO PANEL。下面是 Cloud Dataproc→列出集群页面的一个示例。

显示信息面板后,您可以更新 Cloud Dataproc 资源的标签。以下示例展示了如何更新 Cloud Dataproc 集群标签。

您也可以在一次操作中更新多个项目的标签。在此示例中,同时更新了多个 Cloud Dataproc 作业的标签。

通过使用标签,您可以过滤 Cloud Dataproc→列出集群Cloud Dataproc→列出作业页面中显示的 Cloud Dataproc 资源。在页面顶部,您可以使用搜索模式 labels.<labelname>=<value>,通过标签过滤资源。

后续步骤

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Cloud Dataproc 文档
需要帮助?请访问我们的支持页面