Anforderungsbasierte Jobplanung
Stapelverarbeitung unterstützt implizite und explizite Jobplanungsanforderungen, die basierend auf einem Anwendungsnamen mit Endpunkten verglichen werden.
Abgleich impliziter Anforderungen
Eine implizite Planungsanforderung bestimmt, welche Anwendungen ein Job ausführt. In Java EE-Anwendungen (Java™ Platform, Enterprise Edition) sind die Anwendungsnamen aller Java EE-Anwendungen, die in der Planungsdomäne installiert sind, über die Produktkonfiguration bekannt, da alle Java EE-Anwendungen über Produktverwaltungsschnittstellen in dieser Umgebung installiert werden.
Für Stapeldienstprogramme können diese Informationen nicht vorausgesetzt werden. Standardmäßig sind diese Informationen nicht verfügbar, da Stapeldienstprogramme nicht über die Produktverwaltungsschnittstellen installiert werden. Für diese Anwendungen kann der Administrator der Stapelkomponente optional eine auf dem Anwendungsnamen basierende Endpunktauswahl für bestimmte Knoten aktivieren, indem er die angepasste Knoteneigenschaft "grid.apps" definiert.
if any node published grid.apps then
attempt to match job using app names
if there is a match then
if job has required-capabilities then
candidate-nodes= $(apply required-capabilities to the set of nodes that have
matching apps)
else
candidate-nodes= $(nodes that have matching apps)
endifelse (no match based on grid.apps)
if job has required-capabilities then
candidate-nodes= $(apply required-capabilities to all nodes)
else
candidate-nodes= $(all nodes)
endif endifelse (no nodes publish grid.apps)
if job has required-capabilities then
candidate-nodes= $(apply required-capabilities to all nodes)
else
candidate-nodes= $(all nodes)
endifendif
Java EE-Anwendungen arbeiten bei der Endpunktauswahl immer mit dem Abgleich von Anwendungsnamen.Abgleich expliziter Anforderungen
- Angepasste Knoteneigenschaften
- Metadateneigenschaften des Knotens, z. B. com.ibm.websphere.xdProductVersion
- Knotenname und Hostname des Knotens
Vorrangregelung für Anforderungsabgleich
Für die Ermittlung infrage kommender Endpunkte werden impliziter und expliziter Abgleich kombiniert. Für Java EE-Jobs wird die implizite Anforderung (der Anwendungsname) als zusätzliche erforderliche Funktion behandelt. Sie wird logisch allen explizit angegebenen Anforderungen hinzugefügt.
Für Stapeldienstprogrammjobs ist ein Anwendungsname eine bedingte Anforderung, die nur für Stapeldienstprogrammknoten gilt, die ihre installierten Anwendungen über die Eigenschaft "grid.apps" bereitstellen. Die Stapeldienstprogrammjobs, für die keine Anwendungsnamensübereinstimmung gefunden wird und die keine expliziten Anforderungen definieren, kommen für die Zuteilung zu jedem Stapeldienstprogrammknoten infrage, der seine Anwendungen nicht bereitstellt.