調度 Dataproc on GKE 叢集資源

如要調度 Dataproc on GKE 叢集的資源,請更新與 Spark 驅動程式或 Spark 執行器角色相關聯的節點集區自動配置器設定。建立 Dataproc on GKE 叢集時,您可以指定 Dataproc on GKE 節點集區及其相關聯的角色

設定節點集區自動調度資源

建立 Dataproc on GKE 虛擬叢集時,您可以設定 Dataproc on GKE 節點集區自動調度資源的界限。如未指定界線,Dataproc on GKE 節點集區會使用預設值自動調度資源 (在 Dataproc on GKE 正式發布版,預設值設為最小值 = 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 自動調度資源的運作方式

  1. 提交工作時,系統會調度驅動程式 pod,在與 Spark 驅動程式角色相關聯的節點集區中執行。
  2. 驅動程式 pod 會呼叫 GKE 調度器,建立執行器 pod。
  3. 執行器 pod 會分配在與 Spark 執行器角色相關聯的節點集區上。
  4. 如果節點集區有 pod 容量,pod 會立即開始執行。 如果容量不足,GKE 叢集自動配置器會擴充節點集區,提供要求的資源,但不會超過使用者指定的上限。當節點集區的容量過剩時,GKE 叢集自動配置器會將節點集區縮減至使用者指定的限制。