Dataproc in GKE-Clustern skalieren

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

Autoscaling für Knotenpool festlegen

Sie können die Grenzen für die automatische Skalierung von Knotenpools in Dataproc on GKE festlegen, wenn Sie einen virtuellen Dataproc-Cluster in GKE erstellen. Wenn nicht angegeben, Dataproc in GKE-Knotenpools werden automatisch mit Standardwerten skaliert (ab Dataproc im GA-Release von GKE werden Standardeinstellungen auf Mindestwert = 1 und Höchstwert = 10 festgelegt (Änderungen vorbehalten). Wenn Sie bestimmte Mindest- und Maximalwerte für das Autoscaling von Knotenpools erhalten möchten, legen Sie diese beim Erstellen Ihres Dataproc-Clusters in GKE fest.

Autoscaling von Knotenpools aktualisieren

Verwenden Sie den folgenden GKE-Befehl gcloud container node-pools update, um die Autoscaling-Konfiguration eines Dataproc-Knotenpools in GKE 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 eingereicht wird, wird der Treiber-Pod für die Ausführung im Knotenpool geplant, der mit der Spark-Treiberrolle verknüpft ist.
  2. Der Treiber-Pod ruft den GKE-Planer auf, um Ausführende-Pods zu erstellen.
  3. Executor-Pods werden im Knotenpool geplant, der mit der Spark-Executor-Rolle 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 bis zum vom Nutzer angegebenen Limit hoch, um die angeforderten Ressourcen bereitzustellen. Wenn Knotenpools überschüssige Kapazität haben, skaliert das GKE-Cluster-Autoscaling der Knotenpool auf sein benutzerdefiniertes Limit herunterskaliert.