Comments
Description
Transcript
第2章 マルチ・バージョン 複数バージョンの導入 ¾ 複数バージョンの導入
第2章 マルチ・バージョン ¾ 複数バージョンの導入 ¾ マイグレーションと共存 1 複数バージョンの導入 2 複数バージョンの導入 V7.1 より、1つのOSに複数のバージョンのMQを導入可能 V7.0.1.6 以降は V7.1 と共存し、同時に使用できる V7.0.1.5 以前の環境は V7.1 環境と共存できない 既存のMQを停止せずに導入可能 任意のディレクトリを指定して導入可能(UNIX, Linux) 複数の導入環境を使用するための新たな仕組みが追加 各導入環境に名称(インストレーション名)の付与 デフォルト環境とするプライマリー・インストレーションの指定 キュー・マネージャーと導入環境の関連付け 従来 V7.1 キュー・マネージャー・ データ・ディレクトリ プログラム・ディレクトリ1 QMGR1 MQ V7.0.1.6 キュー・マネージャー・ データ・ディレクトリ プログラム・ディレクトリ1 MQ V7.0.1.6 QMGR1 インストレーション1 Primary キュー・マネージャー・ データ・ディレクトリ プログラム・ディレクトリ2 QMGR2 MQ V7.1 QMGR2 インストレーション2 3 インストレーション名の指定 V7.1の導入環境には固有のインストレーション名が付与される デフォルトのインストレーション名は”InstallationN”(N: 数字を順次割り当て) V7.0.1(共存する場合) … Installation0(指定不可) … Installation1(指定不可《UNIX, Linux》、指定可《Windows》) … Installation2(指定可) V7.1(初回導入環境) V7.1(2つ目の導入環境) 任意のインストレーション名にする場合、規定のルールに従って指定 16文字以内の英文字(a-z, A-Z、大文字/小文字の区別なし)及び数字(0-9)の組み合わせ 導入環境の構成例 AIX で V7.0.1 を導入済みの環境に V7.1 を追加導入し、dspmqinst コマンドで確認した場合 $ dspmqinst InstName: InstDesc: Identifier: InstPath: Version: Primary: State: InstName: InstDesc: Identifier: InstPath: Version: Primary: State: Installation0 IBM WebSphere MQ Installation 0 /usr/mqm 7.0.1.6 Yes Available 導入パス /usr/mqm MQ V7.0.1.6 インストレーション名 Installation0 Primary 導入パス Installation1 /usr/mqm2/usr/mqm 1 /usr/mqm2/usr/mqm 7.1.0.0 No Available インストレーション名 Installation1 4 MQ V7.1 インストレーション名の指定 導入環境に関する情報は、インストレーション名と共に管理される 導入環境の情報はインストール構成ファイル(mqinst.ini)かレジストリに保管 (UNIX, Linux) HKLM¥SOFTWARE¥IBM¥WebSphere MQ¥Installation¥<インストレーション名> (Windows) /etc/opt/mqm/mqinst.ini 導入環境の情報は特権ユーザー(root ユーザー, Administratorグループのメンバー)で コマンドを用いて管理 手動でインストール構成ファイルやレジストリを編集することは不可 制御コマンド crtmqinst ※ 説明 導入環境の追加(導入前にインストレーション名や導入パスを設定) dltmqinst ※ 導入環境の削除(インストール構成ファイルやレジストリーから導入環境の情報を削除) setmqinst 導入環境の変更(インストレーションに対する説明を追加) dspmqinst 導入環境の確認(インストレーション名や導入パスなど導入環境の詳細を表示) ※Windows は導入ウィザードで指定するため、コマンドは提供されない インストール構成ファイルで 管理される情報 インストレーション名 インストレーションに対する説明 インストレーションID 導入パス mqinst.ini の例 (前ページと同じAIX環境の場合) V7.0.1の情報は 含まれない Installation: Name=Installation1 Description= Identifier=1 FilePath=/usr/mqm2/usr/mqm V7.1(初回導入) ・インストレーション名: Installation1 (明示指定不可) ・導入パス: /usr/mqm2/usr/mqm 5 V7.1環境の使用時の注意点 V7.1環境を使用する場合、使用環境をセットアップしないとMQコマンドを実行できない /usr/mqm2/usr/mqm MQ V7.1 $ strmqm QMGR1 見つかりません。 ? QMGR1 Installation1 /usr/mqm3/usr/mqm MQ V7.1 Installation2 使用環境をセットアップするには、以下の2つの方法がある 1.デフォルトの使用環境をプライマリー・インストレーションに指定する 2.MQコマンドの実行前に setmqenv を実行する 6 QMGR2 プライマリー・インストレーションの指定 1. デフォルトの使用環境をプライマリー・インストレーションに指定する方法 プライマリー・インストレーションの指定により、明示的なパス指定なくコマンドが実行可能になる プライマリー・インストレーションの指定時に、リンクや環境変数が自動設定される のシンボリック・リンク (UNIX, Linux) グローバル環境変数 (Windows) /usr/lib、/usr/bin、/usr/include 導入環境のいずれか一つをプライマリー・インストレーションに指定可能 V7.0.1 が存在する場合は、V7.0.1 が必ずプライマリー・インストレーションとなり、変更不可 V7.1以降はプライマリー・インストレーションを変更可能 デフォルト以外のディレクトリを指定した導入環境も、プライマリーに指定することは可能 プライマリー・インストレーションを指定する方法 プライマリー・インストレーションは明示的に指定する必要がある プライマリー・インストレーションを指定するためのコマンド 制御コマンド 説明 setmqinst 導入環境の変更(プライマリー・インストレーションの設定、解除) dspmqinst 導入環境の確認(プライマリー・インストレーションの表示) ※Windows は導入ウィザード中で「一次インストール」を指定することも可能 7 setmqenv による導入環境の使用 2.MQコマンドの実行前に setmqenv を実行する方法 プライマリー・インストレーション以外の環境を使用する場合、使用する導入環境の 導入ディレクトリ下で setmqenv –s コマンドを実行 . $MQ_INSTALLATION_PATH/bin/setmqenv –s (UNIX, Linux) –s (Windows) "<MQ_INSTALLATION_PATH>¥bin¥setmqenv.cmd" setmqenv では以下の環境変数が設定される setmqenv コマンドで設定されるパスは crtmqenv コマンドで確認可能 CLASSPATH INCLUDE LIB MANPATH PATH MQ_DATA_PATH MQ_ENV_MODE MQ_FILE_PATH コマンドの実行前に setmqenv を実施 $ cd /usr/mqm3/usr/mqm/bin $ . ./setmqenv -s $ strmqm QMGR2 キュー・マネージャー 'QMGR2' を開始していま す。 : MQ_JAVA_INSTALL_PATH MQ_JAVA_DATA_PATH MQ_JAVA_LIB_PATH MQ_JAVA_JVM_FLAG MQ_JRE_PATH /usr/mqm2/usr/mqm MQ V7.1 QMGR1 Installation1 Primary /usr/mqm3/usr/mqm MQ V7.1 Installation2 8 QMGR2 キュー・マネージャーと導入環境の関連付け キュー・マネージャーは一つの導入環境に関連付けられる 関連付けられていない導入環境からキュー・マネージャーを操作できない Installation2 を 指定 $ cd /usr/mqm3/usr/mqm/bin $ . ./setmqenv -s $ strmqm QMGR1 AMQ5691: キュー・マ ネージャー 'QMGR1' は、 別のインストール済み環 境に関連付けられていま す。 $ strmqm QMGR2 キュー・マネージャー 'QMGR2' を開始していま す。 : QMGR1 は Installation2 環境 から操作不可 /usr/mqm2/usr/mqm MQ V7.1 QMGR1 Installation1 Primary /usr/mqm3/usr/mqm MQ V7.1 Installation2 QMGR2 QMGR2 は Installation2 環境 から操作可能 9 キュー・マネージャーと導入環境の関連付け キュー・マネージャーに関連付けられる導入環境 crtmqm コマンドを実行した導入環境 V7.0.1 以前のキュー・マネージャーをマイグレーションした場合、初回に strmqm コマンドを 実行したV7.1 の導入環境 関連付けられる導入環境は setmqm コマンドで変更することが可能 キュー・マネージャーと導入環境の関連付けは dspmq –o installation コマンドで確認 dspmq コマンドのオプション dspmq オプション 説明 なし キュー・マネージャーの状況を表示(QMNAME, STATUS のみ) -o installation キュー・マネージャーのインストールの詳細を表示 -o all キュー・マネージャーの全ての状況情報を表示 /usr/mqm MQ V7.0.1.6 $ dspmq -o installation QMNAME(QMGR1) INSTNAME(Installation0) INSTPATH(/usr/mqm) INSTVER(7.0.1.6) Installation0 QMGR1 Primary /usr/mqm2/usr/mqm QMNAME(QMGR2) INSTNAME(Installation1) INSTPATH(/usr/mqm2/usr/mqm) INSTVER(7.1.0.0) MQ V7.1.0.0 Installation1 10 QMGR2 キュー・マネージャーと導入環境の関連付け 導入環境との関連付けの情報はMQ 構成ファイル(mqs.ini)に保管される /var/mqm/mqs.ini (UNIX, Linux) <データ・ファイル・フォルダ>¥mqs.ini (Windows) mqs.ini の例 (前ページと同じAIX環境の場合) QueueManager: Name=QMGR1 Prefix=/var/mqm Directory=QMGR1 InstallationName=Installation0 QueueManager: Name=QMGR2 Prefix=/var/mqm Directory=QMGR2 InstallationName=Installation1 関連付けられる導入環境 のインストレーション名が 記載される 導入環境との関連付けにおける注意点 上位バージョンへ関連付けた場合、初回起動時にマイグレーションが実施される マイグレーション後、下位バージョンの環境に関連付けを変更して稼働することは不可 11 複数バージョン環境を共存するメリットと考慮点 複数バージョン環境を共存させるメリット マシンやシステム・リソースの有効活用(テスト環境など) バージョンや Fix レベルの異なる複数の環境をOS上に共存し、使い分けられる マイグレーションや Fix 適用に伴う作業の柔軟化、簡易化 従来通り新バージョンの導入と同時に行うか、分けて実施するかを選択できる 「MQサーバーのマイグレーション」の項を参照 複数環境を共存する場合、既存環境を稼働しながら新バージョンの導入を進められ、 システムの停止時間を短縮 新バージョン環境や Fix 適用環境に切り替える際の負荷を軽減 Æp.18 複数バージョン環境を共存させる際の考慮点 導入環境を保守する際、どの環境に対して実施するか意識する 追加導入する際は、事前に既存環境の導入ディレクトリを確認 Fix 適用/アンインストールする際は、対象とする導入環境を指定して実施 キュー・マネージャーは関連付けられている導入環境から操作する必要がある 12 複数の導入環境を共存する際の検討事項 複数環境を導入し、共存する際の検討事項 各導入環境の用途と保守方針を決め、以下を検討する 検討事項 注意点 V7.0.1 との共存 -V7.0.1を導入し、V7.1以降と共存するか ・V7.0.1 は前提のFixレベルのV7.0.1.6 以上にアップデートする必要がある ・V7.1 の導入済み環境にV7.0.1 を追加導入することは不可 V7.1 の導入ディレクトリ -どのディレクトリにV7.1を導入するか ・デフォルト・ディレクトリ以外に導入する場合、導入時にディレクトリを指定 ・AIX の場合、ディレクトリ構造が深くなることがある →p.14 「<参考>V7.1 プログラムのディレクトリ構造(AIX)」を参照 プライマリー・インストレーションの設定 -どの導入環境をプライマリー・インストレー ションにするか ・V7.0.1 は自動的にプライマリー・インストレーションに設定される ・V7.1 は明示的にプライマリー・インストレーションを指定する必要がある ・プライマリー・インストレーション以外を使用する場合、setmqenv が必要 キュー・マネージャーの稼働環境 -キュー・マネージャーはどの導入環境に関 連付けるか ・V7.1 へのマイグレーションでは、V7.1 での起動時に自動的にV7.1 に関連 付けられる ・下位バージョンの導入環境に関連付けを変更することは不可 ・上位バージョンの導入環境に関連付けを変更することは可能 アプリケーションの稼働環境 -アプリケーションはどの導入環境のライブラ リーを使用するか ・V7.1のライブラリーを読み込むには、プライマリー・インストレーション以外では setmqenv が必要 →p.21以降の「共存環境でのアプリケーションの使用」の項を参照 13 <参考> V7.1プログラムのディレクトリ構造(AIX) AIXでのプログラムのディレクトリ構造 /etc opt mqm … インストール構成ファイル mqinst.ini 導入後に導入パスと して扱われるパス MQ_INSTALLATION_PATH {ルート・ディレクトリ} usr mqm 導入時に installp コマンドで指定可能 なパス bin inc lib lib64 doc gskit8 java licenses loc man mqxr msg properties samp tivoli README … … … … 実行コマンド ヘッダー・ファイル 32bit シェアード・ライブラリー(*.aファイル群) 64bit シェアード・ライブラリー … GSKit V8 … Java関連(BaseJava, JMS用ライブラリーを含む) … ライセンス・ファイル … マニュアル・ページ(manコマンド) … Telemetryサービス/Telemetryクライアント … メッセージ・カタログ(各国語) … サンプル・プログラム etc lpp lib lpp share ※上記は幕張の WMQ V7.1 for AIX 実環境を基に記載したもので、導入するコンポーネントによりディレク トリーが一部存在しない場合があります。また、ディレクトリー構成は今後変更されることもあります。 14 <参考> 複数導入に関する制御コマンド 複数バージョンの導入に関する制御コマンド 制御コマンド 用途 導入環境の構成、管理 設定 crtmqinst (MQインストールの作成)★ 設定 ★ dltmqinst (MQインストールの削除) 導入環境の項目の削除 設定 setmqinst (MQインストールの設定) プライマリー・インストレーションの設定 ※オプション –x:プライマリー・インストレーションの解除 表示 dspmqinst (MQインストールの表示) プライマリー・インストレーションの確認/mqinst.ini の内容の表示 表示 dspmqver (バージョン情報の表示) 導入環境についての詳細な表示 ※オプション –i:全てのインストレーションを表示 導入予定の環境に対するインストレーション名や導入パスの設定 キュー・マネージャーと導入環境の関連付け 設定 setmqm (キュー・マネージャーの設定) キュー・マネージャーに関連付けられる導入環境の設定 表示 dspmq (キュー・マネージャーの表示) キュー・マネージャーの状況表示、 キュー・マネージャーに関連付けられている導入環境の表示 表示 dspmqinf (MQの構成情報の表示)☆ mqs.ini の内容の表示、addmqinf コマンドの設定の確認 キュー・マネージャーやMQアプリケーションの環境設定 設定 setmqenv (MQ環境の設定) 導入環境に対する環境変数の設定 表示 crtmqenv (MQ環境の作成) 導入環境に対する環境変数リストの作成 ※斜体は V7.1 で新規追加されたコマンド ※太字の実行には root, Administrators グループ権限が必要 ※★:UNIX, Linux のみ、☆:UNIX, Windows のみ 15 Blank Page 16 マイグレーションと共存 17 MQサーバーのマイグレーション 従来は、新バージョンの導入とキュー・マネージャーのマイグレーションは同時に実施 V7.1より、V7.1の導入とキュー・マネージャーのマイグレーションのタイミングを分けられる 新バージョンの導入とマイグレーションを同時に行う場合(従来通り) QMGR V7.0.1 停止 削除 V7.1 導入 V7.1 QMGR 関連 起動 付け システムの停止時間 新バージョンの導入とマイグレーションを分けて行う場合 V7.1 導入 QMGR V7.0.1 停止 削除 V7.1 QMGR 関連 起動 付け システムの停止は不要 システムの停止時間 18 MQサーバーのマイグレーション 新バージョンの導入とマイグレーションを同時に行う場合(従来通り) 既存バージョンと同じディレクトリに導入可能 マイグレーション時にV7.1をプライマリー・インストレーションに設定 移行前 移行後 MQ V7.0.1 MQ V7.1 QMGR QMGR Primary 新バージョンの導入とマイグレーションを分けて行う場合 既存バージョンと異なるディレクトリに導入 マイグレーション時にV7.1をプライマリー・インストレーションに設定 事前にV7.0.1をアンインストールする必要がある 移行前 移行後 MQ V7.0.1 MQ V7.0.1 QMGR QMGR MQ V7.1 MQ V7.0.1 Primary Primary QMGR MQ V7.1 プライマリー・インストレーションに設定後、コマンドやアプリケーションは従来通り実行可能 19 複数環境の共存 複数環境を共存する場合の考慮点 キュー・マネージャーのコマンド実行 V7.0.1は従来通り操作可能 V7.1はプライマリー・インストレーションとして使用できないため、setmqenvでの環境のセットアップが必要 –サンプル・プログラムのディレクトリなどをパスに追加したい場合は、crtmqenvで表示されるリストにパスを追加し、 設定する 従来通りコマンド 実行が可能 MQ V7.0.1 QMGR1 Primary MQ V7.1 QMGR2 コマンド実行前に setmqenv が必要 20 共存環境でのアプリケーションの使用 アプリケーションとキュー・マネージャーの接続性 V7.0.1のアプリケーションがV7.0.1のライブラリーをリンクして、V7.1のキュー・マネージャーに 接続することは不可( ) V7.1のキュー・マネージャーに接続するには、V7.1のライブラリーを参照する必要がある( ) –具体的な対応は次ページに記載 V7.1のアプリケーションがV7.1のライブラリーをリンクして、V7.0.1のキュー・マネージャーに接続 することは可能( ) V7.1よりスイッチング・ライブラリーが提供され、キュー・マネージャーのバージョンを自動識別 バージョン アプリケーション アプリケーションがランタイム・ リンクするライブラリー キュー・マネージャー 7.0.1 ○ ○ ○ 7.1 ○ ○ ○ 21 共存環境でのアプリケーションの使用 V7.1 のライブラリーを参照できるようにするには、以下のいずれかで対応する V7.1 の導入環境をライブラリー・パスに追加 コマンドを –l か –k オプション付きで実行 AIX では LIBPATH, Linux では LD_LIBRARY_PATH を追加 setmqenv {V7.1導入パス} LIBPATH={V7.1導入パス}/ lib MQ V7.1 アプリ QMGR V7.1 の導入環境のパスを指定し、アプリケーションをリコンパイルする ライブラリー・パスを V7.1 導入パスの lib ディレクトリーに指定してリコンパイル {V7.1導入パス} RPath={V7.1導入パス}/ lib MQ V7.1 アプリ 22 QMGR