2016-11-14 7 views
2

Ich habe ein Cluster von Maschinen, die ich mit anderen Prozessen teilen muss. Sagen wir einfach, ich bin keine nette Person und möchte, dass meine Spark-Executor-Prozesse eine höhere Priorität haben als die Prozesse anderer Leute. Wie kann ich das einstellen?Gibt es eine Möglichkeit, die Nice-Einstellung von Spark-Executor-Prozessen einzustellen?

Ich bin mit Standalone-Modus, v2.01, auf RHEL7 laufen

+0

[Der Standalone-Cluster-Modus unterstützt derzeit nur einen einfachen FIFO-Scheduler für alle Anwendungen.] (Https://spark.apache.org/docs/2.0.1/spark-standalone.html#resource-scheduling) –

+0

I don ' t bedeuten eine Priorität gegenüber anderen Funkenanwendungen auf dem gleichen Master, ich meine andere Prozesse auf den Knoten. Zum Beispiel andere Prozesse, auf denen Anwendungen wie HTCondor ausgeführt werden. – ThatDataGuy

+0

Eine Möglichkeit besteht darin, Kerne im Cluster zu überzeichnen. – mrsrinivas

Antwort

0

alle Ressourcen auf die Funken Anwendung zuweisen lassen minimal Ressource für os benötigt auszuführen.

ein einfaches Szenario: Man stelle sich einen Cluster mit sechs Knoten NodeManagers (Yarn Mode), die jeweils mit 16 Kernen und 64GB Speicher ausgeführt wird. Die NodeManager-Kapazitäten yarn.nodemanager.resource.memory-mb und yarn.nodemanager.resource.cpu-vcores sollten wahrscheinlich auf 63 * 1024 = 64512 (Megabyte) bzw. 15 gesetzt werden. Wir vermeiden die Zuweisung von 100% der Ressourcen an YARN-Container, da der Knoten einige Ressourcen benötigt, um die OS- und Hadoop-Daemons auszuführen. In diesem Fall hinterlassen wir ein Gigabyte und einen Kern für diese Systemprozesse.

+0

Der Funke-Cluster verwendet kein YARN. Zweitens ist es bereits mit anderen Arbeitslasten beschäftigt, die in keiner Weise mit Funken zusammenhängen. – ThatDataGuy

Verwandte Themen