上一章 目錄 索引 下一章 |
Sun Java System Message Queue 3.5 SP1 管理指南

> ## 第 3 章
> Message Queue 管理工作和工具

> Sun Java™ System Message Queue 管理由一些工作以及一些用於執行這些工作的工具組成。

> 本章首先提供了管理工作簡介，然後描述了管理工具，並重點介紹指令行管理公用程式的共用功能。

> ##

> Message Queue 管理工作

> 您需要執行的特定工作取決於您是處於開發環境還是生產環境。

> ### 開發環境

> 在開發環境中，工作重點為 Message Queue 用戶端應用程式的程式設計。Message Queue 訊息伺服器主要用於測試。在開發環境中強調靈活性，且通常您會採取以下作業：

> - 使用最小管理- 主要包含為開發人員啟動代理程式以用於測試。
> - 使用資料倉庫的預設實施 (內建基於檔案的持續性)、使用者儲存庫 (基於檔案的使用者儲存庫)、存取控制特性檔案與物件倉庫 (檔案系統倉庫)。這些預設實施通常足以用於開發測試。
> - 如果您要執行多重代理程式測試，則可能不使用主代理程式。
> - 您通常會使用自動建立的目標，而不明確建立目標
> - 您可能需要以用戶端程式碼創設受管理物件，而非使用中央管理的受管理物件。

> ### 生產環境

> 在生產環境中，由於必須可靠地部署和執行應用程式，因此管理會變得更加重要。您必須執行的管理工作取決於訊息傳送系統的複雜性及其必須支援的應用程式的複雜性。但是一般來說，這些工作可以群組為配置作業與維護作業。

> #### 設定作業

> ##### 若要設定生產環境

> 通常，您必須至少執行以下設定作業中的一些作業 (如果不是全部)：

> - 管理員安全性 (受保護的管理工具使用)：
> - 確定已啟動管理連接服務 (請參閱表 2-3)
> - 授權：允許存取用於特定個人或管理群組的管理連接服務 (請參閱「連接存取控制」)
> - 如果授權給群組，則請確定管理員屬於管理群組。
> - 基於檔案的使用者儲存庫：有一個預設的 admin (管理) 群組。確定管理員在 admin (管理) 群組中，或在使用預設管理使用者時，變更管理密碼 (請參閱「變更預設管理員密碼」)。
> - LDAP 使用者儲存庫：確定管理員在 admin (管理) 群組中
> - 一般安全性 (請參閱第 8 章「管理安全性」)：
> - 認證：將項目放入基於檔案的使用者儲存庫，或將代理程式設定為使用現有 LDAP 使用者儲存庫

> (至少，您需要密碼保護管理功能。)

> - 授權：修改存取控制特性檔案中的存取配置
> - 加密：配置基於 SSL 的連接服務
> - 受管理物件 (請參閱第 7 章「管理受管理物件」)：
> - 配置或配置 LDAP 物件倉庫
> - 建立 ConnectionFactory 和目標受管理物件
> - 代理程式叢集 (請參閱「使用叢集 (企業版)」)：
> - 建立中央配置檔案
> - 使用主代理程式
> - 持續性：將代理程式配置為使用外掛持續性，而不是使用內建持續性 (請參閱附錄 B「設定外掛持續性」)
> - 記憶體管理：配置目標屬性，以便訊息數目和訊息配置的記憶體容量，符合可用的代理程式記憶體資源 (請參閱表 6-10)

> #### 維護作業

> ##### 若要設定生產環境

> 此外，在生產環境中，需要密切監視和控制 Message Queue 訊息伺服器資源。應用程式效能、可靠性以及安全性是必需的，您必須使用 Message Queue 管理工具執行一些不間斷的工作，如下所述：

