Dataproc in GKE-Clustern skalieren

Wenn Sie einen Dataproc on GKE-Cluster skalieren möchten, aktualisieren Sie die Autoscaler-Konfiguration der Knotenpools , die mit den Spark-Treiber- oder Spark-Executor-Rollen verknüpft sind. Sie geben Dataproc on GKE Knotenpools und die zugehörigen Rollen an, wenn Sie einen Dataproc on GKE-Cluster erstellen.

Autoscaling für Knotenpools festlegen

Sie können die Grenzen für das Autoscaling von Dataproc on GKE-Knotenpools festlegen, wenn Sie einen virtuellen Dataproc on GKE-Cluster erstellen. Wenn nicht angegeben, werden Dataproc on GKE-Knotenpools mit Standardwerten automatisch skaliert (bei der GA-Version von Dataproc on GKE sind die Standardwerte auf „Minimum = 1“ und „Maximum = 10“ festgelegt, können sich aber ändern). Wenn Sie bestimmte Werte für das Autoscaling von Knotenpools festlegen möchten, geben Sie sie beim Erstellen des virtuellen Dataproc on GKE-Clusters an.

Autoscaling für Knotenpools aktualisieren

Verwenden Sie den folgenden GKE gcloud container node-pools update Befehl, um die Autoscaling-Konfiguration eines Dataproc on GKE-Knotenpools zu ändern.

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) \

Funktionsweise des Spark-Autoscalings

  1. Wenn ein Job gesendet wird, wird der Treiberpod für die Ausführung im Knotenpool geplant, der mit der Spark-Treiberrolle verknüpft ist.
  2. Der Treiberpod ruft den GKE-Planer auf, um Executor-Pods zu erstellen.
  3. Executor-Pods werden im Knotenpool geplant, der mit der Spark-Executorrolle verknüpft ist.
  4. Wenn die Knotenpools Kapazität für die Pods haben, werden die Pods sofort ausgeführt. Wenn die Kapazität nicht ausreicht, skaliert der GKE-Cluster-Autoscaler den Knotenpool nach oben, um die angeforderten Ressourcen bereitzustellen, bis zum vom Nutzer angegebenen Limit. Wenn Knotenpools überschüssige Kapazität haben, skaliert der GKE-Cluster-Autoscaler den Knotenpool auf das vom Nutzer angegebene Limit herunter.