Befehlszeilenbasiertes Clientdienstprogramm "batchManager"
Das befehlszeilenbasierte Clientdienstprogramm "batchManager" stellt eine Befehlszeilenschnittstelle für die Verwaltung Ihrer Stapeljobs bereit, die in Liberty ausgeführt werden.
Das befehlszeilenbasierte Clientdienstprogramm "batchManager" interagiert mit dem Stapelmanager über die REST-API des Stapelmanagers. Um "batchManager" verwenden zu können, muss der Stapelmanager auf Ihrem Liberty-Server ausgeführt werden. Verwenden Sie die Funktion für Stapelverwaltung, um den Liberty-Stapelmanager zu installieren und zu aktivieren.
SSL-Konfiguration
Das befehlszeilenbasierte Clientdienstprogramm "batchManager" kommuniziert mit dem Stapelmanager über eine SSL-Verbindung. Um die SSL-Kommunikation mit einem Stapelmanager, der auf einem Liberty-Server ausgeführt wird, zu vereinfachen, muss das Dienstprogramm das SSL-Zertifikat des Liberty-Servers überprüfen können.
Wenn das SSL-Zertifikat von einer anerkannten Zertifizierungsstelle (CA, Certificate Authority) signiert wurde, kann das Dienstprogramm das Zertifikat der Zertifizierungsstelle überprüfen. Eine weitere Konfiguration ist nicht erforderlich.
- Geben Sie die Option --trustSslCertificates an, mit der das Dienstprogramm so konfiguriert wird, dass es alle SSL-Zertifikate anerkennt.
- Nehmen Sie das SSL-Zertifikat des Servers in den Truststore des Dienstprogramms auf.
Wenn Sie die Option --trustSslCertificates angeben, erkennt das Dienstprogramm alle SSL-Zertifikate an, die es empfängt. Es ist keine weitere Konfiguration notwendig.
Wenn Sie die Option auswählen, mit der das SSL-Zertifikat des Servers in den Truststore des Dienstprogramms aufgenommen wird, müssen Sie das Dienstprogramm konfigurieren, damit es den zugehörigen Truststore finden kann. Das Dienstprogramm ist eine eigenständige Java-Funktion des Typs "main". Sie konfigurieren SSL mit Systemeigenschaften wie javax.net.ssl.truststore.
$ export JVM_ARGS="-Djavax.net.ssl.trustStore=/path/to/server/keystore.jks"
$ batchManager submit ...
$ keytool -export -alias default -file server.crt -keystore [server-dir]/resources/security/key.jks -storepass Liberty
$ keytool -import -alias server_crt -file server.crt -keystore /path/to/truststore.jks -storepass passw0rd
$ export JVM_ARGS="-Djavax.net.ssl.trustStore=/path/to/truststore.jks"
$ batchManager submit ...
Befehle und Syntax
Das befehlszeilenbasierte Clientdienstprogramm "batchManager" stellt Befehle bereit, mit denen Sie Jobs übergeben, stoppen, erneut starten und den Status von Jobs überprüfen können.
Die allgemeine Syntax des Dienstprogramms lautet wie folgt:
$ batchManager [Befehl] [Optionen]
Geben Sie den folgenden Befehl ein, um eine Liste der verfügbaren Befehle anzuzeigen:
$ batchManager help
Geben Sie den folgenden Befehl ein, um die Beschreibung und Optionen für einen bestimmten Befehl anzuzeigen:
$ batchManager help [Befehl]
Das folgende Beispiel veranschaulicht die Übergabe eines Jobs und das Warten auf den Abschluss des Jobs:
$ batchManager submit \
--batchManager=<Host>:<Port>
--user=[Berechtigungsnachweise für die Anmeldung beim Stapelmanager]
--password=[Berechtigungsnachweise für die Anmeldung beim Stapelmanager]
--applicationName=[Anwendungsname, der beim Packen der Stapelanwendung verwendet wird]
--jobXMLName=[XML-Basisdateiname des Jobs im Anwendungsverzeichnis für Stapeljobs]
--wait
jobParametersFile und jobPropertiesFile
jobParametersFile=Dateipfad1,Dateipfad2,Dateipfad3
jobPropertiesFile=Dateipfad1,Dateipfad2,Dateipfad3
--jobParametersFile=<Dateipfad1> überschreibt beispielsweise
--jobParametersFile=<Dateipfad1>,<Dateipfad2> in der Steuerungseigenschaftendatei.
Der generierte Parameter ist --jobParametersFile=<Dateipfad1>. ![[17.0.0.3 und höher]](../ng_v17003plus.gif)
Steuerungseigenschaften und Jobparameter
Zum Erstellen einer Einzelgruppe von Jobparametern beginnt das Programm mit einer leeren Gruppe und lädt dann fortlaufend Eigenschaften aus unterschiedlichen Quellen. Das Programm führt anschließend die Eigenschaften in einem einzigen Satz zusammen. Nachdem das Programm alle Quellen gelesen und geladen hat, übergibt das Programm den Einzelsatz aus Eigenschaften als Jobparameter an die Jobübergabe.
Dieser Satz aus Eigenschaften wird durch Zusammenführung in dieser Reihenfolge erstellt. Wenn dieselbe Eigenschaft mit demselben Schlüssel geladen und mehr als einmal festgelegt wird, überschreibt der spätere Wert den früheren Wert. Die späteren Schritte in dieser Reihenfolge haben Vorrang vor den früheren Schritten.
- Wenn der Parameter --jobParametersFile nicht als Befehlszeilenparameter enthalten ist, treten die folgenden Aktionen in aufsteigender Reihenfolge auf:
- Die Inhalte der Dateien, die über die Steuerungseigenschaft --jobParametersFile referenziert werden, werden geladen und zusammengeführt. Diese Steuerungseigenschaft wird möglicherweise nur in einer einzigen Steuerungseigenschaftendatei angezeigt oder sie wird möglicherweise in mehr als einer Datei angezeigt, wenn die Eigenschaft überschrieben wurde.
- Die Jobparameter für die Steuerungseigenschaften werden geladen und zusammengeführt. Diese Eigenschaften sind in der Steuerungseigenschaftendatei wie folgt strukturiert: --jobParameter=key=value.
- Die Jobparameter für die Befehlszeile werden geladen und zusammengeführt.
- Wenn der Parameter --jobParametersFile nicht als Befehlszeilenparameter enthalten ist, treten die folgenden Aktionen in aufsteigender Reihenfolge auf:
- Die Inhalte der Dateien, die über die Steuerungseigenschaft --jobParametersFile referenziert werden, werden geladen und zusammengeführt. Diese Steuerungseigenschaft wird möglicherweise nur in einer einzigen Steuerungseigenschaftendatei angezeigt oder sie wird möglicherweise in mehr als einer Datei angezeigt, wenn die Eigenschaft überschrieben wurde.
- Die Jobparameter für die Steuerungseigenschaften werden geladen und zusammengeführt. Diese Eigenschaften sind in der Steuerungseigenschaftendatei wie folgt strukturiert: --jobParameter=key=value.
- Die Jobparameter für die Befehlszeile werden geladen und zusammengeführt.
Diese Struktur tritt auf, weil der --controlPropertiesFile-Parameter in der Rangfolge den Befehlszeilenargumenten untergeordnet ist. Die Ebene, auf der Sie den --jobParametersFile-Parameter angeben, bestimmt die Rangfolgenebene dieser Dateien.
Während das Programm jede Datei in der Reihenfolge liest und lädt, fasst das Programm die gefundenen Eigenschaften --jobParametersFile und --jobPropertiesFile in einer einzigen Eigenschaft zusammen. Jede Eigenschaft ist ein Alias der anderen. Eine Überschreibung mit einem Befehlszeilenargument oder einer Steuerungseigenschaft mit einem dieser Aliase ersetzt eine Instanz dieser beiden, wenn sie in einer früheren überschriebenen Steuerungseigenschaftendatei enthalten sind.
Befehlszeilenbasiertes Clientdienstprogramm "batchManager" unter z/OS mit einem SAF-Schlüsselring
Um den SAF-Schlüsselring (System Authorization Facility) Ihres Liberty-Servers mit dem befehlszeilenbasierten Clientdienstprogramm "batchManager" zu verwenden, müssen Sie die java.environment-Einstellungen festlegen. Außerdem müssen Sie eine Benutzer-ID festlegen, die im Aufruf des befehlszeilenbasierten Clientdienstprogramms "batchManager" angegeben wird, um den SAF-Schlüsselring zu lesen.
Die folgenden Befehle berechtigen den Benutzer, den SAF-Schlüsselring zu lesen.
PermitID_des_Schlüsselringeigners.Schlüsselringname.LST CLASS(RDATALIB)ID(Benutzer-ID)ACCESS(UPDATE)
SETROPTS RACLIST(RDATALIB) GENERIC(RDATALIB) REFRESH
Weitere Informationen finden Sie in der Veröffentlichung "z/OS Security Server RACF Command Language Reference" für WebSphere Application Server.
Das folgende Beispiel definiert die Umgebungsvariable JVM_ARGS.
export JVM_ARGS="-Djavax.net.ssl.trustStore=safkeyring://ID_des_Schlüsselringeigners/Schlüsselringname
-Djavax.net.ssl.trustStoreType=JCERACFKS -Djavax.net.ssl.keyStore=safkeyring://ID_des_Schlüsselringeigners/Schlüsselringname
-Djavax.net.ssl.keyStoreType=JCERACFKS -Dcom.ibm.ssl.keyStoreFileBased=false -Dcom.ibm.ssl.trustStoreFileBased=false
-Djava.protocol.handler.pkgs=com.ibm.crypto.provider -Djavax.net.ssl.keyStorePassword=password"
Rückgabecodes
Code | Beschreibung |
---|---|
0 | Die Task wurde normal beendet. |
20 | Ein erforderliches Argument wurde nicht angegeben. |
21 | Es wurde ein nicht erkanntes Argument angegeben. |
22 | Es wurde ein ungültiges Argument angegeben. |
255 | Es ist ein unbekannter Fehler aufgetreten. |
Code | Beschreibung |
---|---|
33 | Der Job wurde gestoppt. |
34 | Der Job wurde nicht erfolgreich ausgeführt. |
35 | Der Job wurde erfolgreich ausgeführt. |
36 | Der Job wurde abgebrochen. |