> - 應用程式管理：
> - 停用代理程式的自動建立功能 (請參閱表 2-10)
> - 建立作為應用程式的實體目標 (請參閱「建立目標」)
> - 配置使用者對目標的存取權 (請參閱「授權使用者： 存取控制特性檔案」)
> - 監視與管理目標 (請參閱「管理目標」)
> - 監視與管理長期訂閱 (請參閱「管理長期訂閱」)
> - 監視與管理異動 (請參閱「管理異動」)
> - 代理程式管理與調整：
> - 使用代理程式度量調整和重新配置代理程式 (請參閱第 9 章「分析與調整訊息服務」)
> - 管理代理程式記憶體資源 (請參閱第 9 章「分析與調整訊息服務」)
> - 將代理程式新增至叢集以平衡負載 (請參閱「使用叢集 (企業版)」)
> - 回復失敗的代理程式 (請參閱「啟動代理程式」)
> - 管理受管理物件：
> - 依需要建立其他 ConnectionFactory 和目標受管理物件 (請參閱「新增和刪除受管理物件」)
> - 調整 ConnectionFactory 屬性值以提昇效能與流量 (請參閱「連線工廠受管理物件屬性」 和 「更新受管理物件」)

> ##

> Message Queue 管理工具

> Message Queue 管理工具分為兩類：指令行公用程式與圖形使用者介面 (GUI) 管理主控台 (imqadmin)。主控台合併了兩種指令行公用程式的功能：指令公用程式 (imqcmd) 和物件管理員公用程式 (imqobjmgr)。您可以使用主控台 (和這兩種指令行公用程式) 來遠端管理代理程式以及管理 Message Queue 受管理物件。其他指令行公用程式 (imqbrokerd、imqusermgr、imqdbmgr 和 imqkeytool) 必須與它們相關的代理程式在相同主機上執行，如圖 3-1 中所示。

> 有關管理主控台的資訊可從線上說明獲得。通常用於執行專用工作的指令行公用程式，在「指令行公用程式摘要」中有描述

> ### 管理主控台

> 您可以使用管理主控台執行以下作業：

> - 連接至代理程式並管理它。
> - 在代理程式上建立並管理實體目標
> - 連接至物件倉庫
> - 將受管理物件新增至物件倉庫並管理這些物件。

> 您無法使用管理主控台執行某些工作；其中主要包括啟動代理程式、建立代理程式叢集、配置代理程式和實體目標的更加專用的特性以及管理使用者資料庫。

> 第 4 章「管理主控台指導」提供了簡短的實用指導，可讓您熟悉主控台並說明如何使用主控台完成基本的工作。

> ### 指令行公用程式摘要

> 本節介紹用於執行 Message Queue 管理工作的指令行公用程式。您可以使用 Message Queue 公用程式啟動與管理代理程式，並執行其他更加專用的管理工作。

> 圖 3-1 本機與遠端管理公用程式

> 所有 Message Queue 公用程式均可透過指令行介面 (CLI) 存取。公用程式指令共用常用格式、語法慣例和選項，如本章後續小節中所述。在後續各章中，您可以找到有關使用指令行公用程式的更加詳細的資訊。

> 代理程式 (imqbrokerd) 您可以使用代理程式公用程式啟動代理程式。您可以使用 imqbrokerd 指令的選項指定是否應在叢集中連接代理程式，並指定其他配置資訊。imqbrokerd 指令在第 5 章「啟動與配置代理程式」進行說明。

> 指令 (imqcmd) 啟動代理程式後，您可以使用指令行公用程式建立、更新和刪除實體目標，控制代理程式及其連接服務，以及管理代理程式的資源。imqcmd 指令在第 6 章「代理程式和應用程式管理」進行說明。

> 物件管理員 (imqobjmgr) 您可以使用物件管理員公用程式在透過 JNDI 可存取的物件倉庫中新增、列示、更新和刪除受管理物件。透過將 JMS 用戶端與 JMS 供應程式特定的命名和配置格式分離，受管理物件可讓 JMS 用戶端獨立於供應程式。imqobjmgr 指令在第 7 章「管理受管理物件」進行說明。

