![]() | |
Sun Java System Message Queue 3.5 SP1 管理ガイド |
第 4 章
管理コンソールのチュートリアルこの章では、Message Queue メッセージサーバのグラフィカルインタフェースである、管理コンソールの使用方法を説明します。用意されているチュートリアルでは、次の作業を実行する方法を説明します。
チュートリアルでは、単純な JMS 互換のアプリケーションであり、アプリケーション例のある /demo ディレクトリの helloworld サブディレクトリにある HelloWorldMessageJNDI を実行するために必要な送信先と管理対象オブジェクトを設定します (付録 A 「Message Queue データの場所」を参照)。チュートリアルの最後の部分では、このアプリケーションを実行します。
このチュートリアルでは、主に管理コンソールを使用して、基本的な管理タスクを実行します。このチュートリアルは、『Message Queue Java Client Developer's Guide』や、管理ガイドのほかの章とは内容が異なります。
一部の Message Queue 管理タスクは、グラフィカルツールを使用しても実行できない場合があります。この場合、コマンド行ユーティリティを使用して、次のように実行する必要があります。
- 特定の物理的な送信先プロパティを設定する
一部の物理的な送信先プロパティは、管理コンソールを使用しても設定できません。これらのプロパティは、「送信先の管理」の手順を実行すると、設定できます。
- ブローカクラスタを作成する
詳細は、「クラスタの操作 (Enterprise Edition)」を参照
- ユーザーのデータベースを管理する
詳細は、「ユーザーの認証」を参照
準備このチュートリアルを開始する前に、Message Queue 製品をインストールする必要があります。詳細は、『Message Queue インストールガイド』を参照してください。このチュートリアルは Windows を基準にしており、UNIXTM ユーザーへの注意点が追加される形で解説されているので注意してください。
このチュートリアルでは、「アイテム 1」>「アイテム 2」>「アイテム 3」と表記されている場合、「アイテム 1」というメニューをプルダウンし、メニューから「アイテム 2」を選択した後、「アイテム 2」で提供される選択肢から「アイテム 3」を選択することを意味します。
管理コンソールを起動する管理コンソールは、次の作業を行うときに使用するグラフィカルツールです。
- ブローカに対する参照やコネクションを作成する
- ブローカを管理する
- ブローカがメッセージの配信に使用する、物理的送信先をブローカに作成する
- Message Queue 管理対象オブジェクトを配置したオブジェクトストアに接続する
管理対象オブジェクトにより、JMS 準拠アプリケーションのメッセージングの要求を管理できます。詳細は、「Message Queue管理対象オブジェクト」を参照
管理コンソールを起動するには
- 「スタート」>「プログラム」>「Sun Java System Message Queue 3.5 SP1」>「Administration」を選択します。
コンソールのウィンドウが表示されるまで、数秒かかることがあります。
Windows 以外のユーザー : コマンドプロンプトで次のとおり入力します。
/usr/bin/imqadmin (Solaris の場合)
/opt/imq/bin/imqadmin (Linux の場合)
- コンソールのウィンドウの確認に数秒かかります。
コンソールは、一番上にメニューバー、メニューバーのすぐ下にツールバー、左側にナビゲーションのペイン、右側に結果を表すペイン (この図では Sun Java System 製品を表すグラフィックが表示されている)、および一番下に状態のペインという構成になっています。
チュートリアルには完全な情報が記載されているわけではないので、まず管理コンソールに関するヘルプ情報の使い方を理解しておきましょう。
ヘルプを利用する
ヘルプメニューは、メニューバーの一番右にあります。
管理コンソールのヘルプ情報を表示するには
- ヘルプメニューをプルダウンして、「Overview (概要)」を選択します。ヘルプウィンドウが表示されます。
ヘルプ情報の構成を確認します。左のナビゲーションペインには目次が表示され、右の結果ペインにはナビゲーションペインで選択したアイテムの内容が表示されます。
ヘルプウィンドウの結果ペインを確認します。これは管理コンソールの構成図で、コンソールの各ペインの使用方法を表しています。
- ヘルプウィンドウのナビゲーションペインを見ます。トピックが、 概要、オブジェクトストアの管理、ブローカの管理の 3 つの分野に分類されています。それぞれの領域に、ファイルやフォルダがあります。各フォルダには、複数タブのついたダイアログボックスのヘルプがあり、各ファイルはダイアログボックス、またはタブの簡単なヘルプです。
最初に行うコンソールの管理タスクは、「ブローカの追加」に示すように、コンソールを使用して管理するブローカへの参照を作成することです。ただし、開始する前に、オンラインヘルプの情報を確認します。
- ヘルプウィンドウのナビゲーションペインにある、「Add Broker (ブローカを追加)」アイテムをクリックします。
結果ペインが変更されています。ここには、ブローカを追加するとはどういうことかを説明するテキストと、「Add Broker (ブローカを追加)」ダイアログボックスにある各フィールドの使用方法が表示されます。フィールド名は、太字で表示されます。
- ヘルプテキストを読みます。
- ヘルプウィンドウを閉じます。
ブローカを操作するブローカには、Message Queue メッセージングシステムの配信サービスが用意されています。メッセージ配信は、2 階層のプロセスです。まずメッセージはブローカの物理的送信先に配信され、次に 1 つ以上のコンシューミングクライアントに配信されます。
ブローカの操作は、次のタスクで構成されます。
ブローカの起動は、Windows の「スタート」>「プログラムメニュー」または imqbrokerd コマンドを使用または行います。imqbrokerd コマンドを使用する場合、コマンド行オプションを利用してブローカの設定情報を指定できます。「プログラムメニュー」を使用する場合、コンソールまたは第 5 章「ブローカの起動と設定」にある別の方法を使用して、設定情報を指定できます。
ブローカは、アプリケーションクライアントと管理クライアントの両方との通信をサポートしています。このサポートはさまざまなコネクションサービスを使用して行われ、任意のコネクションサービスまたはすべてのコネクションサービスを実行するようにブローカを設定できます。コネクションサービスについての詳細は、「コネクションサービス」を参照してください。
ブローカの起動
管理コンソールを使用してブローカを起動することはできません。ブローカは、次の方法で起動します (第 5 章「ブローカの起動と設定」を参照)。
ブローカを起動するには
管理コンソールでブローカへの参照を追加する前に、ブローカを起動する必要はありませんが、接続する前にはブローカを起動する必要があります。
ブローカの追加
ブローカを追加すると、そのブローカへの参照が管理コンソール内に作成されます。ブローカを追加したあと、そのブローカへ接続できます。
管理コンソールにブローカを追加するには
- ナビゲーションペインの「Brokers (ブローカ)」をクリックし、「Add Broker (ブローカを追加)」を選択します。
- 「Broker Label (ブローカのラベル)」フィールドに MyBroker と入力します。
これにより、管理コンソールでブローカを識別するラベルが作成されます。
ダイアログボックスで指定されたデフォルトのホスト名 (localhost) と、プライマリポート (7676) を控えておきます。あとで、クライアントがこのブローカへのコネクションを設定するのに必要なコネクションファクトリを設定するときに、この値を指定する必要があります。
「Password (パスワード)」フィールドは空欄のままにしておきます。パスワードは、コネクションを実行するときに指定したほうがより安全です。
- 「OK」をクリックして、ブローカを追加します。
ナビゲーションペインを見ます。追加したブローカが、「Brokers (ブローカ)」の下に一覧表示されています。ブローカアイコンの上についている赤い×印は、そのブローカが現在コンソールに接続されていないことを表しています。
- 「MyBroker」を右クリックし、ポップアップメニューから「Properties (プロパティ)」を選択します。
ブローカのプロパティダイアログボックスが表示されます。このダイアログボックスを使用して、ブローカの追加時に指定したプロパティを更新できます。
- 「Cancel (取り消し)」をクリックしてダイアログを閉じます。
管理者パスワードの変更
ブローカを追加した際、パスワードを指定しなかった場合は、ブローカに接続するときにパスワードが要求されます。デフォルトでは、管理コンソールは admin というパスワードを持つ admin というユーザーとしてブローカに接続できます。セキュリティを高めるために、接続前にデフォルトの管理者パスワード (admin) を変更することをお勧めします。
管理者パスワードを変更するには
変更は直ちに反映されます。Message Queue コマンド行ユーティリティや管理コンソールを使用するときは必ず、この新しいパスワードを指定する必要があります。
クライアントは、管理者と異なるコネクションサービスを使用しますが、デフォルトのユーザー名とパスワードが割り当てられているため、詳細な管理の設定を行わなくても Message Queue をテストできます。デフォルトでは、クライアントは guest というパスワードを持つ guest というユーザーとしてブローカに接続できます。ただし、できるだけ早くクライアントに安全なユーザー名とパスワードを設定してください。詳細は、「ユーザーの認証」を参照してください。
ブローカに接続する
ブローカに接続するには
- 「MyBroker」を右クリックし、「Connect to Broker」を選択します。
ユーザー名とパスワードを指定するダイアログボックスが表示されます。
- 「Password」フィールドに admin または「管理者パスワードの変更」でパスワードに指定した値を入力します。
ユーザー名の admin を指定し、正しいパスワードを入力すると、管理者権限でブローカに接続します。
- 「OK」をクリックして、ブローカに接続します。
ブローカに接続後、「Actions (アクション)」メニューを選択すると、ブローカに関する情報の入手、ブローカの停止、再開、シャットダウン、再起動、およびブローカからの切断を実行できます。
コネクションサービスを表示する
ブローカは、提供するコネクションサービスと、サポートする物理的送信先とで識別されます。
利用可能なコネクションサービスを表示するには
- ナビゲーションペインで「Services (サービス)」を選択します。
結果ペインに利用可能なサービスが一覧表示されます。各サービスに対して、名前、ポート番号、状態が表示されます。
- 結果ペインにある jms サービスをクリックして選択します。
- 「Actions (アクション)」メニューをプルダウンして、強調表示されているアイテムを確認します。
jms サービスを停止したり、プロパティを表示、更新したりするオプションがあります。
- 「Actions (アクション)」メニューから「Properties (プロパティ)」を選択します。
「Service Properties (サービスプロパティ)」ダイアログを使用して、サービスに静的なポート番号を割り当て、このサービスに割り当てられるスレッドの最小数および最大数を変更できます。
- 「OK」をクリックするか、あるいは「Cancel (取消し)」をクリックして、「Service Properties (サービスのプロパティ)」ダイアログボックスを閉じます。
- 結果ペインで admin サービスを選択します。
- 「Actions (アクション)」メニューをプルダウンします。
このサービスを停止することはできませんので注意してください (停止アイテムは無効)。admin サービスとは、ブローカへの管理者のリンクです。これを停止すると、ブローカに接続できなくなります。
- 「Actions (アクション)」>「Properties (プロパティ)」の順に選択し、admin サービスのプロパティを表示します。
- 完了したら、「OK」または「Cancel (取消し)」をクリックします。
ブローカに物理的送信先を追加する
デフォルトでは、送信先の自動作成はブローカに対して有効になっています。そのためブローカの物理的な送信先を動的に作成できます。そのため、開発環境で、クライアントコードをテストするための送信先を明示的に作成する必要はありません。
ただし、運用時の設定では、物理的な送信先を明示的に作成することをお勧めします。そうすることにより、管理者は、ブローカが使用している送信先を十分に認識できます。
imq.autocreate.topic または imq.autocreate.queue プロパティを設定して、ブローカの自動作成送信先の追加を制御できます。詳細は、「自動作成 (および管理者によって作成) された送信先」を参照してください。
ここでは、ブローカに物理的送信先を追加します。送信先に割り当てた名前を控えておきます。あとでこの物理的送信先に対応する、管理対象オブジェクトを作成するときに必要となります。
ブローカにキュー送信先を追加するには
物理的送信先を操作する
ブローカに物理的送信先を追加すると、以下の手順に従い、次のタスクを実行できるようになります。
物理的送信先のプロパティを表示するには
送信先からメッセージをパージするには
メッセージをパージすると、メッセージが削除されたあとに空の送信先が残ります。
送信先を削除するには
送信先の削除を行うと、その送信先にあるメッセージがパージされたあと、送信先も削除されます。
トピック送信先に関する情報を取得する
ブローカのトピック送信先プロパティのダイアログボックスには、永続サブスクリプションに関する情報を一覧する追加タブがあります。このタブは、キュー送信先の場合は無効です。
このダイアログボックスを使用して、次のことを実行できます。
オブジェクトストアを操作するオブジェクトストアは、LDAP ディレクトリサーバまたはファイルシステムストア (ファイルシステムにあるディレクトリ) であっても、Message Queue 管理対象オブジェクトを格納するために使用されます。この管理対象オブジェクトは、クライアントアプリケーションが使用するオブジェクトに関する Message Queue 固有の実装と設定情報をカプセル化します。
クライアントコード内で管理対象オブジェクトをインスタンス化および設定することは可能ですが、管理者がこれらのオブジェクトを作成、および設定して、クライアントアプリケーションが標準 JMDI 検索コードを介してアクセスできるオブジェクトストアに格納することをお勧めします。これにより、クライアントコードはプロバイダに依存しなくなります。
管理対象オブジェクトについては、「Message Queue管理対象オブジェクト」を参照してください。
管理コンソールを使用して、オブジェクトストアを作成することはできません。まず、次の節で説明する操作を行う必要があります。
オブジェクトストアを追加する
オブジェクトストアを追加すると、管理コンソールにある既存のオブジェクトストアへの参照が作成されます。この参照は、コンソールを終了して、再起動しても保持されます。
ファイルシステムオブジェクトストアを追加するには
- C ドライブに Temp という名前のフォルダが存在しない場合は、ここで作成します。
このチュートリアルで使用するサンプルアプリケーションでは、オブジェクトストアが C ドライブの Temp というフォルダにあることが前提になっています。一般には、ファイルシステムオブジェクトストアは、任意のドライブの任意のディレクトリに置くことができます。
Windows 以外 : 既存の /tmp ディレクトリを使用します。
- 「Object Stores (オブジェクトストア)」で右クリックし、「Add Object Store (オブジェクトストアを追加)」を選択します。
次のダイアログボックスが表示されます。
- 「ObjectStoreLabel (オブジェクトストアのラベル)」フィールドに「MyObjectStore」と入力します。
ここでは、管理コンソールにあるオブジェクトの表示用のラベルが設定されるだけです。
次の手順では、JNDI の名前と値の組み合わせを入力する必要があります。これらの組み合わせは、JMS 準拠のアプリケーションが管理対象オブジェクトを検索するときに使用されます。
- 「Name (名前)」ドロップダウンリストから、java.naming.factory.initial を選択します。
このプロパティで、どの JNDI サービスプロバイダを使用するかを指定できます。たとえば、ファイルシステムサービスプロバイダ、または LDAP サービスプロバイダです。
- 「Value (値)」フィールドに、次のように入力します。
com.sun.jndi.fscontext.RefFSContextFactory
つまり、ファイルシステムストアが使用されます。LDAP ストアの場合は、com.sun.jndi.ldap.LdapCtxFactory を指定します。
運用環境では、オブジェクトストアとして LDAP ディレクトリサービスを使用する場合があります。サーバの設定と JNDI 検索については、「LDAP サーバオブジェクトストア」を参照してください。
- 「Add (追加)」ボタンをクリックします。
プロパティの要約ペインにプロパティとその値が一覧表示されます。
- 「Name (名前)」ドロップダウンリストから、java.naming.provider.url を選択します。
このプロパティで、オブジェクトストアの正確な場所を指定できます。ファイルシステムのオブジェクトストアでは、これが既存のディレクトリ名になります。
- 「Value (値)」フィールドに、次のように入力します。
file:///C:/Temp
(Solaris と Linux 上では、file:///tmp )
- 「Add (追加)」ボタンをクリックします。
プロパティの要約ペインにプロパティとその値がともに一覧表示されます。LDAP サーバを使用している場合、認証情報も指定する必要があります。ファイルシステムストアでは、認証情報の指定は必要ありません。
- 「OK」をクリックして、オブジェクトストアを追加します。
- MyObjectStore ノードがナビゲーションペインで選択されていない場合は、ここで選択します。
管理コンソールは次のように見えます。
オブジェクトストアはナビゲーションペインに一覧表示され、その内容である送信先とコネクションファクトリは結果ペインに一覧表示されます。まだ管理対象オブジェクトをオブジェクトストアに追加していないため、結果ペインの「Count (カウント)」カラムに表示されます。
ナビゲーションペインにあるオブジェクトストアのアイコンには、X がついています。これは、まだ接続されていないことを表します。オブジェクトストアを使用する前に、接続する必要があります。
オブジェクトストアプロパティを確認する
管理コンソールがオブジェクトストアから切断されている間は、オブジェクトストアのプロパティの一部を確認および変更できます。
オブジェクトストアのプロパティを表示するには
オブジェクトストアに接続する
オブジェクトストアにオブジェクトを追加する前に、まずオブジェクトストアに接続する必要があります。
オブジェクトストアに接続するには
コネクションファクトリ管理対象オブジェクトを追加する
管理コンソールを使用して、コネクションファクトリを作成および設定できます。コネクションファクトリは、クライアントコードがブローカに接続するときに使用されます。コネクションファクトリを設定すると、作成するときに使用されるコネクションの動作を制御できます。
コネクションファクトリの設定については、オンラインヘルプと『Message Queue Java Client Developer's Guide』を参照してください。
注
管理コンソールは、Message Queue 管理対象オブジェクトだけを一覧し表示します。オブジェクトストアに、追加したい管理対象オブジェクトと同じ検索名の Message Queue 以外のオブジェクトが含まれている場合は、追加操作を実行するとエラーが表示されます。
コネクションファクトリをオブジェクトストアに追加するには
- まだ接続されていない場合は、MyObjectStore に接続します (「オブジェクトストアに接続する」を参照)。
- 「Connection Factories (コネクションファクトリ)」ノードを右クリックし、「Add Connection Factory Object (コネクションファクトリオブジェクトを追加)」を選択します。
「Add Connection Factory Object (コネクションファクトリオブジェクトを追加)」ダイアログボックスが表示されます。
- 「LookupName (検索名)」フィールドに「MyQueueConnectionFactory」という名前を入力します。
この名前は、次のコマンド行のように HelloWorldMessageJNDI.java からコネクションファクトリを検索するときにクライアントコードが使用する名前です。
qcf=(javax.jms.QueueConnectionFactory)
ctx.lookup("MyQueueConnectionFactory")- プルダウンメニューから「QueueConnectionFactory」を選択し、コネクションファクトリのタイプを指定します。
- 「コネクションの処理」タブをクリックします。
- 「Message Server Address List (メッセージサーバアドレスリスト)」フィールドには、通常、クライアントの接続先となるブローカのアドレスを入力します。このフィールドの例を次に示します。
mq://localhost:7676/jms
デフォルトでは、コネクションファクトリは、ポート 7676 の localhost で実行しているブローカに接続するように設定されているため、値を入力する必要はありません。チュートリアルの例でも、このデフォルト設定を前提にしています。
- このダイアログボックスのタブをクリックして、コネクションファクトリの設定可能な情報の種類を確認します。「Add Connection Factory Object (コネクションファクトリオブジェクトを追加)」ダイアログボックスの右側下部にある「Help (ヘルプ)」ボタンを使用して、それぞれのタブの情報を確認します。ここでは、デフォルト値を変更しないでください。
- 「OK」をクリックして、キューコネクションファクトリを作成します。
- 結果ペインを確認します。新規作成されたコネクションファクトリの検索名と検索タイプが一覧表示されています。
送信先管理対象オブジェクトを追加する
送信先管理対象オブジェクトは、ブローカーの物理的送信先に関係しています。送信先管理対象オブジェクトは送信先を指すので、プロバイダ固有の送信先の命名方法および設定方法に関係なく、クライアントは物理的送信先を検索できます。
クライアントはメッセージを送信するときに、送信先管理対象オブジェクトを検索 (またはインスタンス化) し、JMS API の send() メソッドの送信先管理対象オブジェクトを参照します。ブローカは、その管理対象オブジェクトに関連する物理的送信先へのメッセージの配信に責任を持ちます。
チュートリアルの次の部分では、これまでに追加した物理的送信先に対応する管理対象オブジェクトを追加します。
送信先をオブジェクトストアに追加するには
- ナビゲーションペインの「MyObjectStore」ノードの下にある「Destinations (送信先)」ノードを右クリックします。
- 「Add Destination Object (送信先オブジェクトを追加)」を選択します。
管理コンソールにより、オブジェクトに関する情報を指定する「Add Destination Object (送信先オブジェクトを追加)」ダイアログボックスが表示されます。
- 「Lookup Name (検索名)」フィールドにMyQueueと入力します。
検索名は、JNDI 検索呼び出しを使用しているオブジェクトを検索するのに使用されます。サンプルアプリケーションでは、呼び出しは次のとおりです。
queue=(javax.jms.Queue)ctx.lookup("MyQueue");
- 「Destination Type (送信先タイプ)」の「Queue (キュー)」ラジオボタンを選択します。
- 「Destination Name (送信先名)」フィールドにMyQueueDest と入力します。
この名前は、ブローカに物理的送信先を追加したときに指定した名前です (「ブローカに物理的送信先を追加する」を参照)。
- 「OK」をクリックします。
- ナビゲーションペインの「Destinations (送信先)」を選択し、追加したキュー管理対象オブジェクトに関する情報がどのように結果のペインに表示されているかを確認します。
管理対象オブジェクトのプロパティ
管理対象オブジェクトのプロパティを表示または更新するには、ナビゲーションペインにある「Destinations (送信先)」または「Connection Factories (コネクションファクトリ)」を選択し、結果ペインで特定のオブジェクトを選択してから、「Actions (アクション)」>「Properties (プロパティ)」の順に選択します。
送信先オブジェクトのプロパティを表示または更新するには
コンソール情報を更新するオブジェクトストアを操作している場合も、ブローカを操作している場合も、「View (表示)」>「Refresh (更新)」の順に選択すると、あらゆる要素または要素グループの視覚的表示を更新できます。
サンプルアプリケーションを実行するサンプルアプリケーションの HelloWorldMessageJNDI は、このチュートリアルで使用するために用意されています (場所については、以下のステップ 1 を参照)。このサンプルアプリケーションは、チュートリアルを進めていく中で作成した物理的な送信先と管理対象オブジェクトを使用します。つまり、MyQueueDest という名前のキューの物理的な送信先、MyQueueConnectionFactory および MyQueue という JNDI 検索名をそれぞれ持つキューコネクションファクトリ管理対象オブジェクトおよびキュー管理対象オブジェクトです。
コードでは 1 つの送信者と受信者が作成され、「Hello World」メッセージが送受信されます。
HelloWorldMessageJNDI アプリケーションを実行するには
- HelloWorldmessageJNDI アプリケーションを含むディレクトリを現在のディレクトリにします。たとえば、次のように指定します。
cd IMQ_HOME¥demo¥helloworld¥helloworldmessagejndi (Windows の場合)
cd /usr/demo/imq/helloworld/helloworldmessagejndi (Solaris の場合)
cd /opt/imq/demo/helloworld/helloworldmessagejndi (Linux の場合)
HelloWorldMessageJNDI.class ファイルが存在していることを確認します。アプリケーションに変更を加える場合は、『Message Queue C Client Developer's Guide』のクイックスタートチュートリアルに記載されたクライアントアプリケーションのコンパイルに関する指示に従って、アプリケーションを再コンパイルする必要があります。
- CLASSPATH 変数に HelloWorldMessageJNDI.class ファイルと Message Queue 製品に組み込まれた jms.jar、imq.jar、および fscontext.jar といった jar ファイルを含む現在のディレクトリを追加します。CLASSPATH の設定方法については、『Message Queue Java Client Developer's Guide』を参照してください。
JNDI jar ファイル (jndi.jar) は JDK 1.4 にバンドルされています。この JDK を使用している場合は、jndi.jar を CLASSPATH 設定値に追加する必要はありません。それ以前のバージョンの JDK を使用している場合は、jndi.jar を CLASSPATH に含める必要があります。詳細は、『Message Queue Java Client Developer's Guide』を参照してください。
- アプリケーションを実行する前に、ソースファイルの HelloWorldMessageJNDI.java を開き、ソース全体に目を通してください。このファイルには短いながら詳細な説明が用意されており、チュートリアルを使用して作成した管理対象オブジェクトや送信先を使用する方法が明確に理解できます。
- 次のコマンドのどちらかを実行して、HelloWorldMessageJNDI アプリケーションを稼働します。
java HelloWorldMessageJNDI (Windows の場合)
% java HelloWorldMessageJNDI file:///tmp (Solaris と Linux の場合)
アプリケーションが問題なく実行されると、次の出力があります。