若要實作 MQ 交互通訊,必須執行下列安裝作業:
在安裝及配置「遠端代理程式」之前,您應該先處理若干規劃注意事項,包括下列:
因為軸站台的執行者通常主要負責規劃整體處理程序,所以本附錄說明軸站台與輻站台兩者的必要安裝作業。
您的安全需求可能不同於您交易夥伴的安全需求,而且不同的交易夥伴之間可能有不同的需求。
請參閱安全,
以取得您在設定用來定義安全層次的配置內容時可以做出的部份選擇。
某些配置內容、埠號及部份安全設定需要在軸站台與輻站台之間取得協調。
在軸站台上,ICS 安裝程式會自動安裝 IBM Java ORB
及其「暫時性命名伺服器」。若要透過網際網路,在 ICS
與配接器之間通訊,請在輻站台和軸站台上,任用 OAport 配置參數來配置固定的埠。
- 註:
- 軸站台 (ICS) 的埠號可識別將資訊從配接器傳送至 ICS 的通道,
輻站台的埠號可識別將資訊從 ICS 傳送至配接器的通道,這二個埠號必須不同。
如需 OAport 參數的詳細資訊,請參閱OAport之下,ICS 配置檔 CORBA 區段中的說明。 您也必須設定「IBM MQ
觸發監視器」, 說明請見設定物件啟動常駐程式。
您可以配置「遠端代理程式」,與「原生 WebSphere MQ」或 HTTP/HTTPS
通訊協定搭配使用, 以透過網際網路來進行通訊。「原生 WebSphere
MQ」選項僅使用產品提供的軟體來進行配置。 HTTP 選項需要 WebSphere MQ Internet
Pass-Thru (MQIPT) 這項產品未隨附而需自行購買的軟體。本節將說明這兩種配置。
- 註:
- JMS 是這兩種配置都支援的唯一傳輸。
此配置選項使用 WebSphere MQ 通訊協定, 以及「安全 Socket 層
(SSL)」,以確保網際網路上的通訊安全。 這種配置可提供更好的效能;
然而,它需要在防火牆上開啟一個埠,以容許 WebSphere MQ
資料流量通過防火牆。請參閱圖 21。
在 InterChange Server
與遠端代理程式之間,必須配置雙向通訊的通道。需要兩個通道,每一個方向使用一個通道。
- 註:
- 下列步驟假設 MQ1 和 MQ2 正在埠 1414 上接聽。
- 通道 1 (MQ1 是傳送者,而 MQ2 是接收者):
- 在 MQ1 上建立 CHANNEL1 傳送者通道。
- 在 MQ2 上建立 CHANNEL1 接收者通道。
- 通道 2 (MQ2 是傳送者,而 MQ1 是接收者):
- 在 MQ2 上建立 CHANNEL2 傳送者通道。
- 在 MQ1 上建立 CHANNEL2 接收者通道。
- 配置防火牆 1,將埠 1414 上的資料流量轉遞至 MQ1,並配置防火牆 2,將埠 1414
上的資料流量轉遞至 MQ2。
- 註:
- 假設 MQ1 和 MQ2 正在埠 1414 上接聽,而且防火牆容許以埠轉遞為基礎的網路流量。
真正的配置可能有所變更,根據要使用的防火牆類型而定。
- 將傳送者「通道 1」的 IP 位址設為防火牆 2 的連線名稱。
- 將傳送者「通道 2」的 IP 位址設為防火牆 1 的連線名稱。
- 註:
- 請參閱配置 WebSphere MQ for JMS,以取得設定 JMS 佇列的相關資訊。
- MQ1 (Q1 用於伺服器對代理程式的通訊):
- 將 Q1 設為遠端佇列,將 Q2 設為本端佇列。
- 將 MQ2 設為 Q1 的遠端佇列管理程式。
- MQ2 (Q2 用於代理程式對伺服器的通訊):
- 將 Q2 設為遠端佇列,將 Q1 設為本端佇列。
- 將 MQ1 設為 Q2 的遠端佇列管理程式。
- 在每一個佇列管理程式上設定一個傳輸佇列。
- 在每一個佇列管理程式上設定一個無效字母佇列。
- 確認錯誤佇列是每一個佇列管理程式的本端佇列。
請參閱 RemoteAgentSample.mqsc 和
RemoteServerSample.mqsc 範例 Script (位於
ProductDir/mqseries),以瞭解如何配置佇列管理程式。
依預設,InterChange Server 會建立大小寫混合格式的佇列管理程式,
例如:ICS430.queue.manager。不過,當定義「遠端存取」所需的佇列時,
WebSphere MQ
會自動將所有佇列名稱轉換為大寫字體。遠端佇列定義的配置會區分大小寫,因此這會導致訊息無法從佇列流出的問題。
解決方案就是進入 MQ
Explorer,然後編輯所有「遠端佇列」定義的「遠端佇列管理程式」欄位,
使其具有適當的大小寫 (適用於這兩個「佇列管理程式」)。
InterChange Server 與配接器可位於企業內部網路,
並讓「應用程式伺服器」位於非管制區 (DMZ) 中。如果配接器未配置為遠端代理程式,
則這樣的配置是可以接受的。如果配接器與「應用程式伺服器」位於不同的子網路,
則配接器與應用程式伺服器進行通訊的唯一方法,就是明確地在配接器機器的
/etc/hosts 檔中併入「應用程式伺服器」的主機名稱及 IP 位址。
圖 21. 原生 WebSphere MQ 配置

