创建 Dataproc 零规模集群

本文档介绍如何创建 Dataproc 零规模集群。

Dataproc 零规模集群提供了一种经济实惠的 Dataproc 集群使用方式。与需要至少两个主要工作器的标准 Dataproc 集群不同,Dataproc 零规模集群仅使用辅助工作器,这些工作器可以缩减到零。

Dataproc 零规模集群非常适合用作长时间运行且会经历空闲期的集群,例如托管 Jupiter Notebook 的集群。它们通过使用零扩缩自动扩缩政策来提高资源利用率。

特征和限制

Dataproc 零规模集群与标准集群类似,但具有以下独特特征和限制:

  • 需要使用映像版本 2.2.53 或更高版本。
  • 仅支持辅助工作器,不支持主要工作器。
  • 包含 YARN 等服务,但不支持 HDFS 文件系统。

    • 如需将 Cloud Storage 用作默认文件系统,请将 core:fs.defaultFS 集群属性设置为 Cloud Storage 存储桶位置 (gs://BUCKET_NAME)。
    • 如果您在创建集群期间停用了某个组件,也请停用 HDFS。
  • 无法转换为标准集群或从标准集群转换而来。

  • 对于 ZERO_SCALE 集群类型,需要自动扩缩政策。

  • 需要选择灵活虚拟机作为机器类型。

  • 不支持 Oozie 组件。

  • 无法通过 Google Cloud 控制台创建。

可选:配置自动扩缩政策

您可以配置自动伸缩政策,以定义零规模集群的辅助工作器伸缩。执行此操作时,请注意以下事项:

  • 将集群类型设置为 ZERO_SCALE
  • 仅为辅助工作器配置配置自动扩缩政策。

如需了解详情,请参阅创建自动扩缩政策

创建 Dataproc 零规模集群

使用 gcloud CLI 或 Dataproc API 创建零规模集群。

gcloud

在终端窗口或 Cloud Shell 中本地运行 gcloud dataproc clusters create 命令。

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    --cluster-type=zero-scale \
    --autoscaling-policy=AUTOSCALING_POLICY \
    --properties=core:fs.defaultFS=gs://BUCKET_NAME \
    --secondary-worker-machine-types="type=MACHINE_TYPE1[,type=MACHINE_TYPE2...][,rank=RANK]"
    ...other args

替换以下内容:

  • CLUSTER_NAME:Dataproc 零规模集群的名称。
  • REGION可用的 Compute Engine 区域
  • AUTOSCALING_POLICY:自动扩缩政策的 ID 或资源 URI。
  • BUCKET_NAME:Cloud Storage 存储桶的名称。
  • MACHINE_TYPE:特定的 Compute Engine 机器类型,例如 n1-standard-4e2-standard-8
  • RANK:定义一系列机器类型的优先级。

REST

使用 Dataproc REST API cluster.create 请求创建零规模集群:

后续步骤