Netflix-Entwickler wollen Scheduling für Mesos-Frameworks verbessern

Der Wunsch nach einer Möglichkeit, Cluster auf Grundlage der Menge der von ihnen benutzten Ressourcen skalieren zu können und den Scheduling-Prozess zu optimieren waren Netflix' Motivation, die neue Bibliothek Fenzo zu entwickeln.

In Pocket speichern vorlesen Druckansicht
Netflix-Entwickler wollen mit Fenzo Scheduling für Mesos-Frameworks verbessern
Lesezeit: 2 Min.
Von
  • Julia Schmidt

Mit Fenzo hat der Streaming-Dienst-Anbieter Netflix die Quellen eines weiteren seiner Projekte freigegeben. Bei ihm handelt es sich um eine Java-Bibliothek, die einen Task Scheduler für Apache-Mesos-Frameworks umsetzt. Zu seinen Stärken zählt wohl, dass er die Anzahl der ausführenden Hostsysteme automatisch auf Grundlage der Nachfrage nach Ressourcen anpassen kann und Plug-ins unterstützt, mit denen man die Wahl der Ressourcen und die Platzierung der Tasks beeinflussen kann.

Darüber hinaus soll Fenzo Optionen umfassen, mit denen sich Fehler bei der Zuweisung von Ressourcen aufdecken lassen, wodurch Nutzer in der Lage sein sollen, herauszufinden, warum sich manche Tasks nicht starten lassen. Die Bibliothek ist im Auslieferungszustand mit Plug-ins ausgestattet, die beim Optimieren der Task-Platzierung helfen sollen. Darunter fallen unter anderem ein Bin Packing Fitness Calculator, der Tasks auf so wenige Hosts wie möglich verteilen kann, und einige Constraint-Plug-ins, mit denen Anwender etwa festlegen können, das ein Host nur eine einzige ihm zugewiesene Task ausführen soll oder nur die Hosts eingesetzt werden, die spezielle Attribute aufweisen.

Apache Mesos ist ein quelloffenes System zur Verwaltung von Clustern, das von seinen Machern als Kernel für verteilte Systeme beschrieben wird. Es besteht aus einem Master-Daemon, der Slave-Daemons verwaltet, die auf Cluster-Knoten laufen, und Mesos-Anwendungen, sogenannten Frameworks, die Tasks auf den Slaves laufen lassen. Der Master soll dazu dienen, Ressourcen wie CPU-Rechenzeit zwischen mehreren Anwendungen aufzuteilen. (jul)