此配置選項使用 WebSphere MQ Internet Pass Through (MQIPT),以使用 HTTP
透過網際網路來傳送資訊。 請參閱圖 22。
您必須定義路徑以指定埠、IP 位址及 SSL 明細。 在 InterChange Server
與代理程式之間必須配置雙向通訊的兩個路徑。每一個 MQIPT 中需要兩個路徑;
每一個方向使用一個路徑。
在 InterChange Server
與代理程式之間必須配置雙向通訊的通道。需要兩個通道,每一個方向使用一個通道。
- 註:
- 下列步驟假設 MQ1 和 MQ2 正在埠 1414 上接聽。
- 通道 1 (MQ1 是傳送者,而 MQ2 是接收者):
- 在 MQ1 上建立 CHANNEL1 傳送者通道。
- 在 MQ2 上建立 CHANNEL1 接收者通道。
- 通道 2 (MQ2 是傳送者,而 MQ1 是接收者):
- 在 MQ2 上建立 CHANNEL2 傳送者通道。
- 在 MQ1 上建立 CHANNEL2 接收者通道。
- 將 CHANNEL1 的 ConnectionName 設為 MQIPT1 的 IP 位址和 ListenerPort。
- 將 CHANNEL2 的 ConnectionName 設為 MQIPT2 的 IP 位址和 ListenerPort。
- 將防火牆 1 設為轉遞 ListenerPort 上的所有資料流量至 MQIPT1。
- 將防火牆 2 設為轉遞 ListenerPort 上的所有資料流量至 MQIPT2。
- 註:
- 請參閱配置 WebSphere MQ for JMS,以取得設定 JMS 佇列的相關資訊。
- MQ1 (Q1 用於伺服器對代理程式的通訊):
- 將 Q1 設為遠端佇列,將 Q2 設為本端佇列。
- 將 MQ2 設為 Q1 的遠端佇列管理程式。
- MQ2 (Q2 用於代理程式對伺服器的通訊):
- 將 Q2 設為遠端佇列,將 Q1 設為本端佇列。
- 將 MQ1 設為 Q2 的遠端佇列管理程式。
- 在每一個佇列管理程式上設定一個傳輸佇列。
- 在每一個佇列管理程式上設定一個無效字母佇列。
- 確認錯誤佇列是每一個佇列管理程式的本端佇列。
請參閱 RemoteAgentSample.mqsc 和
RemoteServerSample.mqsc 範例 Script (位於
ProductDir/mqseries) 來配置佇列管理程式。
- 路徑 1 - 設定下列參數:
- ListenerPort = MQIPT1 正在其上接聽來自佇列管理程式 MQ1 之訊息的埠
- Destination = MQIPT2 的網域名稱或 IP 位址
- DestinationPort = MQIPT2 接聽所在的埠
- HTTP = true
- HTTPS = true
- HTTPProxy = 防火牆 2 的 IP 位址 (若 DMZ 中有一個,則為 proxy 伺服器)
- SSLClient = true
- SSLClientKeyRing = 含有 MQIPT1 憑證之檔案的路徑
- SSLClientKeyRingPW = 含有 ClientKeyRing 檔案密碼之檔案的路徑
- SSLClientCAKeyRing = 含有授信 CA 憑證之檔案的路徑
- SSLClientCAKeyRingPW = 含有 CAKeyRing 檔案密碼之檔案的路徑
- 路徑 2 - 設定下列參數:
- ListenerPort = MQIPT1 正在其上接聽來自 MQIPT2 之訊息的埠
- Destination = 佇列管理程式 MQ1 的網域名稱或 IP 位址
- DestinationPort = MQ1 接聽所在的埠
- SSLServer = true
- SSLServerKeyRing = 含有 MQIPT1 憑證之檔案的路徑
- SSLServerKeyRingPW = 含有 ServerKeyRing 檔案密碼之檔案的路徑
- SSLServerCAKeyRing = 含有授信 CA 憑證之檔案的路徑
- SSLServerCAKeyRingPW = 含有 CAKeyRing 檔案密碼之檔案的路徑
- 路徑 1 - 設定下列參數:
- ListenerPort = MQIPT2 正在其上接聽 MQIPT1 的埠
- Destination = 佇列管理程式 MQ2 的網域名稱或 IP 位址
- DestinationPort = MQ2 接聽所在的埠
- SSLServer = true
- SSLServerKeyRing = 含有 MQIPT2 憑證之檔案的路徑
- SSLServerKeyRingPW = 含有 ServerKeyRing 檔案密碼之檔案的路徑
- SSLServerCAKeyRing = 含有授信 CA 憑證之檔案的路徑
- SSLServerCAKeyRingPW = 含有 CAKeyRing 檔案密碼之檔案的路徑
- 路徑 2 - 設定下列參數:
- ListenerPort = MQIPT2 正在其上接聽來自 MQ2 之訊息的埠
- Destination = MQIPT1 的網域名稱或 IP 位址
- DestinationPort = MQIPT1 接聽所在的埠
- HTTP = true
- HTTPS = true
- HTTPProxy = 防火牆 1 的 IP 位址 (若 DMZ 中有一個,則為 proxy 伺服器)
- SSLClient = true
- SSLClientKeyRing = 含有 MQIPT2 憑證之檔案的路徑
- SSLClientKeyRingPW = 含有 ClientKeyRing 檔案密碼之檔案的路徑
- SSLClientCAKeyRing = 含有授信 CA 憑證之檔案的路徑
- SSLClientCAKeyRingPW = 含有 CAKeyRing 檔案密碼之檔案的路徑
圖 22. HTTP/HTTPS 配置

對於部份應用程式,需要若干設定作業,才能啟用連接器代理程式來建立、
更新、擷取或刪除應用程式中的資料。這種設定作業在特定連接器的適當 IBM
文件中有所說明。
「遠端代理程式」需要下列項目執行中:
- InterChange Server (ICS) -- 在軸站台上執行,並包含連接器控制程式
- 連接器代理程式 -- 通常是在輻站台上執行
- IBM ORB Transient Naming Server -- 在軸站台和輻站台上執行
- 佇列管理程式 -- 在已配置通道的情況下,於軸站台和輻站台上執行
- WebSphere MQ Internet Pass-Thru (MQIPT) -- 用於 HTTP/HTTPS 配置選項
