Warteschlangenmanager für Telemetrie unter Linux und AIX® konfigurieren

Führen Sie die folgenden manuellen Schritte aus, um einen Warteschlangenmanager für die Ausführung von IBM® MQ Telemetryzu konfigurieren. Sie können eine automatisierte Prozedur ausführen, um eine einfachere Konfiguration mithilfe der IBM MQ Telemetry -Unterstützung für MQ Explorereinzurichten.

Vorbereitungen

  1. Informationen zur Installation von IBM MQ und des Features IBM MQ Telemetry finden Sie unter IBM MQ Telemetryinstallieren .
  2. Erstellen und starten Sie einen WS-Manager. Der WS-Manager wird in dieser Task als qMgr bezeichnet.
  3. Im Rahmen dieser Task konfigurieren Sie den Telemetrieservice (MQXR). Die MQXR-Eigenschaftseinstellungen werden in einer plattformspezifischen Eigenschaftendatei gespeichert: mqxr_unix.properties. Normalerweise müssen Sie die MQXR-Eigenschaftendatei nicht direkt bearbeiten, da fast alle Einstellungen über MQSC-Verwaltungsbefehle oder MQ Explorer konfiguriert werden können. Wenn Sie die Datei direkt bearbeiten möchten, stoppen Sie den Warteschlangenmanager, bevor Sie Ihre Änderungen vornehmen. Siehe MQXR-Eigenschaften.

Informationen zu dieser Task

Die IBM MQ Telemetry -Unterstützung für MQ Explorer enthält einen Assistenten und eine Beispielbefehlsprozedur sampleMQM. Sie richten eine Erstkonfiguration mit der Gastbenutzer-ID ein (siehe Installation von IBM MQ Telemetry mithilfe von MQ Explorer -und IBM MQ Telemetry Transport -Beispielprogrammen überprüfen).

Führen Sie die Schritte in dieser Task aus, um IBM MQ Telemetry manuell mit verschiedenen Berechtigungsschemas zu konfigurieren.

Verfahren

  1. Öffnen Sie ein Befehlsfenster auf dem Telemetriemusterverzeichnis.

    Das Verzeichnis "telemetry samples" ist /opt/mqm/mqxr/samples.

  2. Erstellen Sie die Übertragungswarteschlange für Telemetrie.
    echo "DEFINE QLOCAL('SYSTEM.MQTT.TRANSMIT.QUEUE') USAGE(XMITQ) MAXDEPTH(100000)" | runmqsc qMgr
    

    Wenn der Telemetrieservice (MQXR) zuerst gestartet wird, wird SYSTEM.MQTT.TRANSMIT.QUEUE erstellt.

    Sie wird in dieser Task manuell erstellt, da SYSTEM.MQTT.TRANSMIT.QUEUE vorhanden sein muss, bevor der Telemetrieservice (MQXR) gestartet wird, um den Zugriff auf sie zu autorisieren.

  3. Standardübertragungswarteschlange festlegen

    Wenn der Telemetrieservice (MQXR) zum ersten gestartet wird, ändert er den Warteschlangenmanager nicht, um SYSTEM.MQTT.TRANSMIT.QUEUE zur Standardübertragungswarteschlange zu machen.

    Um SYSTEM.MQTT.TRANSMIT.QUEUE zu der Standardübertragungswarteschlange zu machen, ändern Sie die Eigenschaft der Standardübertragungswarteschlange. Ändern Sie die Eigenschaft mit MQ Explorer oder mit dem Befehl im folgenden Beispiel:
    echo "ALTER QMGR DEFXMITQ('SYSTEM.MQTT.TRANSMIT.QUEUE')" | runmqsc qMgr
    

    Das Ändern der Standardübertragungswarteschlange kann die vorhandene Konfiguration beeinträchtigen. Die Änderung der Standardübertragungswarteschlange in SYSTEM.MQTT.TRANSMIT.QUEUE hat den Grund, dass das Senden von Nachrichten direkt an MQTT -Clients vereinfacht wird. Ohne Änderung der Standardübertragungswarteschlange müssen Sie für jeden Client, der MQ Explorer -Nachrichten empfängt, eine Definition einer fernen Warteschlange hinzufügen; siehe Nachricht direkt an einen Client senden.

  4. Befolgen Sie eine Prozedur unter MQTT-Clients für den Zugriff auf IBM MQ -Objekte berechtigen , um eine oder mehrere Benutzer-IDs zu erstellen. Die Benutzer-IDs verfügen über die Berechtigung zum Veröffentlichen, Subskribieren und Senden von Veröffentlichungen an MQTT -Clients.
  5. Installieren Sie den Telemetrieservice (MQXR).
    cat /opt/<install_dir>/mqxr/samples/installMQXRService_unix.mqsc | runmqsc qMgr
    

    Siehe auch den Beispielcode in Abbildung 1.

  6. Starten Sie den Service.
    echo "START SERVICE(SYSTEM.MQXR.SERVICE)" | runmqsc qMgr
    

    Der Telemetrieservice (MQXR) wird automatisch gestartet, wenn der WS-Manager gestartet wird.

    Diese Task wird manuell in dieser Task gestartet, da der Warteschlangenmanager bereits ausgeführt wird.

  7. Konfigurieren Sie MQ Explorerso, dass Telemetriekanäle Verbindungen von MQTT -Clients akzeptieren.

    Die Telemetriekanäle müssen so konfiguriert sein, dass ihre Identitäten eine der in Schritt 4 definierten Benutzer-IDs sind.

    Siehe auch DEFINE CHANNEL (MQTT).

  8. Überprüfen Sie die Konfiguration, indem Sie den Beispielclient ausführen.

    Damit der Beispielclient mit Ihrem Telemetriekanal arbeiten kann, muss der Kanal den Client für die Veröffentlichung, Subskription und Empfang von Veröffentlichungen berechtigen. Der Beispielclient stellt die Verbindung zum Telemetriekanal an Port 1883 standardmäßig her. Siehe auch IBM MQ Telemetry Transport -Beispielprogramme.

Beispiel

Abbildung 1 zeigt den Befehl runmqsc zum manuellen Erstellen der SYSTEM.MQXR.SERVICE unter Linux®.
Abbildung 1. installMQXRService_unix.mqsc
DEF	SERVICE(SYSTEM.MQXR.SERVICE) +
CONTROL(QMGR) +
DESCR('Manages clients using MQXR protocols such as MQTT') +
SERVTYPE(SERVER) +
STARTCMD('+MQ_INSTALL_PATH+/mqxr/bin/runMQXRService.sh') +
STARTARG('-m +QMNAME+ -d "+MQ_Q_MGR_DATA_PATH+" -g "+MQ_DATA_PATH+"') +
STOPCMD('+MQ_INSTALL_PATH+/mqxr/bin/endMQXRService.sh') +
STOPARG('-m +QMNAME+') +
STDOUT('+MQ_Q_MGR_DATA_PATH+/mqxr.stdout') +
STDERR('+MQ_Q_MGR_DATA_PATH+/mqxr.stderr')