如要調度 Dataproc on GKE 叢集的資源,請更新與 Spark 驅動程式或 Spark 執行器角色相關聯的節點集區自動調度器設定。建立 Dataproc on GKE 叢集時,您可以指定 Dataproc on GKE 節點集區及其相關聯的角色。
設定節點集區自動調度資源
建立 Dataproc on GKE 虛擬叢集時,可以設定 Dataproc on GKE 節點集區自動調度資源的界限。如未指定,Dataproc on GKE 節點集區會使用預設值自動調整大小 (在 Dataproc on GKE GA 版本中,預設值設為最小值 = 1 和最大值 = 10,這些值可能會變更)。如要取得節點集區自動調度資源的特定最小值和最大值,請在建立 Dataproc on GKE 虛擬叢集時設定這些值。
更新節點集區自動調度資源
使用下列 GKE gcloud container node-pools update
指令,變更 Dataproc on GKE 節點集區的自動調整資源配置設定。
gcloud container node-pools update NODE_POOL_NAME \ --cluster=GKE_CLUSTER_NAME \ --region=region \ --enable-autoscaling \ --min-nodes=min nodes (must be <= max-nodes) \ --max-nodes=max nodes (must be >= min-nodes) \
Spark 自動調度資源的運作方式
- 提交工作時,系統會排程驅動程式 Pod,在與 Spark 驅動程式角色相關聯的節點集區中執行。
- 驅動程式 Pod 會呼叫 GKE 排程器,建立執行器 Pod。
- 執行器 Pod 會排定在與 Spark 執行器角色相關聯的節點集區上。
- 如果節點集區有足夠的 Pod 容量,Pod 會立即開始執行。 如果容量不足,GKE 叢集自動調度器會擴充節點集區,提供要求的資源,但不會超過使用者指定的上限。如果節點集區的容量過剩,GKE 叢集自動調度器會將節點集區縮減至使用者指定的限制。