WebSphere MQ stellt eine Auslöserfunktion zur Verfügung, mit der eine Anwendung automatisch gestartet werden kann, wenn Nachrichten für den Abruf verfügbar sind. Das Produkt "WebSphere InterChange Server" verwendet einen durch MQ ausgelösten Objektaktivierungsdämon (Object Activation Daemon - OAD), um die folgenden Tasks zu verarbeiten:
Dieser durch MQ ausgelöste OAD verwendet die Auslöserfunktion von WebSphere MQ, um einen Connectoragenten erneut zu starten.
So konfigurieren Sie diesen OAD:
Die Verwendung des durch MQ ausgelösten OAD macht die Installation der MQ-Funktion "Trigger Monitor" erforderlich. Diese Überwachungsfunktion wird zusammen mit der WebSphere MQ-Software wie unter IBM WebSphere MQ installieren beschrieben installiert. Diese Software muss sich auf derselben Maschine wie der Connectoragent befinden.
In Abbildung 20 nimmt jeder Connectoragent an fernen Startvorgängen und/oder an automatischen Startvorgängen teil. Die WebSphere MQ-Software muss sich auf jeder Maschine befinden, auf der sich ein teilnehmender Connectoragent befindet. Bitte beachten Sie, dass auf einer Maschine nur eine MQ-Funktion "Trigger Monitor" benötigt wird, und zwar ungeachtet dessen, wie viele Connectoragenten sich auf dieser Maschine befinden. Falls auf der lokalen Maschine WebSphere MQ Server installiert ist, ruft der Befehl runmqtrm den Dämon für die MQ-Funktion "Trigger Monitor" auf. Falls auf der lokalen Maschine der WebSphere MQ-Client installiert ist, ruft der Befehl runmqtmc den Dämon für die MQ-Funktion "Trigger Monitor" auf.
Abbildung 20. Beispiel für OAD-Konfiguration
Die in Abbildung 20 dargestellte Konfiguration würde die Installation der folgenden Software erforderlich machen:
Wenn der Dämon für die MQ-Funktion "Trigger Monitor" unter UNIX mit dem Befehl runmqtrm aufgerufen wird, entsteht eine Problemsituation. Der Benutzer mqm ist Eigner der Funktion "Trigger Monitor", hat jedoch möglicherweise nicht die korrekten Pfade und Berechtigungen für die Ausführung von Befehlen, die beispielsweise durch den Benutzer cwadmin gestartet werden. Um dieses Problem zu umgehen, erstellen Sie eine Kopie des Befehls runmqtrm, die dann vom Benutzer und der Gruppe mqm isoliert und ausschließlich für die Initialisierung des Dämons für die MQ-Funktion "Trigger Monitor" verwendet wird. Die erforderlichen Befehle lauten:
cp /opt/mqm/bin/runmqtrm /opt/mqm/bin/runmqtrm2
zum Kopieren von runmqtrm nach runmqtrm2 und
chmod ug-s /opt/mqm/bin/runmqtrm2
zum Entfernen der Benutzer- und Gruppeneinstellungen aus dem Befehl runmqtrm2.
Anschließend wird der Befehl runmqtrm2 verwendet, um den Dämon für die MQ-Funktion "Trigger Monitor" aufzurufen. Eigner ist dann der Benutzer, der den Befehl runmqtrm2 abgesetzt hat. Auf diese Weise entsteht ein sekundäres Problem, weil der aufrufende Benutzer möglicherweise nicht alle Berechtigungen besitzt, die für den Zugriff auf den Warteschlangenmanager, auf die Initialisierungswarteschlange (in die die Auslösenachrichten gestellt werden) und die Warteschlange für nicht zustellbare Post erforderlich sind. Mit dem Programm "setmqaut" können Sie ausgewählten Gruppen die Berechtigung für den Zugriff auf MQ-Objekte erteilen. Bitte beachten Sie jedoch, dass die Erteilung von Berechtigungen an Einzelbenutzer nicht möglich ist.
Beispiel: Ein Benutzer, der zur Gruppe "appdev" gehört, muss den Befehl runmqtrm2 ausführen. Der Name des Warteschlangenmanagers lautet "CALVIN", die Initialisierungswarteschlange heißt "CALVIN.INITQ", und die Warteschlange für nicht zustellbare Post hat den Namen "SYSTEM.DEAD.LETTER.QUEUE". Führen Sie die folgenden Befehle aus, um der Gruppe "appdev" die Berechtigung für die Ausführung von Trigger Monitor zu erteilen:
setmqaut -m CALVIN -t qmgr -g appdev +connect +inq
setmqaut -m CALVIN -t queue -n CALVIN.INITQ -g appdev +get
setmqaut -m CALVIN -t queue -n SYSTEM.DEAD.LETTER.QUEUE -g appdev +put +inq +passall
Bitte beachten Sie, dass in diesem Fall alle Mitglieder der Gruppe auf den Warteschlangenmanager zugreifen können.
Weitere Informationen zur Installation von WebSphere MQ finden Sie unter IBM WebSphere MQ installieren.
Damit der durch MQ ausgelöste OAD unterstützt wird, muss der
Warteschlangenmanager von WebSphere MQ für die Verarbeitung von Auslösern
konfiguriert werden. Diese Unterstützung erfordert es, dass die
WebSphere MQ-bezogenen Objekte, die in Tabelle 30 angegeben sind, auf derselben Maschine erstellt werden, auf
der sich InterChange Server und der Warteschlangenmanager von WebSphere MQ
befinden.
Tabelle 30. WebSphere MQ-bezogene Objekte für durch WebSphere MQ ausgelösten OAD
Service | Zweck des Datenbankzugriffs |
---|---|
Initialisierungswarteschlange | Empfängt Auslösenachrichten für die MQ-Funktion "Trigger Monitor" vom MQ-Warteschlangenmanager. |
Prozessdefinition | Beschreibt den Prozess, den die MQ-Funktion "Trigger Monitor" aufruft, wenn sie eine Auslösenachricht von der Initialisierungswarteschlange empfängt. |
Warteschlange für Adapteraktivierung | Empfängt Auslöseereignisse für einen Adapter von InterChange Server. Diese Nachrichten werden durch das Connector-Framework desjenigen Connectors aufgenommen, der der Warteschlange zugeordnet ist. |
Zur Erstellung dieser MQ-bezogenen Objekte führen Sie das Script mqtriggersetup aus, das sich im Unterverzeichnis PRODUKTVERZ/bin befindet. Führen Sie dieses Script auf der Maschine aus, die den Connector enthält, für den Sie die Funktion zum automatischen und fernen Neustart aktivieren wollen.
mqtriggersetup wics-warteschlangenmanager connectorname connectorstartscript
Hierbei gilt Folgendes:
Um beispielsweise den automatischen und fernen Neustart für einen Connector namens "MyConn" zu konfigurieren, verwenden Sie den folgenden Aufruf von mqtriggersetup:
mqtriggersetup InterChangeServer.queue.manager MyConn /IBM/WebSphereBI/connectors/MyConn/connector_manager_MyConn.sh
Sie müssen das Script mqtriggersetup auf der Maschine ausführen, die den MQ-Warteschlangenmanager enthält. Führen Sie das Script mqtriggersetup für jeden Connector aus, der sich auf der gleichen Maschine befindet. Außerdem müssen Sie dieses Script für jeden Connector ausführen, der sich auf einer fernen Maschine befindet.
Um den durch MQ ausgelösten OAD zu starten, müssen Sie die MQ-Funktion "Trigger Monitor" mit dem entsprechenden Startscript explizit starten. Auf jeder Maschine, auf der sich Connectors befinden, müssen Sie eine MQ-Funktion "Trigger Monitor" starten.
Bei der Installation von WebSphere MQ installiert das Installationsprogramm die Dateien runmqtrm oder runmqtmc. Diese Scripts starten die MQ-Funktion "Trigger Monitor" als Teil des MQ-Server- bzw. MQ-Client-Release. Der folgende Befehl startet beispielsweise die MQ-Funktion "Trigger Monitor" (in einem MQ-Server-Release):
runmqtrm -m wics-warteschlangenmanager -q INITIATION.QUEUE
Hierbei steht wics-warteschlangenmanager für den Namen des MQ-Warteschlangenmanagers für InterChange Server.
So konfigurieren Sie einen einzelnen Connector so, dass er den automatischen und fernen Neustart verwendet:
Informationen zum Festlegen dieser Eigenschaften enthält das Handbuch System Administration Guide.