建立 Managed Service for Apache Spark 零規模叢集

本文說明如何建立 Managed Service for Apache Spark 零規模叢集。

Managed Service for Apache Spark 零規模叢集提供經濟實惠的方式,使用 Managed Service for Apache Spark 叢集。與標準 Managed Service for Apache Spark 叢集不同,Managed Service for Apache Spark 零規模叢集只需要次要工作站,且可縮減至零。

Managed Service for Apache Spark 零規模叢集非常適合做為長時間執行的叢集,例如代管 Jupiter 筆記本的叢集,這類叢集會經歷閒置期。這類政策會使用零規模自動調度資源政策,提升資源使用率。

特性和限制

Managed Service for Apache Spark 零規模叢集與標準叢集類似,但具有下列獨特特徵和限制:

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

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

  • ZERO_SCALE 叢集類型需要自動調度資源政策。

  • 機型必須選取彈性 VM

  • 不支援 Oozie 元件。

  • 無法透過 Google Cloud 控制台建立。

選用:設定自動調度資源政策

您可以設定自動調度資源政策,為零調度叢集定義次要工作資源調度。執行時請注意下列事項:

  • 將叢集類型設為 ZERO_SCALE
  • 僅為次要 worker 設定自動調度資源政策。

詳情請參閱「建立自動調度資源政策」。

建立 Managed Service for Apache Spark 零規模叢集

使用 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:Managed Service for Apache Spark 零規模叢集的名稱。
  • REGION可用的 Compute Engine 區域
  • AUTOSCALING_POLICY:自動調度資源政策的 ID 或資源 URI。
  • BUCKET_NAME:Cloud Storage bucket 的名稱。
  • MACHINE_TYPE:特定 Compute Engine 機型,例如 n1-standard-4e2-standard-8
  • RANK:定義機型清單的優先順序。

REST

使用 Managed Service for Apache Spark REST API cluster.create 要求建立零規模叢集:

後續步驟