ISI運用環境を、非同期メッセージング(メッセージ保証あり)構成でセットアップする手順を説明します。非同期メッセージング(メッセージ保証あり)構成ではデータベースを使用します。
セットアップの流れ
データベースのセットアップ
データベースのセットアップ方法を説明します。
本セットアップはデータベースサーバ上で行います。
すでに作成済みのSymfoware RDB環境を使用する場合は、RDBシステムの起動から行ってください。
RDBシステムの作成
/etc/servicesファイルの編集
RDBシステムの起動
JDBCネーミングサービスの起動
データベースの作成
RDBシステムの作成に必要な環境変数を設定します。
Bシェルの場合
. /opt/FJSVesi/bin/esienv.sh
Cシェルの場合
source /opt/FJSVesi/bin/esienv.csh
esisetenv_rdbsysコマンドを実行し、Symfoware ServerのRDBシステムを作成します。
コマンド実行例
# esisetenv_rdbsys -m small -l /dev/rdsk/c0t0d0s3 -d /dev/rdsk/c0t0d0s4
small:モデルケースを指定します。
/dev/rdsk/c0t0d0s3:ログ管理、およびテンポラリログファイル用に作成したRAWデバイスのパス名を指定します。
/dev/rdsk/c0t0d0s4:RDBディクショナリ用に作成したRAWデバイスのパス名を指定します。
# esisetenv_rdbsys -m small -l /dev/raw/raw5 -d /dev/raw/raw6
small:モデルケースを指定します。
/dev/raw/raw5:ログ管理、およびテンポラリログファイル用に作成したRAWデバイスのパス名を指定します。
/dev/raw/raw6:RDBディクショナリ用に作成したRAWデバイスのパス名を指定します。
esisetenv_rdbsysコマンド実行中にエラーが発生した場合は、エラーの原因を取り除いたあと、esiunsetenv_rdbsysコマンドを実行して作成途中のRDBシステムを削除してください。その後、再度esisetenv_rdbsysコマンドを実行してください。
コマンドの実行例
# esiunsetenv_rdbsys Delete RDB system (RDBESI)? (y/n) y
注意
JMS-R環境がセットアップ済みの場合、esiunsetenv_rdbsysコマンドは、JMS-R環境のアンセットアップ後(esiunsetup_dbenv、esiunsetenv_jmsrenvまたはesiunsetenv_jmsrenv_osauthコマンド実行後)に実行してください。
JMS-R環境がセットアップ済みの場合、esiunsetenv_rdbsysコマンドは以下のメッセージを出力して処理を中止します。
### The JMS-R environment exists.
/etc/servicesファイルに、Symfoware Serverで使用するサービス名、ポート番号およびプロトコルを追加します。ポート番号は他のアプリケーションやサービスが使用していない番号を指定してください。
サービス名にはRDBシステム名、ポート番号にはSymfoware Serverで使用するポート番号、プロトコルにはtcpを指定します。
ローカルDBとのトランザクション機能を利用する場合、RDBシステム名には、ローカルDBのRDBシステム名を指定します。ローカルDBとのトランザクション機能を利用しない場合は「RDBESI」を指定します。
/etc/servicesファイルの修正例
: RDBESI 2050/tcp :
rdbstartコマンドを実行し、RDBシステムを起動します。
rdbstart
Symfoware JDBCネーミングサービスの開始
java com.fujitsu.symfoware.jdbc2.naming.SYMNameService &
非同期メッセージング(メッセージ保証あり)構成で使用するデータベース(メッセージ格納DB)では、以下の4つのデータベーススペースを使用します。
メッセージ格納DB(システム固有部)用データベーススペース
JMS-Rキューを管理するためのデータベーススペースです。
メッセージ格納DB(ユーザデータ部)用データベーススペース
JMS-Rキューのメッセージを格納するためのデータベーススペースです。JMS-Rキューを使用する場合、本データベーススペースにメッセージ格納領域を作成する必要があります。
メッセージ保証テーブル用データベースのデータベース
キュー間転送機能用のデータベーススペースです。
メッセージ蓄積データベース用データベーススペース
メッセージ保証、およびメッセージ蓄積のためのデータベーススペースです。
図19.1 非同期メッセージング(メッセージ保証あり)構成で使用するデータベース
データベース環境セットアップ定義作成コマンドの実行
esigendef_jmsrenvコマンドを実行し、データベース環境のセットアップ定義を作成します。詳細は“ISI リファレンス”の“esigendef_jmsrenv”コマンドを参照してください。
コマンド実行例
esigendef_jmsrenv -m small
small:モデルケースを指定します。
作成したJMS-R環境セットアップ定義ファイルは、以下に格納されます。
/opt/FJSVesi/etc/esijmsrsetup.conf
JMS-R環境セットアップ定義ファイルの編集
esisetup_dbenvコマンド実行前に、JMS-R環境セットアップ定義ファイルの内容を編集することで、セットアップ内容をカスタマイズできます。
定義名 | 意味 | 指定例 |
---|---|---|
Model | モデルケースです。
| moderate |
DBName | データベース名です。 | ESIMESSAGEDB |
DBPort | データベースで使用するポート番号です。 | 2050 |
DataSourceNSHost | Symfoware JDBCドライバのデータソースを登録するJDBCネーミングサービスのホスト名です。 | server01 |
DataSourceNSPort | Symfoware JDBCドライバのデータソースを登録するJDBCネーミングサービスのポート番号です。 | 10326 |
CorbaNSHost | Corbaのネーミングサービスのホスト名です。データベースを構築するマシンとISIサーバを構築するマシンを分離する場合、ISIを構築するサーバのホスト名を指定します。 | server01 |
CorbaNSPort | CorbaNSHostで指定したホストでのCorbaのネーミングサービスのポート番号です。 | 8002 |
MessageMax | JMS-Rキューに蓄積可能なメッセージ数です。指定可能な範囲は50~20000000です。 本定義は、esisetup_dbenvコマンド実行時のオプションに「-w」を指定した場合、本定義は無視されます。 | 200 |
MessageLength | 扱うメッセージの平均長(Kバイト単位)です。 | 64 |
JMSRQueueMax | JMS-Rキューの最大個数です。 | 30 |
JMSRDBSchemaName | JMS-Rのメッセージ格納DBで使用するスキーマ名です。 | APFW001 |
QCTMQDSystemName | キュー間転送用MQDシステム名です。 | MQDESI01 |
MsgDBSpaceSize | 3000Mを指定してください。 | 3000M |
MsgDBAccumulateMessageBLOBSize | メッセージ蓄積データベースの情報です。 | 10M |
MsgDBDSITableInitialSize | メッセージ蓄積データベースの情報です。 | 10M |
MsgDBDSITableExtendSize | メッセージ蓄積データベースの情報です。 | 10M |
MsgDBDSITableExtendOpportunity | メッセージ蓄積データベースの情報です。 | 256K |
MsgDBDSIIndexInitialBaseSize | メッセージ蓄積データベースの情報です。 | 10M |
MsgDBDSIIndexInitialIndexSize | メッセージ蓄積データベースの情報です。 | 256K |
MsgDBDSIIndexExtendSize | メッセージ蓄積データベースの情報です。 | 10M |
MsgDBDSIIndexExtendOpportunity | メッセージ蓄積データベースの情報です。 | 256K |
JMS-R環境セットアップ定義ファイルは、以下の形式で指定してください。
定義文は一行に一文
定義文は以下の形式で記述
定義名=値(改行)
“=”の前後の空白は不可
コメントは行の先頭に“#”を指定
データベース環境セットアップコマンドの実行
esisetup_dbenvコマンドを実行し、データベース環境を作成します。esisetup_dbenvコマンドの詳細は“ISI リファレンス”の“esisetup_dbenv”コマンドを参照してください。
メッセージ格納領域を後から作成する場合は「-w」オプションを指定してください。「-w」オプションを省略した場合、デフォルトのメッセージ格納領域を作成します。
DBMS認証の場合のコマンド実行例(メッセージ格納領域を後から作成する場合)
データベーススペース格納用のrawデバイスを用意します。
/dev/rdsk/c0t0d0s5
/dev/rdsk/c0t0d0s7
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -u esidbuser -w -1 /dev/rdsk/c0t0d0s5 -3 /dev/rdsk/c0t0d0s7
esidbuser: DBユーザIDを設定します。
OS認証の場合のコマンド実行例(メッセージ格納領域を後から作成する場合)
OS認証のユーザを登録します。登録方法は、OSのユーザ登録方法に従ってください。
OSに登録するユーザ | ユーザID |
---|---|
業務データベースユーザ | osdbuser |
JMS-Rユーザ1(実行基盤管理者ユーザ) | jmsrusr1 |
JMS-Rユーザ2(実行基盤利用者ユーザ) | jmsrusr2 |
データベーススペース格納用のrawデバイスを用意します。
/dev/rdsk/c0t0d0s5
/dev/rdsk/c0t0d0s7
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -o -u osdbuser -q jmsrusr1 -s jmsrusr2 -w -1 /dev/rdsk/c0t0d0s5 -3 /dev/rdsk/c0t0d0s7
DBMS認証の場合のコマンド実行例(デフォルトのメッセージ格納領域を作成する場合)
データベーススペース格納用のrawデバイスを用意します。
/dev/rdsk/c0t0d0s5
/dev/rdsk/c0t0d0s6
/dev/rdsk/c0t0d0s7
メッセージ保証テーブル用のデータベーススペース格納ディレクトリを作成します。
/rdbesi/isi_msgacmdb
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -u esidbuser -1 /dev/rdsk/c0t0d0s5 -2 /dev/rdsk/c0t0d0s6 -3 /dev/rdsk/c0t0d0s7 -4 /rdbesi/isi_msgacmdb
esidbuser: DBユーザIDを指定します。
OS認証の場合のコマンド実行例(デフォルトのメッセージ格納領域を作成する場合)
OS認証のユーザを登録します。登録方法は、OSのユーザ登録方法に従ってください。
OSに登録するユーザ | ユーザID |
---|---|
業務データベースユーザ | osdbuser |
JMS-Rユーザ1(実行基盤管理者ユーザ) | jmsrusr1 |
JMS-Rユーザ2(実行基盤利用者ユーザ) | jmsrusr2 |
データベーススペース格納用のrawデバイスを用意します。
/dev/rdsk/c0t0d0s5
/dev/rdsk/c0t0d0s6
/dev/rdsk/c0t0d0s7
メッセージ保証テーブル用のデータベーススペース格納ディレクトリを作成します。
/rdbesi/isi_msgacmdb
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -o -u osdbuser -q jmsrusr1 -s jmsrusr2 -1 /dev/rdsk/c0t0d0s5 -2 /dev/rdsk/c0t0d0s6 -3 /dev/rdsk/c0t0d0s7 -4 /rdbesi/isi_msgacmdb
DBMS認証の場合のコマンド実行例(メッセージ格納領域を後から作成する場合)
データベーススペース格納用のrawデバイスを用意します。
/dev/raw/raw7
/dev/raw/raw9
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -u esidbuser -w -1 /dev/raw/raw7 -3 /dev/raw/raw9
esidbuser: DBユーザIDを設定します。
OS認証の場合のコマンド実行例(メッセージ格納領域を後から作成する場合)
OS認証のユーザを登録します。登録方法は、OSのユーザ登録方法に従ってください。
OSに登録するユーザ | ユーザID |
---|---|
業務データベースユーザ | osdbuser |
JMS-Rユーザ1(実行基盤管理者ユーザ) | jmsrusr1 |
JMS-Rユーザ2(実行基盤利用者ユーザ) | jmsrusr2 |
データベーススペース格納用のrawデバイスを用意します。
/dev/raw/raw7
/dev/raw/raw9
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -o -u osdbuser -q jmsrusr1 -s jmsrusr2 -w -1 /dev/raw/raw7 -3 /dev/raw/raw9
DBMS認証の場合のコマンド実行例(デフォルトのメッセージ格納領域を作成する場合)
データベーススペース格納用のrawデバイスを用意します。
/dev/raw/raw7
/dev/raw/raw8
/dev/raw/raw9
メッセージ保証テーブル用のデータベーススペース格納ディレクトリを作成します。
/rdbesi/isi_msgacmdb
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -u esidbuser -1 /dev/raw/raw7 -2 /dev/raw/raw8 -3 /dev/raw/raw9 -4 /rdbesi/isi_msgacmdb
esidbuser: DBユーザIDを指定します。
OS認証の場合のコマンド実行例(デフォルトのメッセージ格納領域を作成する場合)
OS認証のユーザを登録します。登録方法は、OSのユーザ登録方法に従ってください。
OSに登録するユーザ | ユーザID |
---|---|
業務データベースユーザ | osdbuser |
JMS-Rユーザ1(実行基盤管理者ユーザ) | jmsrusr1 |
JMS-Rユーザ2(実行基盤利用者ユーザ) | jmsrusr2 |
データベーススペース格納用のrawデバイスを用意します。
/dev/raw/raw7
/dev/raw/raw8
/dev/raw/raw9
メッセージ保証テーブル用のデータベーススペース格納ディレクトリを作成します。
/rdbesi/isi_msgacmdb
esisetup_dbenvコマンドを実行します。
esisetup_dbenv -o -u osdbuser -q jmsrusr1 -s jmsrusr2 -1 /dev/raw/raw7 -2 /dev/raw/raw8 -3 /dev/raw/raw9 -4 /rdbesi/isi_msgacmdb
メッセージ格納領域の作成
“JMS-Rキューの作成”の“20.3.1 メッセージ格納領域の作成”と同じ手順です。なお、デフォルトのメッセージ格納領域を作成済みの場合、本手順は不要です。
ISIサーバのセットアップ
非同期メッセージング(メッセージ保証あり)構成で運用する場合に必要となるISIサーバのセットアップ手順を説明します。
本セットアップはアプリケーションサーバ上で行います。
データベースサーバ接続設定
セットアップコマンドの実行
データベースへの接続確認
メディエータファンクションの定義の登録
JMS-Rキューの作成
ISIサーバの起動
アプリケーションサーバとデータベースサーバを分離して運用する場合に必要な手順です。アプリケーションサーバとデータベースサーバを同一サーバで運用する場合、本手順は省略してください。
データベースサーバ接続設定ファイル作成
esigendef_dbinfoコマンドを実行し、ISIサーバ用のデータベース接続設定ファイルを作成します。esigendef_dbinfoコマンドの詳細は、“ISI リファレンス”を参照してください。
コマンド実行例
esigendef_dbinfo -h dbserver
dbserver: データベースサーバのホスト名を指定します。
作成したデータベース接続設定ファイルは、以下に格納されます。
/opt/FJSVesi/etc/esijmsrdbinfo.conf
データベースサーバ接続設定ファイルの編集
データベースサーバの環境に合わせセットアップ内容を編集してください。
定義名 | 意味 | 指定例 |
---|---|---|
DBName | データベース名です。 | ESIMESSAGEDB |
DBPort | データベースで使用するポート番号です。 | 2050 |
DataSourceNSHost | Symfoware JDBCドライバのデータソースを登録するJDBCネーミングサービスのホスト名です。 | dbserver |
DataSourceNSPort | Symfoware JDBCドライバのデータソースを登録するJDBCネーミングサービスのポート番号です。 | 10326 |
QCTMQDSystemName | キュー間転送用MQDシステム名です。 | MQDESI01 |
MessageMax | JMS-Rキューに格納可能なメッセージ数です。 | 200 |
データベースサーバ接続情報の設定
データベースサーバ接続情報を設定します。以下のコマンドを実行してください。詳細は“ISI リファレンス”の“esisetdbinfo”コマンドを参照してください。
esisetdbinfo
hostsファイルの編集
データベースサーバのホスト名を/etc/hostsファイルに定義してください。
編集例
192.168.0.10 dbserver
192.168.0.10: データベースサーバのホスト名のIPアドレス
dbserver: データベースサーバのホスト名
ISI運用管理コンソールとISIサーバをセットアップします。以下のコマンドを実行してください。詳細は“ISI リファレンス”の“esisetup”コマンドを参照してください。
JMS-Rキューを後から作成する場合は、「-w」オプションを指定してください。
「-w」オプションを省略した場合、デフォルトのJMS-Rキューを作成します。デフォルトのメッセージ格納領域を作成済みの場合にデフォルトのJMS-Rキューを作成できます。
コマンド実行例(JMS-Rキューを後から作成する場合)
esisetup -w -r -u esidbuser
esidbuser:データベースユーザ
コマンド実行例(デフォルトのJMS-Rキューを作成する場合)
esisetup -r -u esidbuser
esidbuser:データベースユーザ
セットアップコマンド実行後、データベースへの接続確認を実施してください。
Interstage管理コンソールを使用して、[Interstage Application Server] > [システム] > [リソース] > [JDBC] > [esimsgdb] > [環境設定]からDB接続テストを実施します。
接続に失敗する場合、以下を確認し再度接続テストを実施してください。
ユーザ名、ネーミングサービスのホスト名が正しいか確認し、異なる場合は設定を変更してください。
認証に失敗する場合は、パスワードを再設定してください。
SymfowareのJDBCネーミングサービスの設定を確認してください。確認方法については“付録G SymfowareのJDBCデータソースの変更”を参照してください。
サービスエンドポイントごとにJMS-Rキューを作成してください。JMS-Rキューの作成手順は、“20.3 JMS-Rキューの作成 ”を参照してください。
メディエータファンクション定義を登録します。以下のコマンドを実行してください。詳細は“ISI リファレンス”の“esidefadd”コマンドを参照してください。
esidefadd -m /opt/FJSVesi/etc/def/default/mediatorfunction.xml -o
ISIサーバを起動します。起動方法は、“ISI 運用ガイド”を参照してください。
サービスエンドポイントの追加
ISIの運用を開始したあとで、サービスエンドポイントを追加する必要がある場合は、JMS-Rキューをセットアップします。JMS-Rキューのセットアップ方法については、“20.3 JMS-Rキューの作成 ”を参照してください。