WebSphere MQ fornisce una funzione, denominata triggering, che abilita un'applicazione ad essere avviata automaticamente quando vi sono messaggi disponibili da recuperare. Il prodotto WebSphere InterChange Server utilizza un OAD con trigger MQ per gestire le attività seguenti:
Questo OAD con trigger MQ utilizza la funzione di triggering diWebSphere MQ per riavviare un agente connettore.
L'impostazione di questo OAD richiede i passaggi seguenti:
L'utilizzo di OAD con trigger MQ richiede l'installazione di MQ Trigger Monitor. Questo monitor viene installato come parte del software WebSphere MQ, descritto in Installazione IBM WebSphere MQ. E' necessario che tale software sia già esistente sulla macchina su cui risiede l'agente connettore.
In Figura 20, ogni agente connettore partecipa a ogni avvio remoto o riavvio automatico o ad entrambi. Su ogni macchina su cui risiede un agente connettore partecipe, è necessario che sia già esistente il software WebSphere MQ. E' bene notare che è richiesto un solo MQ Trigger Monitor su una macchina, a prescindere di quanti agenti connettori esistano su tale macchina. Se sulla macchina locale è installato WebSphere MQ Server, il comando runmqtrm richiama il daemon MQ Trigger Monitor. Se sulla macchina locale è installato il client WebSphere MQ, il comando runmqtmc richiama il daemon MQ Trigger Monitor.
Figura 20. Esempio di configurazione OAD
La configurazione Figura 20 potrebbe richiedere l'installazione del software seguente:
Utilizzo di runmqtrm per richiamare il daemon MQ Trigger Monitor su UNIX. L'utente mqm è il proprietario del Trigger Monitor, ma potrebbe non disporre dei percorsi corretti e delle correte autorizzazioni per eseguire i comandi iniziati dall'utentecwadmin. Per evitare ciò, eseguire una copia del comando runmqtrm che è quindi dissociato dall'utente e dal gruppo mqm e viene utilizzato solo per l'iniziazione del daemon diMQ Trigger Monitor. I comandi necessari sono:
cp /opt/mqm/bin/runmqtrm /opt/mqm/bin/runmqtrm2
per copiare runmqtrm in runmqtrm2 e
chmod ug-s /opt/mqm/bin/runmqtrm2
per rimuovere le impostazioni utente e di gruppo dal comando runmqtrm2.
Il comando runmqtrm2 è quindi utilizzato per richiamare il daemon MQ Trigger Monitor, posseduto dall'utente che emetterà il comando runmqtrm2. A questo punto si crea un problema secondario, poichè l'utente che emette il comando non dispone di tutte le autorizzazioni richieste per accedere al gestore code, alla coda di iniziazione, (dove si trovano i messaggi trigger) e alla coda dead letter. Utilizzare il programma "setmqaut" per fornire ai gruppi scelti l'autorizzazione all'accesso agli oggetti MQ, ma notare che è impossibile fornire l'autorizzazione ad utenti singoli.
Ad esempio, è necessario che un utente membro del gruppo"appdev" esegua runmqtrm2 . Il nome del gestore code è"CALVIN", la coda di iniziazione è denominata "CALVIN.INITQ" e la codadead letter è "SYSTEM.DEAD.LETTER.QUEUE". Eseguire i comandi seguenti per dare al gruppo "appdev" l'autorizzazione ad eseguire il Trigger Monitor:
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
Ogni membro del gruppo dispone dell'autorizzazione ad accedere al gestore code.
Per ulteriori informazioni sul modo in cui installareWebSphere MQ, consultare Installazione IBM WebSphere MQ.
Per supportare OAD con trigger MQ, è necessario che il gestore code di
WebSphere MQ venga configurato per gestire i trigger. Questo supporto
richiede che gli oggetti relativi aWebSphere MQ in Tabella 30 vengano creato sulla stessa macchina che contiene
InterChange Server ed il gestore code di WebSphere MQ.
Tabella 30. Oggetti relativi aWebSphere MQ per OAD con trigger WebSphere MQ
Servizio | Funzione di accesso database |
---|---|
Coda di iniziazione | Riceve i messaggi trigger per MQ Trigger Monitor dal gestore code MQ. |
Definizione processo | Descrive il processo che richiama MQ Trigger Monitor quando recupera un messaggio trigger dalla coda di iniziazione. |
Coda di attivazione adattatore | Riceve gli eventi di triggering per un adattatore da InterChange Server. Questi messaggi vengono scelti dalla struttura del connettore associato alla coda. |
Per creare questi oggetti relativi ad MQ, eseguire lo script mqtriggersetup, che risiede nella directory secondaria ProductDir/bin . Eseguire questo script sulla macchina che contiene il connettore per cui si desidera abilitare la funzione di riavvio automatico e remoto.
mqtriggersetup WICS_queueManagerName connName connStartupScript
dove:
Ad esempio, per impostare il riavvio automatico e remoto per un connettore denominato MyConn, è possibile utilizzare quello seguente denominato mqtriggersetup :
mqtriggersetup InterChangeServer.queue.manager MyConn /IBM/WebSphereBI/connectors/MyConn/connector_manager_MyConn.sh
E' necessario eseguire lo scriptmqtriggersetup sulla macchina che contiene il gestore code MQ. eseguire lo script mqtriggersetup per ogni connettore che risiede sulla stessa macchina. Inoltre, è necessario eseguire questo script per ogni connettore che risiede su una macchina remota.
Per avviare l'OAD con trigger MQ, è necessario avviare esplicitamente MQ Trigger Monitor con il corretto script si avvio. E' necessario avviare un MQ Trigger Monitor su ogni macchina su cui risiedono i connettori.
Quando si installa WebSphere MQ, il programma di installazione installa lo script i file runmqtrm o runmqtmc. Questi script avviano MQ Trigger Monitor come parte di un rilascio di un server MQ e di un client MQ, rispettivamente. Ad esempio, il comando seguente avvia MQ Trigger Monitor (in un rilascio Server MQ):
runmqtrm -m WICS_queueManager -q INITIATION.QUEUE
dove WICS_queueManager è il nome del gestore code MQ dell'InterChange Server.
Per configurare un connettore singolo in modo che utilizzi il riavvio automatico e remoto, è necessario eseguire queste operazioni:
Per ulteriori informazioni sul modo in cui impostare queste proprietà, consultare la sezione System Administration Guide.