单节点集群

单节点集群是指只有一个节点的 Dataproc 集群。这个单一节点充当您的 Dataproc 集群的主实例和工作器。虽然单节点集群只有一个节点,但大多数 Dataproc 的概念和功能仍然适用,下面列出的内容除外。

单节点 Dataproc 集群在许多情况下都能发挥作用,其中包括:

  • 试用新版本的 Spark 和 Hadoop 或其他开源组件
  • 构建概念验证 (PoC) 演示
  • 轻量级数据科学
  • 小规模非关键数据处理
  • 有关 Spark 和 Hadoop 生态系统的培训

单节点集群语义

以下语义适用于单节点 Dataproc 集群:

  • 单节点集群的配置与多节点 Dataproc 集群相同,并且包含 HDFS 和 YARN 等服务。
  • 对于初始化操作,单节点集群被报告为主实例节点。
  • 单节点集群显示 0 个工作器,因为单节点同时充当主实例和工作器。
  • 单节点集群的主机名遵循模式 clustername-m。 您可以使用此主机名,通过 SSH 访问或连接到节点上的 Web 界面
  • 单节点集群无法升级为多节点集群。创建后,单节点集群被限制为包含一个节点。同样地,多节点集群不能缩减为单节点集群。

限制

  • 不建议将单节点集群用于大规模并行数据处理。如果您的需求超出单节点集群上的资源,建议您使用多节点 Dataproc 集群。
  • n1-standard-1 机器类型的资源有限,不建议用于 YARN 应用。
  • 由于集群中只有一个节点,因此单节点集群不具备高可用性
  • 单节点集群不能使用抢占式虚拟机

创建单节点集群

gcloud 命令

您可以使用 gcloud 命令行工具创建单节点 Dataproc 集群。如需创建单节点集群,请将 --single-node 标志传递给 gcloud dataproc clusters create 命令。

gcloud dataproc clusters create cluster-name \
    --region=region \
    --single-node \
    ... other args

REST API

您可以通过 Dataproc REST API 使用 clusters.create 请求创建单节点集群。在提出此请求时,您必须满足以下要求:

  1. 将属性 "dataproc:dataproc.allow.zero.workers":"true" 添加到集群请求的 SoftwareConfig
  2. 不要提交 workerConfigsecondaryWorkerConfig 的值(请参阅 ClusterConfig)。

控制台

您可以创建单节点集群,只需从 Dataproc 创建集群页面上的集群模式选择器中选择“单节点(1 个主实例,0 个工作器)”即可。