本文說明如何建立 Dataproc 零規模叢集。
Dataproc 零規模叢集提供使用 Dataproc 叢集的經濟實惠方式。與標準 Dataproc 叢集不同,Dataproc 零規模叢集只會使用次要工作站,可縮減至零。
Dataproc 零規模叢集非常適合用於長時間執行的叢集,這些叢集會經歷閒置期,例如代管 Jupiter 筆記本的叢集。這些資源可透過使用零規模自動調度資源政策,改善資源使用率。
特性和限制
Dataproc 零規模叢集與標準叢集相似,但具有下列獨特特性和限制:
- 需要映像檔版本
2.2.53
以上版本。 - 僅支援次要工作站,不支援主要工作站。
包含 YARN 等服務,但不支援 HDFS 檔案系統。
- 如要將 Cloud Storage 做為預設檔案系統,請將
core:fs.defaultFS
叢集屬性設為 Cloud Storage 值區位置 (gs://BUCKET_NAME
)。 - 如果您在建立叢集期間停用元件,也請停用 HDFS。
- 如要將 Cloud Storage 做為預設檔案系統,請將
無法轉換為標準叢集,也無法從標準叢集轉換。
需要為
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-4
、e2-standard-8
。 - RANK:定義機器類型清單的優先順序。
REST
使用 Dataproc REST API cluster.create 要求建立零規模叢集:
- 將
secondaryWorkerConfig
的ClusterConfig.ClusterType
設為ZERO_SCALE
。 - 使用
ZERO_SCALE
自動調度資源政策 ID 設定AutoscalingConfig.policyUri
。 - 新增
core:fs.defaultFS:gs://BUCKET_NAME
SoftwareConfig.property。請將 BUCKET_NAME 改成您的 Cloud Storage 值區名稱。
後續步驟
- 進一步瞭解 Dataproc 自動調度資源。