- Open Source Job Scheduler
-
Dieser Artikel wurde aufgrund von inhaltlichen Mängeln auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen und beteilige dich an der Diskussion! (+)
Begründung: Seit 2008 enthält der Artikel keine Angaben zur Verbreitung, Rezeption und Entstehungsgeschichte der Software, wie von WP:RSW gefordert. Sollte sich diesbezüglich nichts ergänzen lassen, wäre gemäß WP:RSW#Relevanz ein Löschantrag der nächste Schritt. --dealerofsalvation 17:02, 26. Aug. 2011 (CEST)Open Source Job Scheduler Entwickler Software- und Organisations-Service GmbH Aktuelle Version 1.3.6
(13. Juli 2009)Betriebssystem Linux, Solaris, HP-UX, AIX, Windows Kategorie job scheduling Lizenz GPL oder proprietäre Lizenz[1] Deutschsprachig ja jobscheduler.sf.net Open Source Job Scheduler ist eine Open-Source-Lösung für Enterprise Level Job Scheduling und wird zur Automation von Prozessen eingesetzt. Der Job Scheduler wird verwendet, um ausführbare Dateien und Shell-Skripte zu starten und um Datenbank-Prozeduren automatisch auszuführen.
Jobs können als Web Services zur Integration mit anderen Applikationen konfiguriert werden und ermöglichen Interoperabilität mit anderen Applikationen. Der Job Scheduler kann Informationen in einem der unterstützten Datenbanksysteme speichern: MySQL, PostgreSQL, Firebird, SQL Server, Oracle, DB2 und Adaptive Server Enterprise.
Inhaltsverzeichnis
Standard-Funktionalitäten
- Starten von ausführbaren Dateien, Shell-Scripten und Datenbank-Prozeduren
- Auslösen von Job-Starts per Kalender, durch Überwachung eingehender Dateien in Verzeichnissen und per API durch andere Applikationen
- Jobs als Web-Services konfigurieren, um Interoperabilität mit anderen Applikationen, z. B. serviceorientierte Architekturen (BPEL) zu ermöglichen
Betriebsweise
- Der Job Scheduler wird als Unix-Daemon oder Windows-Systemdienst zur Stapelverarbeitung (batch) betrieben.
- Die Kontrolle von Jobs wird per Kommandozeile oder durch eine eingebaute grafische Oberfläche ermöglicht.
- Für die Konfiguration von Jobs ist ein grafischer XML-Editor und ein Web-GUI verfügbar.
Verarbeitung von Jobs
- Jobs sind die kleinste Einheit für die Verarbeitung von ausführbaren Dateien, Shell-Skripten, Datenbank-Prozeduren sowie von Job-Implementierungen, die auf dem Job Scheduler API basieren.
- Jobs können unabhängig voneinander ausgeführt werden. Abhängig vom Verarbeitungsergebnis (Erfolg, Fehler, exit code) eines Jobs können beliebig viele Folge-Jobs gestartet werden.
- Jobs können parallel mit einer konfigurierbaren Anzahl gleichzeitig ablaufender Tasks verarbeitet werden.
- Job-Ketten können wie ein Fließband mit mehreren Job-Knoten betrachtet werden, die nacheinander durchlaufen werden. Jeder Job ist exakt einem Schritt bei der Verarbeitung einer Job-Kette zugeordnet. In Abhängigkeit vom Verarbeitungsergebnis der einzelnen Job-Knoten können Verzweigungen einer Job-Kette konfiguriert werden.
- Job-Starts können durch das Überwachen (monitoring) von Verzeichnissen ausgelöst werden, auf diese Weise werden Altsysteme in die Geschäftsprozesse eingebunden, die häufig auf Datenaustausch per File Transfer Protocol basieren.
- Job-Starts können durch den eingebauten Kalender ausgelöst werden, per Kommandozeile oder über eine Web-Oberfläche.
- Andere Applikationen können Job-Starts via API veranlassen.
Funktionalitäten
Der Open Source Job Scheduler wird mit einer Auswahl von Standard-Funktionalitäten ausgeliefert, z. B.:
- Job-Aktivitäten können auf bestimmte Zeitfenster eingeschränkt werden. Der Job Scheduler unterstützt eine beliebige Anzahl von Zeitfenstern, die nach individuellen Anforderungen konfiguriert werden können.
- Die Ausführung von Jobs kann priorisiert werden.
- Die Job-Historie kann optional in einer Datenbank gespeichert werden.
- Job-Sperren (Locks) verhindern, dass zwei Jobs parallel auf die gleiche Ressource zugreifen, z. B. eine Datenbank oder eine Datei. Die Sperre bewirkt, dass nur jeweils ein Prozess den exklusiven Zugriff auf die Ressource erhält und zwar so lange wie die Sperre besteht.
- Der Job Scheduler wird mit einer Auswahl von Standard-Jobs ausgeliefert, z. B. für Log Rotation und Cleanup, Sanity Checking, Ausführung von Jobs über Remote Job Scheduler, FTP File Transfer.
- Versand von Benachrichtigungen über den Status eines Jobs per E-Mail, konfigurierbare Protokollierung und Überwachung von Protokollen.
- API zur Implementierung von Jobs und Job Scripten, z. B. für komplexe bedingte Verarbeitung.
- Unterschiedliche graphische Oberflächen: Eingebautes GUI zur Job-Kontrolle sowie eine graphischen Oberfläche zur Konfigurationen mehrerer Job Scheduler auf unterschiedlichen Server-Systemen.
Zusätzliche Funktionalitäten
- High-availability Cluster
- Ein Job Scheduler Backup Cluster garantiert den ausfallsicheren Einsatz eines (primären) Job Schedulers mit automatischem Fail-over. Ein ausfallsicheres System besteht aus einem primären Job Scheduler und mindestens einem Backup, bei dem die Job Scheduler auf unterschiedlichen Server-Systemen ablaufen.
- Load Balancing
- Wenn ein hohes Datenaufkommen zeitaufwändig verarbeitet werden muss, dann können mehrere Job Scheduler die Verarbeitungszeit erheblich verkürzen und gleichzeitig die Verfügbarkeit erhöhen. Beim Load Balancing werden Aufgaben von mehreren Job Schedulern übernommen, die die Verarbeitung auf verteilten Rechnersystemen abwickeln.
- Software Stacks
- sind Implementierungen, bei denen Open Source Komponenten Dritter eingesetzt werden, folgende Stacks sind verfügbar:
- Netzwerk Monitore wie z. B. Nagios
- Reporting Tools wie z. B. JasperReports
- Secure Shell Remote Execution, SCP Secure Copy und SFTP Secure File Transfer.
Implementierung
Der Job Scheduler ist in C++ geschrieben, Standard-Jobs für die Auslieferung sind mit Java implementiert.
Der Open Source Job Scheduler wird an spezielle Geschäftsprozessvorgaben angepasst. Enterprise Level Support ist verfügbar.
Unterstützte Plattformen
Betriebssysteme:
- Windows 2000/2003/2008/XP/Vista
- Linux ab Kernel 2.4
- Solaris 8/9/10 (SPARC, x86)
- HP-UX 11 (PA-RISC, IA-64)
- AIX 5.3
Datenbank Systeme:
- Oracle 8.1.7, 9.2, 10g, 11g
- SQL-Server 2000, 2005, 2008
- DB2 8.x
- Adaptive Server Enterprise ASE 15
- MySQL version 4.1, 5.x
- PostgreSQL 8.x
- Firebird 1.5
Weblinks
Einzelnachweise
- ↑ Lizenz-Modelle. Job Scheduler. Abgerufen am 16. September 2007.
Wikimedia Foundation.