Erste Schritte mit vertikaler Autoskalierung für Amazon on EMR EKS - Amazon EMR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erste Schritte mit vertikaler Autoskalierung für Amazon on EMR EKS

Einreichen eines Spark-Auftrags mit vertikalem Auto Scaling

Wenn Sie einen Job über den einreichen StartJobRunAPI, fügen Sie dem Treiber die folgenden beiden Konfigurationen für Ihren Spark-Job hinzu, um die vertikale Autoskalierung zu aktivieren:

"spark.kubernetes.driver.label.emr-containers.amazonaws.com/dynamic.sizing":"true", "spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing.signature":"YOUR_JOB_SIGNATURE"

Im obigen Code aktiviert die erste Zeile die vertikale Auto-Scaling-Funktion. Die nächste Zeile ist eine erforderliche Signaturkonfiguration, mit der Sie eine Signatur für Ihren Auftrag auswählen können.

Weitere Informationen zu diesen Konfigurationen und akzeptablen Parameterwerten finden Sie unter Konfiguration von vertikalem Autoscaling für Amazon EMR auf EKS. Standardmäßig wird Ihr Auftrag beim vertikalen Auto Scaling im Modus Nur für Überwachung aus gesendet. In diesem Überwachungsstatus können Sie Ressourcenempfehlungen berechnen und anzeigen, ohne ein Auto Scaling durchführen zu müssen. Weitere Informationen finden Sie unter Modi für vertikales Auto Scaling.

Das folgende Beispiel veranschaulicht, wie Sie einen start-job-run-Beispiel-Befehl mit vertikalem Auto Scaling abschließen:

aws emr-containers start-job-run \ --virtual-cluster-id $VIRTUAL_CLUSTER_ID \ --name $JOB_NAME \ --execution-role-arn $EMR_ROLE_ARN \ --release-label emr-6.10.0-latest \ --job-driver '{ "sparkSubmitJobDriver": { "entryPoint": "local:///usr/lib/spark/examples/src/main/python/pi.py" } }' \ --configuration-overrides '{ "applicationConfiguration": [{ "classification": "spark-defaults", "properties": { "spark.kubernetes.driver.label.emr-containers.amazonaws.com/dynamic.sizing": "true", "spark.kubernetes.driver.annotation.emr-containers.amazonaws.com/dynamic.sizing.signature": "test-signature" } }] }'

Überprüfen der vertikalen Auto-Scaling-Funktionalität

Um zu überprüfen, ob das vertikale Auto Scaling für den eingereichten Auftrag korrekt funktioniert, rufen Sie mit kubectl die benutzerdefinierte verticalpodautoscaler-Ressource ab und sehen Sie sich Ihre Skalierungsempfehlungen an. Mit dem folgenden Befehl werden beispielsweise Empfehlungen für den Beispielauftrag aus dem Abschnitt Einreichen eines Spark-Auftrags mit vertikalem Auto Scaling abgefragt:

kubectl get verticalpodautoscalers --all-namespaces \ -l=emr-containers.amazonaws.com/dynamic.sizing.signature=test-signature

Die Ausgabe dieser Abfrage sollte wie folgt aussehen:

NAME MODE CPU MEM PROVIDED AGE ds-jceyefkxnhrvdzw6djum3naf2abm6o63a6dvjkkedqtkhlrf25eq-vpa Off 3304504865 True 87m

Wenn Ihre Ausgabe nicht ähnlich aussieht oder einen Fehlercode enthält, finden Sie weitere Schritte zur Behebung des Problems in Fehlerbehebung von Amazon EMR im vertikalen Auto Scaling von EKS.