> 使用者管理員 (imqusermgr) 您可以使用使用者管理員公用程式，寫入用於認證和授權使用者的基於檔案的使用者儲存庫。 imqusermgr 指令在第 8 章「管理安全性」進行說明。

> 鍵值工具 (imqkeytool) 您可以使用鍵值工具公用程式，產生用於 SSL 認證的自身簽名憑證。imqkeytool 指令在第 8 章「管理安全性」 和附錄 C「HTTP/HTTPS 支援 (企業版)」 進行說明。

> 資料庫管理員 (imqdbmgr) 您可以使用資料庫管理員公用程式建立和管理用於永久性儲存的 JDBC 相容資料庫。imqdbmgr 指令在附錄 B「設定外掛持續性」進行說明

> 服務管理員 (imqsvcadmin) 您可以使用服務管理員公用程式安裝、查詢和移除作為 Windows 服務的代理程式。imqsvcadmin 指令在附錄 D「將代理程式用作 Windows 服務」進行說明

> #### 指令行語法

> Message Queue 指令行介面公用程式為簡單的 shell 指令。即，從輸入這些公用程式的 Windows、Linux 或 Solaris 指令 shell 觀點看，公用程式本身的名稱即為一個指令，其子指令或選項僅為傳送至此指令的引數。因此，沒有指令可啟動或退出公用程式，而且就公用程式本身而言也無需此類指令。

> 所有指令行公用程式共用以下指令語法：

> Utility_Name [subcommand] [argument] [[-option_name [-option_argument]]...]

> Utility_Name 指定 Message Queue 公用程式的名稱，例如，imqcmd、imqobjmgr、imqusermgr 等。

> 必須記住以下四項重要內容：

> - 在子指令 (和引數，如果公用程式接受兩種類型的運算元) 之後指定選項。
> - 如果引數含有空格，請將整個引數括在引號內。通常將屬性值對括在引號內是最安全的。
> - 如果您在指令行上指定 -v (版本) 或 -h/-H (說明) 選項，則系統不會執行此指令行上的其他任何選項。請參閱表 3-1，以獲得共用選項的說明。
> - 使用空格將子指令、引數、選項和選項引數分隔。

> 以下為沒有子指令子句的指令行範例。此指令啟動預設代理程式。

> imqbrokerd

> 以下指令略有些複雜：此指令為名為 admin 的管理員 (使用者) (其相應密碼為 admin) 銷毀名為 myQueue 的 queue 類型目標，並且未經確認，主控台上亦無輸出顯示。

> imqcmd destroy dst -t q -n myQueue -u admin -p admin -f -s

> #### 共用指令行選項

> 表 3-1 描述了所有 Message Queue 管理公用程式共用的選項。除了在指令行上指定子指令之後指定這些選項的要求之外，下述選項 (或任何其他傳送至公用程式的選項) 不必以特殊順序輸入。

> 表 3-1 共用Message Queue指令行選項

> 選項 | 說明
> --- | ---
> -h | 顯示指定公用程式的用法說明。
> -H | 顯示延伸用法說明，包括屬性清單和範例 (僅支援 imqcmd 和 imqobjmgr)。
> -s | 開啟無訊息模式：不顯示輸出。為 imqbrokerd 指定 -silent。
> -v | 顯示版本資訊。
> -f | 執行給定動作而不提示使用者確認。
> -pre | (僅用於 imqobjmgr) 開啟預覽模式，可讓使用者不用實際執行指令即可看到指令行剩餘部分的執行效果。這對檢查預設屬性的值很有用。
> -javahome path | 指定要使用的替代 Java 2 相容運行時間 (預設為使用系統上的運行時間，或 Message Queue 隨附的運行時間)。

> 上一章 目錄 索引 下一章

> Copyright 2004 Sun Microsystems, Inc. All rights reserved.