前回はMQ4.1でのデータ送受信テストを行いました。
今回はMQ4.1(MQ3.7と共通)の管理方法について説明します。

MQ4.1/3.7ではコマンドラインユーティリティでの管理が
管理の基本となります。日常の運用に沿ってよく使うコマンドを見ていきましょう。

起動
MQブローカの起動

imqbrokerd

MQブローカの起動(ヒープサイズ指定)
imqbrokerd -vmargs "-Xms512m -Xmx512m"

MQブローカの起動(より細かい稼動情報をコンソールに出力)
imqbrokerd -tty

MQブローカの起動(コンソールにログを全く出力しない)
imqbrokerd -silent

停止
MQブローカの停止(localhostのポート7676のインスタンスをシャットダウン)
imqcmd shutdown bkr
MQブローカの停止(ホスト名とポート番号を指定)
imqcmd shutdown bkr -b localhost:7676

MQブローカプロパティの照会

imqcmd query bkr

MQブローカプロパティの照会(ホスト名とポート番号指定)
imqcmdquery bkr -b localhost:7676

リスト
そのブローカが所属するクラスタ中にあるすべてのブローカをリスト

imqcmd list bkr

C:\software\MQ4.1\mq\bin>imqcmd list bkr
ユーザ名: admin
パスワード: admin
次のブローカが所属するクラスタ内のすべてのブローカをリストします:

---------------------
ホスト          プライマリポート
---------------------
localhost    7676

クラスタは高可用性です   false

---------------------------------------
           アドレス                  状態
---------------------------------------
psq96026.Japan.Sun.COM:7676   OPERATING

クラスタ内のブローカのリストに成功しました。

ブローカ内にある全ての宛先をリスト

imqcmd list dst

C:\software\MQ4.1\mq\bin>imqcmd list dst
ユーザ名: admin
パスワード: admin
指定されたブローカ上のすべての送信先のリスト:

---------------------
ホスト          プライマリポート
---------------------
localhost    7676

--------------------------------------------------------------------
     名前       タイプ    状態     Producers  コンシューマ          Msgs
                                       Total   カウント  UnAck  Avg Size
--------------------------------------------------------------------
honbanQueue1  キュー  RUNNING  0          0       1     0      139.0
honbanQueue2  キュー  RUNNING  0          0       1     0      139.0
mq.sys.dmq    キュー  RUNNING  0          0       0     0      0.0
testQueue1    キュー  RUNNING  0          0       4     0      5437.5
testQueue2    キュー  RUNNING  0          0       1     0      139.0

送信先のリストに成功しました

ブローカ内で稼動する全てのサービスのリスト

imqcmd list svc

C:\software\MQ4.1\mq\bin>imqcmd list svc
ユーザ名: admin
パスワード: admin
指定されたブローカ上のすべてのサービスのリスト:

---------------------
ホスト          プライマリポート
---------------------
localhost    7676

--------------------------------
サービス名       ポート番号        サービス状態
--------------------------------
admin       3811 (動的)    RUNNING
httpjms     -            UNKNOWN
httpsjms    -            UNKNOWN
jms         3810 (動的)    RUNNING
ssladmin    動的           UNKNOWN
ssljms      動的           UNKNOWN

サービスのリストに成功しました

特定のトピックに登録されている永続サブスクライバ一覧
imqcmd list dur -d <<トピック名>>

メッセージのクリア

特定キュー中のデータを全部クリア(キューは削除しない)

imqcmd purge dst -t q -n <<キュー名>>

特定トピック中のデータを全部クリア(トピックは削除しない)

imqcmd purge dst -t t -n <<トピック名>>

特定のキュー自体をデータと共に削除

imqcmd destroy dst -t q -n <<キュー名>>

特定のトピック自体をデータと共に削除
imqcmd destroy dst -t t -n <<トピック名>>

一時停止

ブローカへの新規リクエスト受け入れ停止(MQ4.1からの機能)

imqcmd quiesce bkr

#確認

C:\software\MQ4.1\mq\bin>imqcmd list svc
ユーザ名: admin
パスワード: admin
指定されたブローカ上のすべてのサービスのリスト:

---------------------
ホスト          プライマリポート
---------------------
localhost    7676

---------------------------------
サービス名       ポート番号        サービス状態
---------------------------------
admin       3811 (動的)    RUNNING
httpjms     -            UNKNOWN
httpsjms    -            UNKNOWN
jms         0 (動的)       QUIESCED
ssladmin    動的           UNKNOWN
ssljms      動的           UNKNOWN

サービスのリストに成功しました。

ブローカへの新規リクエスト受け入れ開始(MQ4.1からの機能)

imqcmd unquiesce bkr

ブローカの一時停止

imqcmd pause bkr

ブローカの再開
imqcmd resume bkr

キューの一時停止

imqcmd pause dst -t q -n <<キュー名>>

キューの再開
imqcmd resume dst -t q -n <<キュー名>>

トピックの一時停止

imqcmd pause dst -t t -n <<トピック名>>

トピックの再開
imqcmd resume dst -t t -n <<トピック名>>

トランザクションのメンテナンス
トランザクションのリスト

imqcmd list txn

トランザクションのロールバック
imqcmd rollback txn -n <<トランザクションID>>

トランザクションのコミット
imqcmd commit txn -n <<トランザクションID>>

接続のメンテナンス
接続の表示

imqcmd list cxn

接続の詳細表示
imqcmd query cxn -n <<コネクションID>>

デフォルト管理者パスワードの変更

MQのインスタンス格納場所がソフトウエアデフォルト以外の場合はIMQ_VARHOMEを設定してください。(アプリケーションサーバから起動されている場合など)
Unixデフォルト: /var/imq
Windowsデフォルト: インストールディレクトリ\mq\var\instances

Solarisでの設定例:

-bash-3.00# IMQ_VARHOME=/var/opt/SUNWappserver/domains/domain1/imq
-bash-3.00# export IMQ_VARHOME
※/var/opt/SUNWappserver/domains/domain1/imqの値はお使いの環境に従って変更してください

imqusermgr update -i <<ブローカ名>> -u admin -p <<新しいパスワード>>
C:\software\MQ4.1\mq\bin>imqusermgr update -i broker1 -u admin -p tekito
ブローカインスタンスのユーザリポジトリ: broker1
ユーザー admin を更新してもよろしいですか ? (y/n)[n] y
ユーザ admin の更新に成功しました。

パスワードが正しく更新されているかを確認します。

imqcmd list svc -u admin

パスワードを聞かれるので変更したパスワードを入力して以下が表示されればOK

指定されたブローカ上のすべてのサービスのリスト:

---------------------
ホスト          プライマリポート
---------------------
localhost    7676

--------------------------------
サービス名       ポート番号        サービス状態
--------------------------------
admin       1049 (動的)    RUNNING
httpjms    -            UNKNOWN
httpsjms   -            UNKNOWN
jms         1048 (動的)    RUNNING
ssladmin    動的           UNKNOWN
ssljms      動的           UNKNOWN

サービスのリストに成功しました。

投稿されたコメント:

コメント
コメントは無効になっています。

This blog copyright 2009 by naokitakemura