Beispielkonfiguration für einen IBM MQ-Link
Diese Beispielkonfiguration veranschaulicht, wie Sie einen IBM MQ-Link verwenden können, um das Serviceintegrations-Messaging von WebSphere Application Server mit dem Messaging von IBM MQ zu verbinden.
Ein IBM MQ-Link verbindet eine Serviceintegrations-Messaging-Engine, die als Gateway-Messaging-Engine bezeichnet wird, mit einem IBM MQ-Warteschlangenmanager, der als Gateway-Warteschlangenmanager bezeichnet wird, oder einer Gruppe mit gemeinsamer Warteschlange. Alle Messaging-Engines im Service Integration Bus verwenden die Gateway-Messaging-Engine, um Nachrichten an das und vom IBM MQ-Netz zu senden. Alle Warteschlangenmanager nutzen den Gateway-Warteschlangenmanager, um Nachrichten an den und vom Service Integration Bus weiterzuleiten.
- Der Senderkanal des IBM MQ-Links transportiert Nachrichten zwischen Serviceintegration und IBM MQ.
- Der Empfängerkanal des IBM MQ-Links transportiert Nachrichten zwischen WebSphere MQ und Serviceintegration.

Falls Nachrichten nur in eine Richtung transportiert werden müssen, muss nur eine TCP/IP-Verbindung definiert werden. Ein Senderkanal des IBM MQ-Links in der Serviceintegration, der mit einem Empfängerkanal in IBM MQ verbunden ist, reicht beispielsweise aus, um den Nachrichtenfluss zwischen Serviceintegration und IBM MQ zu transportieren. In unserem Beispiel geht es allerdings um eine Konfiguration, die den Nachrichtenfluss in beide Richtungen zulässt.
Beispielkonfigurationskontext
- Ein Anwendungsserver mit dem Namen server1 befindet sich auf dem Knoten London. In einer Netzimplementierung könnte server1 einer von mehreren Servern in einer Zelle und einer von mehreren Servern in einem Cluster sein. Dieses Beispiel ist aber auch für eine Basisimplementierung mit nur einem Anwendungsserver gültig.
- Der Server in London hat den IP-Hostnamen LONDON.
- Der Service Integration Bus hat die Bezeichnung BUS1.
- Der Server server1 gehört zu BUS1. Die enthaltene Messaging-Engine hat den Namen London.server1-BUS1.
- Es gibt ein Busziel des Typs "Warteschlange" mit der Bezeichnung "ServiceIntegrationQueue1". Dieses Ziel ist eines der Ziele in BUS1.
- Die Warteschlangenmanager QM01 und QM02 sind Teil eines Netzes miteinander verbundener IBM MQ-Warteschlangenmanager und Gruppen mit gemeinsamer Warteschlange. Falls Sie nur einen Warteschlangenmanager haben, können Sie die Verweise auf QM02 in diesem Beispiel ignorieren.
- Der Server, auf dem QM01 ausgeführt wird, hat den IP-Hostnamen PARIS.
- Es gibt eine Warteschlange WMQ11 in QM01 und eine Warteschlange WMQ21 in QM02. Im IBM MQ-Netz könnten noch viele andere Warteschlangen definiert sein. Dieses Beispiel beschäftigt sich jedoch nur mit den beiden IBM MQ-Warteschlangen, auf die Sie von WebSphere Application Server aus zugreifen.
Wählen Sie London.server1-BUS1 als Gateway-Messaging-Engine und QM01 als Gateway-Warteschlangenmanager aus.
Beispielkonfiguration für die Verbindungen
- Ihr IBM MQ-Administrator verwendet Befehle, um die IBM MQ-Komponenten zu konfigurieren, die dem
IBM MQ-Link entsprechen:
- Senderkanal
- Empfängerkanal
- Übertragungswarteschlange
- Wenn Sie für die Konfiguration die Administrationskonsole von WebSphere Application Server verwenden, benötigen Sie die
folgenden Parameter:
- Eine fremde Busverbindung zwischen dem fremden Bus, der das Netz der IBM MQ-Warteschlangenmanager und -Gruppen mit gemeinsamer Warteschlange repräsentiert, und dem IBM MQ-Link, der die Verbindung zu diesem Netz repräsentiert
- JMS-Ziele, die Warteschlangen im IBM MQ-Netz bezeichnen
Nachdem Sie diese Komponenten konfiguriert und aktiviert haben, können Ihre Anwendungen Nachrichten zwischen dem Serviceintegrations-Messaging von WebSphere Application Server und dem Messaging von IBM MQ austauschen. Bei Bedarf können Sie zusätzliche Verwaltungsartefakte konfigurieren, die eine detailliertere Steuerung der Warteschlangen und Ziele ermöglichen. Lesen Sie hierzu den Artikel Beispielkonfiguration für die Ziele.
- IBM MQ-Befehl zum Konfigurieren des Senderkanals
Ihr IBM MQ-Administrator wählt den Namen für den Senderkanal aus, der in diesem Beispiel QM01.TO.BUS1 lautet.DEFINE CHL(QM01.TO.BUS1) + CHLTYPE(SDR) + TRPTYPE(TCP) + CONNAME('LONDON(5558)') + XMITQ(BUS1)
Der Parameter CONNAME gibt den IP-Host und den Port der Gateway-Messaging-Engine an.
Der Parameter XMITQ gibt den Namen der Übertragungswarteschlange an. Normalerweise ist dieser mit dem Namen des virtuellen Warteschlangenmanagers des Service Integration Bus identisch, der vorzugsweise mit dem Busnamen übereinstimmen sollte.
- IBM MQ-Befehl zum Konfigurieren des Empfängerkanals
Ihr IBM MQ-Administrator wählt den Namen für den Empfängerkanal aus, der in diesem Beispiel BUS1.TO.QM01 lautet.DEFINE CHL(BUS1.TO.QM01) + CHLTYPE(RCVR) + TRPTYPE(TCP)
- IBM MQ-Befehl zum Konfigurieren der Übertragungswarteschlange
Ihr IBM MQ-Administrator wählt den Namen für die Übertragungswarteschlange aus. Es ist günstig, wenn Sie den Namen des Service Integration Bus (BUS1) verwenden. Falls der Name des Service Integration Bus kein gültiger Name für einen IBM MQ-Warteschlangenmanager ist, muss der WebSphere Application Server-Administrator an dieser Stellen einen anderen Namen für einen virtuellen Warteschlangenmanager definieren.DEFINE QL(BUS1) + USAGE(XMITQ)
- IBM MQ-JMSAdmin-Befehl zum Konfigurieren des JMS-Ziels
Ihre IBM MQ-JMS-Anwendungen können dieses JMS-Ziel verwenden, um Nachrichten an das Service-Integration-Bus-Ziel ServiceIntegrationQueue1 in BUS1 zu senden.DEFINE Q(ServiceIntegrationQueue1) + QMGR(BUS1) + QUEUE(ServiceIntegrationQueue1)
- WebSphere Application Server-Parameter für die fremde Busverbindung
- Die fremde Busverbindung wird als Teil der Topologie des Service Integration Bus konfiguriert. In diesem Beispiel ist der Service Integration Bus BUS1 und für die fremde Busverbindung
werden die folgenden Einstellungen verwendet:
Der Assistent bietet weitere Optionen für das Publish/Subscribe-Messaging und für Sicherheit an. Übernehmen Sie für diese Einstellungen die Standardwerte.Einstellung Wert Busverbindungstyp Direkte Verbindung Typ des fremden Busses IBM MQ Messaging-Engine für die Verbindung London.server1-BUS1 Name des virtuellen Warteschlangenmanagers BUS1 (Verwenden Sie den Namen des lokalen Busses.) Name des fremden Busses QM01 (Verwenden Sie den Namen des Gateway-Warteschlangenmanagers von IBM MQ.) Name des MQ-Links TO.QM01 Nachrichtenfluss zwischen Service Integration Bus und IBM MQ aktivieren Ausgewählt (Standardeinstellung) Name des IBM MQ-Empfängerkanals BUS1.TO.QM01 Hostname PARIS Port 1414 Nachrichtenfluss zwischen IBM MQ und Service Integration Bus aktivieren Ausgewählt (Standardeinstellung) Name des IBM MQ-Senderkanals QM01.TO.BUS01
- WebSphere Application Server-Parameter für JMS-Ziele
- Konfigurieren Sie JMS-Ziele, damit JMS-Anwendungen der Serviceintegration
auf Warteschlangen im IBM MQ-Netz zugreifen können. In diesem Beispiel werden
JMS-Ziele für die Warteschlange WMQ11 im Warteschlangenmanager QM01 und für die Warteschlange
WMQ21 im Warteschlangenmanager benötigt.
Diese JMS-Ziele sind IBM MQ-Warteschlangen. Da Sie in diesem Beispiel über JMS-Programme der Serviceintegration auf diese Warteschlangen zugreifen, müssen Sie JMS-Ziele für den Standard-Messaging-Provider (Serviceintegration) und nicht für den JMS-Provider von IBM MQ definieren.
Konfigurieren Sie für WMQ11 die folgenden Parameter:
Übernehmen Sie für alle anderen Einstellungen die Standardwerte.Parameter Wert Name WMQ11 JNDI-Name jms/WMQ11 Busname QM01 Warteschlangenname WMQ11 Konfigurieren Sie für WMQ21 die folgenden Parameter:
Übernehmen Sie für alle anderen Einstellungen die Standardwerte.Parameter Wert Name WMQ21 JNDI-Name jms/WMQ21 Busname QM01 Warteschlangenname WMQ21@QM02
Beispielkonfiguration für die Ziele
- Das JMS-Ziel von IBM MQ zeigt auf eine IBM MQ-Warteschlange (die eigentlich eine ferne oder Aliaswarteschlange ist), die wiederum auf das Serviceintegrationsziel zeigt.
- Die JMS-Ziele der Serviceintegration zeigen auf Serviceintegrationsziele (die eigentlich fremde oder Aliasziele sind), die wiederum auf die IBM MQ-Warteschlangen zeigen.
Wann und wie ferne Warteschlangen und Aliaswarteschlangen definiert werden, ist ausführlich in der Dokumentation zu IBM MQ beschrieben.
- WebSphere Application Server-Parameter für fremde Ziele
- Konfigurieren Sie fremde Ziele für IBM MQ-Warteschlangen, damit Sie steuern können, wie
Serviceintegrationsanwendungen auf die einzelnen Warteschlangen zugreifen. Sie können beispielsweise
fremde Ziele für jede der beiden Warteschlangen konfigurieren und angeben, dass die Serviceintegration einen MQRFH2-Header in Nachrichten an die eine
Warteschlange aufnimmt, aber nicht in Nachrichten an die andere Warteschlange.
Fremde Ziele werden als Zielressourcen des Service Integration Bus konfiguriert.
Konfigurieren Sie für WMQ11 die folgenden Parameter:
Übernehmen Sie für alle anderen Einstellungen die Standardwerte.Parameter Wert ID WMQ11 Bus QM01 Konfigurieren Sie für WMQ21 die folgenden Parameter:
Wenn das fremde Ziel ein IBM MQ-Ziel ist, muss die ID im Format qName@qmName angegeben werden. Hierbei steht qName für den Namen der Warteschlange und qmName für den Namen des Warteschlangenmanagers. In diesem Beispiel lautet die ID für WMQ21 im Warteschlangenmanager QM02: WMQ21@QM02.Parameter Wert ID WMQ21@QM02 Bus QM01 Übernehmen Sie für alle anderen Einstellungen die Standardwerte.
Nachdem Sie diese fremden Ziele konfiguriert haben, können Sie beispielsweise die angepasste Eigenschaft _MQRFHAllowed für eines der Ziele oder für beide Ziele setzen.