![]() | |
Sun Java System Message Queue 3.5 SP1 管理ガイド |
第 3 章
Message Queue の管理タスクと管理ツールSun JavaTM System Message Queue の管理には、さまざまなタスクとこれらのタスクを実行するためのさまざまなツールがあります。
この章では、管理タスクの概要を述べてから、コマンド行管理ユーティリティの共通機能に的を絞って、管理ツールについて説明します。
Message Queue の管理タスク開発環境、または運用環境のどちらにいるかによって、実行が必要な特定のタスクが変わります。
開発環境
開発環境では、作業は Message Queue のクライアントアプリケーションのプログラミングに重点が置かれます。Message Queue メッセージサーバは、主にテストのために必要となります。開発環境では、柔軟性が重視されるため、通常は次の要件を適用します。
- 開発者がテストで使用するブローカを起動する程度に、管理の手間を最小限に抑える
- データストア (ファイルベースの組み込み持続)、ユーザーリポジトリ (ファイルベースのユーザーリポジトリ)、アクセス制御プロパティファイル、オブジェクトストア (ファイルシステムのストア) のデフォルトの環境を使用する。通常の開発テストでは、これらのデフォルトの実装で十分である
- 複数のブローカのテストを実行する場合、マスターブローカは使用しない
- 一般に、明示的に作成した送信先でなく、自動作成された送信先を使用する
- 集中管理された管理対象オブジェクトではなく、クライアントコード内で管理対象オブジェクトをインスタンス化することがある
運用環境
運用環境では、アプリケーションは確実に配置および実行される必要があるため、管理はより重要になります。実行が必要な管理タスクは、メッセージングシステムの複雑さとメッセージングシステムがサポートするアプリケーションの複雑さによって異なります。しかし、一般的にこれらのタスクは、セットアップ操作とメンテナンス操作に分類することができます。
セットアップ操作
運用環境を設定するには
通常、次のセットアップ操作のうち少なくとも一部を実行する必要があります。
- 管理者のセキュリティ (保護された管理ツールの使用)
- 管理コネクションサービスがアクティブであることを確認する (表 2-3 を参照)
- 承認: 特定の個人または管理グループに対して管理コネクションサービスへのアクセスを許可する (「コネクションアクセス制御」を参照)
- グループに対して承認を実行する場合は、管理者が admin グループに属していることを確認する
- ファイルベースのユーザーリポジトリ。デフォルトの admin グループを持つ。管理者が admin グループに属していることを確認するか、デフォルトの admin ユーザーを使用する場合は、admin パスワードを変更する (「デフォルトの管理者パスワードの変更」を参照)
- LDAP ユーザーリポジトリ。管理者が admin グループに属していることを確認する
- 全般的なセキュリティ (第 8 章「セキュリティの管理」を参照)
- 管理対象オブジェクト (第 7 章「管理対象オブジェクトの管理」を参照)
- ブローカのクラスタ (「クラスタの操作 (Enterprise Edition)」を参照)
- 持続: ブローカを構成して、組み込み持続ではなく、プラグイン持続を使用する (付録 B 「プラグイン持続の設定」を参照)
- メモリー管理: メッセージ数とメッセージに割り当てられるメモリー量が使用可能なブローカのメモリーリソース内に納まるように送信先属性を設定する (表 6-10 を参照)
メンテナンス操作
運用環境を設定するには
さらに、運用環境では、Message Queue メッセージサーバのリソースを厳しく監視し、制御する必要があります。アプリケーションのパフォーマンス、信頼性、およびセキュリティが重視されるため、次に示すさまざまな運用タスクを Message Queue の管理ツールを使用して実行する必要があります。
- アプリケーション管理
- ブローカの自動作成機能を無効にする (表 2-10 を参照)
- アプリケーションのために、物理的な送信先を作成する (「送信先の作成」を参照)
- 送信先へのユーザーアクセスを設定する (「ユーザーの承認 : アクセス制御プロパティファイル」を参照)
- 送信先を監視および管理する (「送信先の管理」を参照)
- 永続サブスクリプションを監視および管理する (「永続サブスクリプションの管理」を参照)
- トランザクションを監視および管理する (「トランザクションの管理」を参照)
- ブローカの管理および調整
- ブローカのメトリックスを使用して、ブローカの調整および再設定を行う (第 9 章「メッセージサービスの分析と調整」を参照)
- ブローカのメモリーリソースを管理する (第 9 章「メッセージサービスの分析と調整」を参照)
- クラスタにブローカを追加して、ロードバランスを実行する (「クラスタの操作 (Enterprise Edition)」を参照)
- 障害が発生したブローカを復元する (「ブローカの起動」を参照)
- 管理対象オブジェクトの管理
- 必要に応じて、追加のコネクションファクトリと送信先の管理対象オブジェクトを作成する ( 「管理対象オブジェクトの追加および削除」を参照)
- コネクションファクトリの属性値を調整して、パフォーマンスとスループットを改善する (「コネクションファクトリ管理対象オブジェクトの属性」および「管理対象オブジェクトの更新」を参照)
Message Queue管理ツールMessage Queue の管理ツールは 2 つの種類に分けられます。それは、コマンド行ユーティリティとグラフィカルユーザーインタフェース (GUI) の管理コンソール (imqadmin) です。コンソールは、 コマンドユーティリティ (imqcmd) とオブジェクトマネージャユーティリティ (imqobjmgr) の 2 つのコマンド行ユーティリティの機能が組み合わされたものです。コンソール (および、これらの 2 つのコマンド行ユーティリティ) を使用すると、ブローカをリモートで管理したり、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 クライアントはプロバイダに依存しなくなります。imqobjmgr コマンドについては、第 7 章「管理対象オブジェクトの管理」で説明されています。
ユーザーマネージャ (imqusermgr) ユーザーマネージャユーティリティを使用して、ユーザーの認証および承認に使用するファイルベースのユーザーリポジトリを設定します。imqusermgr コマンドについては、第 8 章「セキュリティの管理」で説明されています。
キーツール (imqkeytool) キーツールユーティリティを使用して、SSL 認証で使用される自己署名型証明書を生成できます。imqkeytool コマンドについては、第 8 章「セキュリティの管理」および付録 C 「HTTP/HTTPS サポート (Enterprise Edition)」で説明されています。
データベースマネージャ (imqdbmgr) データベースマネージャを使用して、持続ストレージ用の JDBC 互換のデータベースを作成および管理します。imqdbmgr コマンドについては、付録 B 「プラグイン持続の設定」で説明されています。
サービス管理 (imqsvcadmin) サービス管理ユーティリティを使用して Windows のサービスとして、ブローカをインストール、クエリー、および削除します。imqsvcadmin コマンドについては、付録 D 「Windows のサービスとしてのブローカの使用」で説明されています。
コマンド行の構文
Message Queue のコマンド行インタフェースユーティリティは、単純なシェルコマンドです。つまり、それらのシェルコマンドが入力される Windows、Linux、または Solaris のコマンドシェルの観点から、ユーティリティ自体の名前がコマンドとそのサブコマンドになるか、あるいはオプションが単純にそのコマンドに渡される引数になります。したがって、ユーティリティ自体を起動または終了するコマンドはなく、そのようなコマンドは必要ありません。
コマンド行ユーティリティはすべて、次のコマンド構文を共有します。
Utility_Name は、imqcmd、imqobjmgr、imqusermgr などの Message Queue ユーティリティの名前を指定します。
次の 4 つの点に注意してください。
- ユーティリティが両方のタイプの引数を受け入れる場合、サブコマンドと引数の後にオプションを指定する
- 引数に空白文字が入る場合、引数全体を引用符で囲む。通常、属性と値の組み合わせは引用符で囲んでおくことが望ましい
- コマンド行で -v (バージョン) オプション、または -h/-H (ヘルプ) オプションを指定する場合、そのコマンド行ではほかのオプションを実行できない。共通オプションについては、表 3-1 を参照
- サブコマンド、引数、オプション、オプションの引数はスペースで区切る
次に、サブコマンド句のないコマンド行の例を示します。このコマンドでは、デフォルトのブローカが起動します。
次のコマンドは、少し複雑になります。管理者 (ユーザー) 名が admin で、対応するパスワードも admin の myQueue という名前が付いた queue タイプの送信先が破棄されます。この場合、確認は行われず、コンソールには何も出力されません。
共通のコマンド行オプション
Message Queue の管理ユーティリティ全体に共通するオプションを表 3-1 に示します。コマンド行でサブコマンドを指定した後に、これらのオプションを指定するという要件は別として、次に示すオプション (または、ユーティリティに渡されるその他のオプション) を特別な順序で入力する必要はありません。