建立 Dataproc 零規模叢集

本文說明如何建立 Dataproc 零規模叢集。

Dataproc 零規模叢集提供經濟實惠的 Dataproc 叢集使用方式。與至少需要兩個主要工作站的標準 Dataproc 叢集不同,Dataproc 零規模叢集只會使用次要工作站,且可縮減至零。

Dataproc 零規模叢集非常適合做為長時間執行的叢集,例如裝載 Jupiter 筆記本的叢集,這類叢集會經歷閒置期。透過零規模自動調度資源政策,提升資源使用率。

特性和限制

Dataproc 零規模叢集與標準叢集類似,但具有下列獨特特徵和限制:

  • 必須使用 2.2.53 以上版本的映像檔。
  • 僅支援次要工作者,不支援主要工作者。
  • 包含 YARN 等服務,但不支援 HDFS 檔案系統。

    • 如要將 Cloud Storage 做為預設檔案系統,請將 core:fs.defaultFS 叢集屬性設為 Cloud Storage 值區位置 (gs://BUCKET_NAME)。
    • 如果在建立叢集時停用元件,也請停用 HDFS。
  • 無法轉換為標準叢集,也無法從標準叢集轉換。

  • ZERO_SCALE 叢集類型必須有自動調度資源政策。

  • 必須選取彈性 VM 做為機器類型。

  • 不支援 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 要求建立零規模叢集:

後續步驟