Oracle Tuxedo Domains コンポーネント

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

ATMI Domains の計画とコンフィグレーション

以下の節では、Oracle Tuxedo ATMI Domains 環境のドメインの計画およびコンフィグレーションの方法について説明します。

 


複数の Oracle Tuxedo アプリケーションに基づく Domains の構築計画

次の図は、bankapp アプリケーションとクレジット カード認可アプリケーションの 2 つの Oracle Tuxedo アプリケーションを示しています。

図 2-1 2 つの Oracle Tuxedo アプリケーション

2 つの Oracle Tuxedo アプリケーション

bankapp アプリケーションは、各地の支店にある ATM を本店に接続します。クレジット カード認可アプリケーションは、クレジット カードを求める顧客の要求を処理します。銀行の支店長たちは、時間が経つにつれて、bankapp アプリケーションがクレジット カード認可アプリケーションと直に通信できれば顧客へのサービスが向上すると考えるようになります。直接通信できれば、新しい口座を開く人に即座にクレジット カードを発行できます。

bankapp アプリケーションは Oracle Tuxedo に同梱のサンプル アプリケーションであり、クレジット カード認可アプリケーションは bankapp の仮想的な拡張機能です。bankapp アプリケーションのファイルは次の場所にあります。

tux_prod_dir は、Oracle Tuxedo がインストールされたディレクトリです。

次のコード リストは、ubbmp というファイルの内容を示しています。ubbmp は、bankapp アプリケーションのマルチ マシン バージョンの UBBCONFIG ファイルです。

コード リスト 2-1 bankapp アプリケーションの ubbmp コンフィグレーション ファイル
.
.
.
*RESOURCES
IPCKEY           80952
UID              <user id from id(1)>
GID              <group id from id(1)>
PERM             0660
MAXACCESSERS     40
MAXSERVERS       35
MAXSERVICES      75
MAXCONV          10
MAXGTT           20
MASTER           SITE1,SITE2
SCANUNIT         10
SANITYSCAN       12
BBLQUERY         30
BLOCKTIME        30
DBBLWAIT         6
OPTIONS          LAN,MIGRATE
MODEL            MP
LDBAL            Y
##SECURITY       ACL
##AUTHSVC        "..AUTHSVC"
#
*MACHINES
<SITE1's uname>  LMID=SITE1
                 TUXDIR="<TUXDIR1>"
                 APPDIR="<APPDIR1>"
                 ENVFILE="<APPDIR1>/ENVFILE"
                 TLOGDEVICE="<APPDIR1>/TLOG"
                 TLOGNAME=TLOG
                 TUXCONFIG="<APPDIR1>/tuxconfig"
                 TYPE="<machine type1>"
                 ULOGPFX="<APPDIR1>/ULOG"
<SITE2's uname>  LMID=SITE2
                 TUXDIR="<TUXDIR2>"
                 APPDIR="<APPDIR2>"
                 ENVFILE="<APPDIR2>/ENVFILE"
                 TLOGDEVICE="<APPDIR2>/TLOG"
                 TLOGNAME=TLOG
                 TUXCONFIG="<APPDIR2>/tuxconfig"
                 TYPE="<machine type2>"
                 ULOGPFX="<APPDIR2>/ULOG"
#
*GROUPS
#
# 認証サーバのグループ
#
##AUTHGRP        LMID=SITE1   GRPNO=101
#
# アプリケーション キュー (/Q) サーバのグループ
#
##QGRP1          LMID=SITE1   GRPNO=102
##               TMSNAME=TMS_QM  TMSCOUNT=2
##               OPENINFO="TUXEDO/QM:<APPDIR1>/qdevice:QSP_BANKAPP"
#
# アプリケーション マネージャのサーバのグループ
#
##MGRGRP1        LMID=SITE1   GRPNO=103
#
# イベント ブローカ サーバのグループ
#
##EVBGRP1        LMID=SITE1   GRPNO=104
DEFAULT:         TMSNAME=TMS_SQL   TMSCOUNT=2
BANKB1           LMID=SITE1   GRPNO=1
                 OPENINFO="TUXEDO/SQL:<APPDIR1>/bankdl1:bankdb:readwrite"
BANKB2           LMID=SITE2   GRPNO=2
                 OPENINFO="TUXEDO/SQL:<APPDIR2>/bankdl2:bankdb:readwrite"
*NETWORK
SITE1            NADDR="<network address of SITE1>"
                 BRIDGE="<device of provider1>"
                 NLSADDR="<network listener address of SITE1>"
SITE2            NADDR="<network address of SITE2>"
                 BRIDGE="<device of provider2>"
                 NLSADDR="<network listener address of SITE2>"
*SERVERS
#
# アプリケーション固有の認証を提供する TUXEDO System /T サーバ
# AUTHSVR(5) を参照
#
##AUTHSVR        SRVGRP=AUTHGRP  SRVID=1  RESTART=Y  GRACE=0  MAXGEN=2
##               CLOPT="-A"
#
# TUXEDO System /T メッセージ キュー マネージャ。tpenqueue(3) および
# tpdequeue(3) を呼び出すプログラムの代わりにメッセージを
# キューに登録したり、取り出したりするサーバ。TMQUEUE(5) を参照
#
##TMQUEUE        SRVGRP=QGRP1    SRVID=1  CONV=N  GRACE=0
##               CLOPT="-s QSP_BANKAPP:TMQUEUE"
#
# TUXEDO System /T メッセージ転送サーバ。後で処理するように tpenqueue(3)
# で格納されたメッセージを転送する。TMQFORWARD(5) を参照
#
##TMQFORWARD     SRVGRP=QGRP1    SRVID=2  CONV=N  REPLYQ=N  GRACE=0
##               CLOPT="-- -e -n -d -q Q_OPENACCT_LOG"
#
# TUXEDO System /T ユーザ イベント ブローカ。イベントがポストされたときに
# サブスクライバに通知してユーザ イベントを管理する。TMUSREVT(5) を参照
#
##TMUSREVT       SRVGRP=EVBGRP1  SRVID=1  GRACE=3600
##               ENVFILE="<APPDIR1>/TMUSREVT.ENV"
##               CLOPT="-e tmusrevt.out -o tmusrevt.out -A --
##                    -f <APPDIR1>/tmusrevt.dat"
##               SEQUENCE=11
#
# 特定のイベントをサブスクライブする TUXEDO アプリケーション サーバ
#
##ACCTMGR SRVGRP=MGRGRP1         SRVID=1
##               CLOPT="-A -o ACCTMGR.LOG -- -w 1000.00"
##               SEQUENCE=12
DEFAULT: RESTART=Y    MAXGEN=5   REPLYQ=Y  CLOPT="-A"
TLR              SRVGRP=BANKB1   SRVID=1  RQADDR=tlr1
                 CLOPT="-A -- -T 100 -e 1000.00"
TLR              SRVGRP=BANKB1   SRVID=2  RQADDR=tlr1
                 CLOPT="-A -- -T 200 -e 1000.00"
TLR              SRVGRP=BANKB2   SRVID=3  RQADDR=tlr2
                 CLOPT="-A -- -T 600 -e 1000.00"
TLR              SRVGRP=BANKB2   SRVID=4  RQADDR=tlr2
                 CLOPT="-A -- -T 700 -e 1000.00"
XFER             SRVGRP=BANKB1   SRVID=5
XFER             SRVGRP=BANKB2   SRVID=6
ACCT             SRVGRP=BANKB1   SRVID=7
ACCT             SRVGRP=BANKB2   SRVID=8
BAL              SRVGRP=BANKB1   SRVID=9
BAL              SRVGRP=BANKB2   SRVID=10
BTADD            SRVGRP=BANKB1   SRVID=11
BTADD            SRVGRP=BANKB2   SRVID=12
AUDITC           SRVGRP=BANKB1   SRVID=13  CONV=Y  MIN=1 MAX=10 RQADDR="auditc"
BALC             SRVGRP=BANKB1   SRVID=24
BALC             SRVGRP=BANKB2   SRVID=25
#
*SERVICES
DEFAULT:         LOAD=50  AUTOTRAN=Y  TRANTIME=30
WITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_ID
DEPOSIT          PRIO=50  ROUTING=ACCOUNT_ID
TRANSFER         PRIO=50  ROUTING=ACCOUNT_ID
INQUIRY          PRIO=50  ROUTING=ACCOUNT_ID
CLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_ID
OPEN_ACCT        PRIO=40  ROUTING=BRANCH_ID
BR_ADD           PRIO=20  ROUTING=BRANCH_ID
TLR_ADD          PRIO=20  ROUTING=BRANCH_ID
ABAL             PRIO=30  ROUTING=b_id
TBAL             PRIO=30  ROUTING=b_id
ABAL_BID         PRIO=30  ROUTING=b_id
TBAL_BID         PRIO=30  ROUTING=b_id
ABALC_BID        PRIO=30  ROUTING=b_id
TBALC_BID        PRIO=30  ROUTING=b_id
#
*ROUTING
ACCOUNT_ID       FIELD=ACCOUNT_ID
                 BUFTYPE="FML"
                 RANGES="10000-59999:BANKB1,
                         60000-109999:BANKB2"
BRANCH_ID        FIELD=BRANCH_ID
                 BUFTYPE="FML"
                 RANGES="1-5:BANKB1,
                         6-10:BANKB2"
b_id             FIELD=b_id
                 BUFTYPE="VIEW:aud"
                 RANGES="1-5:BANKB1,
                         6-10:BANKB2"

以下の節では、bankapp アプリケーションとクレジット カード認可アプリケーションが直接通信できるように再設定する 2 通りの方法を示します。

オプション 1: 単一の Oracle Tuxedo ドメインとしてアプリケーションを再コンフィグレーションする

1 つの方法は、次の図のように、bankapp アプリケーションとクレジット カード認可アプリケーションを 1 つの Oracle Tuxedo アプリケーション (ドメイン) に結合することです。

図 2-2 2 つの Oracle Tuxedo システム アプリケーションの結合

2 つの Oracle Tuxedo システム アプリケーションの結合

結合したアプリケーションの UBBCONFIG ファイルの作成

結合したアプリケーションの UBBCONFIG ファイルを作成するには、クレジット カード認可アプリケーションの UBBCONFIG ファイルから次の情報を取り出し、それを bankapp アプリケーションの UBBCONFIG ファイルに追加します。

次のコード リストは、結合したアプリケーションの UBBCONFIG ファイル例を示しています。

コード リスト 2-2 結合したアプリケーションのサンプル UBBCONFIG ファイル
*RESOURCES
IPCKEY 76666
UID 0000
GID 000
PERM 0660
MAXACCESSERS 40
MAXSERVERS 35
MAXSERVICES 75
MAXCONV 10
MAXGTT 100
MASTER SITE1,SITE2
SCANUNIT 10
SANITYSCAN 5
BBLQUERY 50
BLOCKTIME 2
DBBLWAIT 6
OPTIONS LAN,MIGRATE
MODEL MP
LDBAL Y
#
*MACHINES
#
# bankapp 部分のマシン
mach1            LMID=SITE1
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
                 TYPE=“type1”
                 ULOGPFX=“/home/rsmith/bankapp/ULOG”
mach2            LMID=SITE2
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
TYPE=“type2”
ULOGPFX=“/home/rsmith/bankapp/ULOG”
mach3            LMID=SITE3
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
TYPE=“type2”
ULOGPFX=“/home/rsmith/bankapp/ULOG”
#
# クレジット カード認可部分のマシン
sfexpz           LMID=SITE4
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
                 TYPE=“type1”
                 ULOGPFX=“/home/rsmith/bankapp/ULOG”
#
*GROUPS
DEFAULT: TMSNAME=TMS_SQL TMSCOUNT=2
#
# bankapp 部分のグループ
BANKB1 LMID=SITE1 GRPNO=1
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl1:bankdb:readwrite”
BANKB2    LMID=SITE2 GRPNO=2
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl2:bankdb:readwrite”
BANKB3    LMID=SITE3 GRPNO=3
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl3:bankdb:readwrite”
#
# クレジット カード認可部分のグループ
CREDIT    LMID=SITE4 GRPNO=4
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/crdtdl1:bankdb:readwrite”
#
*NETWORK
#
# bankapp 部分のネットワーク接続
SITE1  NADDR=“<network address of SITE1>”
 BRIDGE=“<device of provider1>”
 NLSADDR=“<network listener address of SITE1>”
SITE2  NADDR=“<network address of SITE2>”
 BRIDGE=“<device of provider2>”
 NLSADDR=“<network listener address of SITE2>”
SITE3  NADDR=“<network address of SITE3>”
 BRIDGE=“<device of provider3>”
 NLSADDR=“<network listener address of SITE3>”
#
# クレジット カード認可部分のネットワーク接続
SITE4  NADDR=“<network address of SITE4>”
 BRIDGE=“<device of provider4>”
 NLSADDR=“<network listener address of SITE4>”
#
*SERVERS
DEFAULT:  RESTART=Y       MAXGEN=5      REPLYQ=Y   CLOPT=“-A”
#
# bankapp 部分のサーバ
TLR   SRVGRP=BANKB1 SRVID=1       RQADDR=tlr1
          CLOPT=“-A -- -T 100 -e 1000.00”
TLR   SRVGRP=BANKB1   SRVID=2       RQADDR=tlr1
          CLOPT=“-A -- -T 200 -e 1000.00”
TLR   SRVGRP=BANKB2   SRVID=3       RQADDR=tlr2
          CLOPT=“-A -- -T 600 -e 1000.00”
TLR   SRVGRP=BANKB2   SRVID=4       RQADDR=tlr2
          CLOPT=“-A -- -T 700 -e 1000.00”
TLR   SRVGRP=BANKB3   SRVID=5       RQADDR=tlr3
          CLOPT=“-A -- -T 800 -e 1000.00”
TLR   SRVGRP=BANKB3 SRVID=6       RQADDR=tlr3
          CLOPT=“-A -- -T 900” -e 1000.00
XFER   SRVGRP=BANKB1 SRVID=7
XFER   SRVGRP=BANKB2 SRVID=8
XFER   SRVGRP=BANKB3 SRVID=9
ACCT   SRVGRP=BANKB1 SRVID=10
ACCT   SRVGRP=BANKB2 SRVID=11
ACCT   SRVGRP=BANKB3 SRVID=12
BAL       SRVGRP=BANKB1 SRVID=13
BAL       SRVGRP=BANKB2 SRVID=14
BAL       SRVGRP=BANKB3 SRVID=15
BTADD     SRVGRP=BANKB1 SRVID=16
BTADD     SRVGRP=BANKB2 SRVID=17
BTADD     SRVGRP=BANKB3 SRVID=18
AUDITC    SRVGRP=BANKB1 SRVID=19      CONV=Y  MIN=1  MAX=10  RQADDR=”auditc”
BALC      SRVGRP=BANKB1 SRVID=20
BALC      SRVGRP=BANKB2 SRVID=21
BALC      SRVGRP=BANKB3 SRVID=22
#
# クレジット カード認可部分のサーバ
TLRA   SRVGRP=CREDIT   SRVID=26
          CLOPT=“-A -- -T 300”
ACCTA   SRVGRP=CREDIT   SRVID=27
CRDT   SRVGRP=CREDIT   SRVID=35
#
*SERVICES
DEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30
#
# bankapp 部分のサービス
WITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_ID
DEPOSIT          PRIO=50  ROUTING=ACCOUNT_ID
TRANSFER         PRIO=50  ROUTING=ACCOUNT_ID
INQUIRY          PRIO=50  ROUTING=ACCOUNT_ID
CLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_ID
OPEN_ACCT        PRIO=40  ROUTING=BRANCH_ID
BR_ADD           PRIO=20  ROUTING=BRANCH_ID
TLR_ADD          PRIO=20  ROUTING=BRANCH_ID
ABAL             PRIO=30  ROUTING=b_id
TBAL             PRIO=30  ROUTING=b_id
ABAL_BID         PRIO=30  ROUTING=b_id
TBAL_BID         PRIO=30  ROUTING=b_id
ABALC_BID        PRIO=30  ROUTING=b_id
TBALC_BID        PRIO=30  ROUTING=b_id
#
# クレジット カード認可部分のサービス
WITHDRAWALA  PRIO=50
INQUIRYA  PRIO=50
OPENCA  PRIO=40
CLOSECA  PRIO=40
DEPOSITA  PRIO=50
OPEN_ACCT2  PRIO=40
OPENC  PRIO=40
#
*ROUTING
ACCOUNT_ID       FIELD=ACCOUNT_ID
                 BUFTYPE=“FML”
                 RANGES=“10000-39999:BANKB1,
                         40000-69999:BANKB2,
                         70000-109999:BANKB3,
                         *:*”
BRANCH_ID        FIELD=BRANCH_ID
                 BUFTYPE=“FML”
                 RANGES=“1-5:BANKB1,
                         6-10:BANKB2,
                         11-15:BANKB3”
b_id             FIELD=b_id
                 BUFTYPE="VIEW:aud"
                 RANGES="1-5:BANKB1,
                         6-10:BANKB2,
                         11-15:BANKB3"

オプション 1 の制限

オプション 2: アプリケーションを Domains コンフィグレーションとして再コンフィグレーションする

もう 1 つの方法は、次の図のように、bankapp アプリケーションとクレジット カード認可アプリケーションを Domains コンフィグレーションとして再設定することです。2 つのドメインは、それぞれ各ドメインで動作する 2 つの TDomain ゲートウェイ サーバ プロセスを通じて相互運用されます。

図 2-3 Domains コンフィグレーション

Domains コンフィグレーション

bankapp アプリケーションとクレジット カード認可アプリケーションの Domains コンフィグレーションを作成するには、2 つの UBBCONFIG ファイル (各 Oracle Tuxedo アプリケーションに 1 つ) および 2 つの DMCONFIG ファイル (各 Oracle Tuxedo アプリケーションに 1 つ) を作成する必要があります。

Domains 環境の bankapp アプリケーションの UBBCONFIG ファイルの作成

Domains 環境の bankapp アプリケーションの UBBCONFIG ファイルを作成するには、「結合したアプリケーションのサンプル UBBCONFIG ファイル」に示されている UBBCONFIG ファイルのコピーを土台として次の変更を行います。

次のコード リストは、Domains 環境の bankapp アプリケーションの UBBCONFIG ファイル例を示しています。

コード リスト 2-3 Domains 環境の bankapp アプリケーションのサンプル UBBCONFIG ファイル
*RESOURCES
IPCKEY 76666
UID 0000
GID 000
PERM 0660
MAXACCESSERS 40
MAXSERVERS 35
MAXSERVICES 75
MAXCONV 10
MAXGTT 100
MASTER SITE1,SITE2
SCANUNIT 10
SANITYSCAN 5
BBLQUERY 50
BLOCKTIME 2
DBBLWAIT 6
OPTIONS LAN,MIGRATE
MODEL MP
LDBAL Y
MAXBUFTYPE 16
#
*MACHINES
mach1            LMID=SITE1
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
                 TYPE=“type1”
                 ULOGPFX=“/home/rsmith/bankapp/ULOG”
mach2            LMID=SITE2
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
TYPE=“type2”
ULOGPFX=“/home/rsmith/bankapp/ULOG”
mach3            LMID=SITE3
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/bankapp”
ENVFILE=“/home/rsmith/bankapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/bankapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/bankapp/tuxconfig”
TYPE=“type2”
ULOGPFX=“/home/rsmith/bankapp/ULOG”
#
*GROUPS
DEFAULT: TMSNAME=TMS_SQL  TMSCOUNT=2
#
# bankapp のグループ
BANKB1 LMID=SITE1       GRPNO=1
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl1:bankdb:readwrite”
BANKB2    LMID=SITE2       GRPNO=2
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl2:bankdb:readwrite”
BANKB3    LMID=SITE3       GRPNO=3
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/bankdl3:bankdb:readwrite”
#
# Domains のグループ
DMADMGRP  LMID=SITE1       GRPNO=4
GWTGROUP  LMID=SITE2       GRPNO=5
#
*NETWORK
SITE1  NADDR=“<network address of SITE1>”
 BRIDGE=“<device of provider1>”
 NLSADDR=“<network listener address of SITE1>”
SITE2  NADDR=“<network address of SITE2>”
 BRIDGE=“<device of provider2>”
 NLSADDR=“<network listener address of SITE2>”
SITE3  NADDR=“<network address of SITE3>”
 BRIDGE=“<device of provider3>”
 NLSADDR=“<network listener address of SITE3>”
#
*SERVERS
DEFAULT:  RESTART=Y       MAXGEN=5 REPLYQ=Y CLOPT=“-A”
#
# Domains のサーバ
DMADM     SRVGRP=DMADMGRP
          SRVID=1001
          REPLYQ=N
          RESTART=Y
          GRACE=0
GWADM     SRVGRP=GWTGROUP
          SRVID=1002
          REPLYQ=N
          RESTART=Y
          GRACE=0
GWTDOMAIN SRVGRP=GWTGROUP
          SRVID=1003
          RQADDR=”GWTGROUP”
          REPLYQ=N
          RESTART=Y
          GRACE=0
#
# bankapp のサーバ
TLR   SRVGRP=BANKB1 SRVID=1       RQADDR=tlr1
          CLOPT=“-A -- -T 100 -e 1000.00”
TLR   SRVGRP=BANKB1   SRVID=2       RQADDR=tlr1
          CLOPT=“-A -- -T 200 -e 1000.00”
TLR   SRVGRP=BANKB2   SRVID=3       RQADDR=tlr2
          CLOPT=“-A -- -T 600 -e 1000.00”
TLR   SRVGRP=BANKB2   SRVID=4       RQADDR=tlr2
          CLOPT=“-A -- -T 700 -e 1000.00”
TLR   SRVGRP=BANKB3   SRVID=5       RQADDR=tlr3
          CLOPT=“-A -- -T 800 -e 1000.00”
TLR   SRVGRP=BANKB3 SRVID=6       RQADDR=tlr3
          CLOPT=“-A -- -T 900” -e 1000.00
XFER   SRVGRP=BANKB1 SRVID=7
XFER   SRVGRP=BANKB2 SRVID=8
XFER   SRVGRP=BANKB3 SRVID=9
ACCT   SRVGRP=BANKB1 SRVID=10
ACCT   SRVGRP=BANKB2 SRVID=11
ACCT   SRVGRP=BANKB3 SRVID=12
BAL       SRVGRP=BANKB1 SRVID=13
BAL       SRVGRP=BANKB2 SRVID=14
BAL       SRVGRP=BANKB3 SRVID=15
BTADD     SRVGRP=BANKB1 SRVID=16
BTADD     SRVGRP=BANKB2 SRVID=17
BTADD     SRVGRP=BANKB3 SRVID=18
AUDITC    SRVGRP=BANKB1 SRVID=19      CONV=Y  MIN=1  MAX=10  RQADDR=”auditc”
BALC      SRVGRP=BANKB1 SRVID=20
BALC      SRVGRP=BANKB2 SRVID=21
BALC      SRVGRP=BANKB3 SRVID=22
#
*SERVICES
DEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30
WITHDRAWAL       PRIO=50  ROUTING=ACCOUNT_ID
DEPOSIT          PRIO=50  ROUTING=ACCOUNT_ID
TRANSFER         PRIO=50  ROUTING=ACCOUNT_ID
INQUIRY          PRIO=50  ROUTING=ACCOUNT_ID
CLOSE_ACCT       PRIO=40  ROUTING=ACCOUNT_ID
OPEN_ACCT        PRIO=40  ROUTING=BRANCH_ID
BR_ADD           PRIO=20  ROUTING=BRANCH_ID
TLR_ADD          PRIO=20  ROUTING=BRANCH_ID
ABAL             PRIO=30  ROUTING=b_id
TBAL             PRIO=30  ROUTING=b_id
ABAL_BID         PRIO=30  ROUTING=b_id
TBAL_BID         PRIO=30  ROUTING=b_id
ABALC_BID        PRIO=30  ROUTING=b_id
TBALC_BID        PRIO=30  ROUTING=b_id
#
*ROUTING
ACCOUNT_ID       FIELD=ACCOUNT_ID
                 BUFTYPE=“FML”
                 RANGES=“10000-39999:BANKB1,
                         40000-69999:BANKB2,
                         70000-109999:BANKB3,
                         *:*”
BRANCH_ID        FIELD=BRANCH_ID
                 BUFTYPE=“FML”
                 RANGES=“1-5:BANKB1,
                         6-10:BANKB2,
                         11-15:BANKB3”
b_id             FIELD=b_id
                 BUFTYPE="VIEW:aud"
                 RANGES="1-5:BANKB1,
                         6-10:BANKB2,
                         11-15:BANKB3"
注意 : この例では、DMADMGWADM、および GWTDOMAIN の各サーバで REPLYQ=N が指定されています。この設定は必須ではありません。必要に応じて REPLYQ=Y を指定して、それらのどのサーバにでも応答キューを指定できます。ただし、REPLYQN に設定されている場合は、パフォーマンスが向上することがあります。

bankapp アプリケーションの DMCONFIG ファイルの作成

bankapp アプリケーションの DMCONFIG ファイルを作成することも必要です。次のコード リストはその例です。DMCONFIG ファイルのバイナリ形式 (BDMCONFIG) は、DMADM サーバと同じマシンに配置する必要があります。

コード リスト 2-4 bankapp アプリケーションのサンプル DMCONFIG ファイル
*DM_LOCAL
LOCAL1       GWGRP=GWTGROUP
             TYPE=TDOMAIN
             ACCESSPOINTID=”BANK”
             BLOCKTIME=10
             CONNECTION_POLICY=ON_STARTUP
             DMTLOGDEV=“/home/rsmith/bankapp/DMTLOG”
             AUDITLOG=“/home/rsmith/bankapp/AUDITLOG”
#
*DM_REMOTE
REMOT1       TYPE=TDOMAIN
             ACCESSPOINTID=”CREDIT.CARD”
#
#このサンプル DMCONFIG ファイルのように、DM_EXPORT セクションがない
# 場合は、ローカル ドメインで宣言されたすべてのサービスが
# リモート ドメインから利用できる。このため、次の bankapp サービス
# はクレジット カード認可アプリケーションから利用できる。
#
# WITHDRAWAL
# DEPOSIT
# TRANSFER
# INQUIRY
# CLOSE_ACCT
# OPEN_ACCT
# BR_ADD
# TLR_ADD
# ABAL
# TBAL
# ABAL_BID
# TBAL_BID
# ABALC_BID
# TBALC_BID
#
*DM_IMPORT
WITHDRAWALA  RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
INQUIRYA     RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
OPENCA       RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
CLOSECA      RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
DEPOSITA     RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
OPEN_ACCT2   RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
OPENC        RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
#
*DM_TDOMAIN
LOCAL1       NWADDR=“albany.acme.com:4051
REMOT1       NWADDR=“newyork.acme.com:65431

Domains 環境のクレジット カード認可アプリケーションの UBBCONFIG ファイルの作成

Domains 環境のクレジット カード認可アプリケーションの UBBCONFIG ファイルを作成するには、クレジット カード認可アプリケーションの UBBCONFIG ファイルに次の変更を加えます。

次のコード リストは、Domains 環境のクレジット カード認可アプリケーションの UBBCONFIG ファイル例を示しています。

コード リスト 2-5 Domains 環境のクレジット カード認可アプリケーションのサンプル UBBCONFIG ファイル
*RESOURCES
IPCKEY 76666
UID 0000
GID 000
PERM 0660
MAXACCESSERS 40
MAXSERVERS 35
MAXSERVICES 75
MAXCONV 10
MAXGTT 100
MASTER SITE1
SCANUNIT 10
MODEL            SHM
LDBAL Y
#
*MACHINES
sfexpz           LMID=SITE1
TUXDIR=“/home/rsmith/tuxroot”
APPDIR=“/home/rsmith/creditapp”
ENVFILE=“/home/rsmith/creditapp/ENVFILE”
TLOGDEVICE=“/home/rsmith/creditapp/TLOG”
TLOGNAME=TLOG
TUXCONFIG=“/home/rsmith/creditapp/tuxconfig”
                 TYPE=“type1”
                 ULOGPFX=“/home/rsmith/creditapp/ULOG”
#
*GROUPS
DEFAULT: TMSNAME=TMS_SQL  TMSCOUNT=2
#
# クレジット カード認可のグループ
CREDIT    LMID=SITE1      GRPNO=1
          OPENINFO=“TUXEDO/SQL:/home/rsmith/creditapp/crdtdl1:bankdb:readwrite”
#
# Domains のグループ
DMADMGRP  LMID=SITE1      GRPNO=2
GWTGROUP  LMID=SITE1      GRPNO=3
#
*SERVERS
DEFAULT:  RESTART=Y        MAXGEN=5  REPLYQ=Y  CLOPT=“-A”
#
# Domains のサーバ
DMADM     SRVGRP=DMADMGRP
          SRVID=50
          REPLYQ=N
          RESTART=Y
          GRACE=0
GWADM     SRVGRP=GWTGROUP
          SRVID=60
          REPLYQ=N
          RESTART=Y
          GRACE=0
GWTDOMAIN SRVGRP=GWTGROUP
          SRVID=70
          RQADDR=”GWTGROUP”
          REPLYQ=N
          RESTART=Y
          GRACE=0
#
# クレジット カード認可のサーバ
TLRA   SRVGRP=CREDIT   SRVID=1
          CLOPT=“-A -- -T 600”
ACCTA   SRVGRP=CREDIT   SRVID=2
CRDT   SRVGRP=CREDIT   SRVID=3
#
*SERVICES
DEFAULT:  LOAD=50  AUTOTRAN=Y  TRANTIME=30
# クレジット カード認可のサービス
WITHDRAWALA  PRIO=50
INQUIRYA  PRIO=50
OPENCA  PRIO=40
CLOSECA  PRIO=40
DEPOSITA  PRIO=50
OPEN_ACCT2  PRIO=40
OPENC  PRIO=40
注意 : この例では、DMADMGWADM、および GWTDOMAIN の各サーバで REPLYQ=N が指定されています。この設定は必須ではありません。必要に応じて REPLYQ=Y を指定して、それらのどのサーバにでも応答キューを指定できます。ただし、REPLYQN に設定されている場合は、パフォーマンスが向上することがあります。

クレジット カード認可アプリケーションの DMCONFIG ファイルの作成

クレジット カード認可アプリケーションの DMCONFIG ファイルを作成することも必要です。次のコード リストはその例です。

コード リスト 2-6 クレジット カード認可アプリケーションのサンプル DMCONFIG ファイル
*DM_LOCAL
LOCAL1       GWGRP=GWTGROUP
             TYPE=TDOMAIN
             ACCESSPOINTID=”CREDIT.CARD”
             BLOCKTIME=8
             DMTLOGDEV=“/home/rsmith/creditapp/DMTLOG”
             AUDITLOG=“/home/rsmith/creditapp/AUDITLOG”
#
*DM_REMOTE
REMOT1       TYPE=TDOMAIN
             ACCESSPOINTID=”BANK”
#
# このサンプル DMCONFIG ファイルのように、DM_EXPORT セクションがない
# 場合は、ローカル ドメインで宣言されたすべてのサービスが
# リモート ドメインから利用できる。このため、次のクレジット カード認可サービス
# は bankapp アプリケーションから利用できる。
#
# WITHDRAWALA
# INQUIRYA
# OPENCA
# CLOSECA
# DEPOSITA
# OPEN_ACCT2
# OPENC
#
*DM_IMPORT
WITHDRAWAL   RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
DEPOSIT      RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
TRANSFER     RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
INQUIRY      RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
CLOSE_ACCT   RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
OPEN_ACCT    RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
BR_ADD       RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
TLR_ADD      RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
ABAL         RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
TBAL         RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
ABALC_BID    RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
TBALC_BID    RACCESSPOINT=REMOT1
             LACCESSPOINT=LOCAL1
#
*DM_TDOMAIN
LOCAL1       NWADDR=“newyork.acme.com:65431
REMOT1       NWADDR=“albany.acme.com:4051

 


creditapp Domains コンフィグレーションの検証

creditapp アプリケーションは、4 つのマシンをまたがるサンプルの Domains コンフィグレーションです。実質的に、creditapp アプリケーションは bankapp アプリケーションとクレジット カード認可アプリケーションが直に通信できるように再設定するもう 1 つの方法です (「複数の Oracle Tuxedo アプリケーションに基づく Domains の構築計画」を参照)。この方法では、bankapp アプリケーションとクレジット カード認可アプリケーションが、TDomain ゲートウェイ サーバ プロセスを使用して相互運用される 4 つの Oracle Tuxedo ドメイン (マシンごとに 1 つ) として再設定されます。

creditapp アプリケーションは、Oracle Tuxedo に同梱されています。そのファイルの場所は次のとおりです。

tux_prod_dir は、Oracle Tuxedo がインストールされたディレクトリです。

creditapp アプリケーションの Domains コンフィグレーションでは、4 つの UBBCONFIG ファイル (各 Oracle Tuxedo ドメインに 1 つ) と 4 つの DMCONFIG ファイル (各 Oracle Tuxedo ドメインに 1 つ) が必要です。4 つの UBBCONFIG ファイルの名前は ubbdom1ubbdom4、4 つの DMCONFIG ファイルの名前は domcon1domcon4 です。それらのファイルは、creditapp ディレクトリにあります。

次のコード リストは、ubbdom1 コンフィグレーション ファイルの内容を示しています。SERVERS セクションでは、3 つの TDomain ゲートウェイ グループが設定されています。それらの TDomain ゲートウェイ グループは、このドメインが Domains コンフィグレーションのほかの 3 つのドメインと通信するために使用します。

コード リスト 2-7 creditapp アプリケーションの ubbdom1 コンフィグレーション ファイル
.
.
.
*RESOURCES
IPCKEY           80952
UID              <user id from id(1)>
GID              <group id from id(1)>
PERM             0660
MAXACCESSERS     40
MAXSERVERS       35
MAXSERVICES      75
MAXCONV          10
MASTER           SITE1
MODEL            SHM
LDBAL            Y
MAXGTT           100
MAXBUFTYPE       16
SCANUNIT         10
SANITYSCAN       5
DBBLWAIT         6
BBLQUERY         50
BLOCKTIME        2
#
#
*MACHINES
<SITE1's uname>  LMID=SITE1
                 TUXDIR="<TUXDIR1>"
                 APPDIR="<APPDIR1>"
                 ENVFILE="<APPDIR1>/ENVFILE"
                 TLOGDEVICE="<APPDIR1>/TLOG"
                 TLOGNAME=TLOG
                 TUXCONFIG="<APPDIR1>/tuxconfig"
                 ULOGPFX="<APPDIR1>/ULOG"
                 TYPE="<machine type1>"
#
#
*GROUPS
DEFAULT:         LMID=SITE1
BANKB1           GRPNO=1     TMSNAME=TMS_SQLTMSCOUNT=2
                 OPENINFO="TUXEDO/SQL:<APPDIR1>/crdtdl1:bankdb:readwrite"
BANKB2           GRPNO=2
BANKB3           GRPNO=3
BANKB4           GRPNO=4
#
#
*SERVERS
#
DEFAULT:         RESTART=Y       MAXGEN=5   REPLYQ=Y  CLOPT="-A"
DMADM            SRVGRP=BANKB2   SRVID=32
GWADM            SRVGRP=BANKB2   SRVID=30
GWTDOMAIN        SRVGRP=BANKB2   SRVID=31
GWADM            SRVGRP=BANKB3   SRVID=24
GWTDOMAIN        SRVGRP=BANKB3   SRVID=25
GWADM            SRVGRP=BANKB4   SRVID=20
GWTDOMAIN        SRVGRP=BANKB4   SRVID=21
TLRA             SRVGRP=BANKB1   SRVID=2
                 CLOPT="-A -- -T 100"
BTADD            SRVGRP=BANKB1   SRVID=3
ACCTA            SRVGRP=BANKB1   SRVID=4
CRDT             SRVGRP=BANKB1   SRVID=5
CRDTA            SRVGRP=BANKB1   SRVID=6
#
*SERVICES
DEFAULT:         LOAD=50
INQUIRYA         PRIO=50
WITHDRAWALA      PRIO=50
OPEN_ACCT2       PRIO=40
OPENC            PRIO=40
OPENCA           PRIO=40
CLOSECA          PRIO=40
BR_ADD           PRIO=20
TLR_ADD          PRIO=20

次のコード リストは、domcon1 Domains コンフィグレーション ファイルの内容を示しています。DM_LOCAL セクション (DM_LOCAL_DOMAINS セクションとも呼ばれる) では、3 つの TDomain ゲートウェイ グループが設定されています。それらの TDomain ゲートウェイ グループは、このドメインが Domains コンフィグレーションのほかの 3 つのドメインと通信するために使用します。ここで示されている domcon1 の内容は、「DMCONFIG ファイル関連の新しい用語」で説明した新しい Domains 用語を使って更新されています。

コード リスト 2-8 creditapp アプリケーションの domcon1 Domains コンフィグレーション ファイル
.
.
.
*DM_RESOURCES
#
VERSION=U22
#
#
#
*DM_LOCAL
#
QDOM1        GWGRP=BANKB2
             TYPE=TDOMAIN
             ACCESSPOINTID=”QDOM1”
             BLOCKTIME=10
             MAXACCESSPOINT=89
             DMTLOGDEV=“<APPDIR1>/DMTLOG”
             AUDITLOG=“<APPDIR1>/AUDITLOG”
             DMTLOGNAME=”DMTLOG_TDOM1”
QDOM2        GWGRP=BANKB3
             TYPE=TDOMAIN
             ACCESSPOINTID=”QDOM2”
             BLOCKTIME=10
             MAXACCESSPOINT=89
             DMTLOGDEV=“<APPDIR1>/DMTLOG”
             AUDITLOG=“<APPDIR1>/AUDITLOG”
             DMTLOGNAME=”DMTLOG_TDOM2”
QDOM3        GWGRP=BANKB4
             TYPE=TDOMAIN
             ACCESSPOINTID=”QDOM3”
             BLOCKTIME=10
             MAXACCESSPOINT=89
             DMTLOGDEV=“<APPDIR1>/DMTLOG”
             AUDITLOG=“<APPDIR1>/AUDITLOG”
             DMTLOGNAME=”DMTLOG_TDOM3”
#
#
*DM_REMOTE
#
TDOM1        TYPE=TDOMAIN
             ACCESSPOINTID=”TDOM1”
TDOM2        TYPE=TDOMAIN
             ACCESSPOINTID=”TDOM2”
TDOM3        TYPE=TDOMAIN
             ACCESSPOINTID=”TDOM3”
#
#
*DM_TDOMAIN
#
TDOM1         NWADDR=“<network address of SITE2>
              NWDEVICE=”<device of provider2>
TDOM2         NWADDR=“<network address of SITE3>
              NWDEVICE=”<device of provider3>
TDOM3         NWADDR=“<network address of SITE4>
              NWDEVICE=”<device of provider4>
QDOM1         NWADDR=“<network address of SITE1>
              NWDEVICE=”<device of provider1>
QDOM2         NWADDR=“<network address of SITE1A>
              NWDEVICE=”<device of provider1>
QDOM3         NWADDR=“<network address of SITE1B>
              NWDEVICE=”<device of provider1>
#
#
*DM_EXPORT
#
WITHDRAWALA
INQUIRYA
OPENCA
CLOSECA

creditapp アプリケーションを実行する場合は、まず creditapp ディレクトリにある README ファイルを読んでください。README ファイルでは、RUNME.sh という UNIX シェル スクリプトを使用して creditapp アプリケーションを実行する方法が説明されています。Windows システムで creditapp アプリケーションを実行する場合は、README ファイルで基本的な設定情報を読んでから、Windows 環境で設定タスクを行います。Windows 上での Oracle Tuxedo の使い方の詳細については、『Windows NT での Tuxedo システムの使用』を参照してください。

 


Domains コンフィグレーションの設定

Domains 環境を設定する場合、Domains 管理者は Domains コンフィグレーションにかかわるほかのドメイン (リモート ドメイン) について Oracle Tuxedo ドメインが知る必要のあるすべての情報を指定する必要があります。この情報には、リモート ドメインにエクスポートされるローカル サービス、リモート ドメインからインポートされるサービス、およびリモート ドメインにアクセスするためのアドレッシング パラメータとセキュリティ パラメータが含まれます。この情報は、Domains コンフィグレーションにかかわる各ドメインの UBBCONFIG および DMCONFIG コンフィグレーション ファイルで定義されます。

以下の節で説明する Domains の例は、Oracle Tuxedo に同梱されている simpapp アプリケーションに基づいています。このサンプル アプリケーションは次の場所にあります。

tux_prod_dir は、Oracle Tuxedo がインストールされたディレクトリです。

サンプル Domains アプリケーション (simpapp) のコンフィグレーション

次の図で示されている Domains の例は、2 つの Oracle Tuxedo ドメインで構成されています。1 つは lapp (simpapp に基づくローカル アプリケーション)、もう 1 つは rapp (simpapp に基づくリモート アプリケーション) です。lapp アプリケーションは、rapp アプリケーションで利用可能な TOUPPER というサービスにそのクライアントがアクセスできるようにコンフィグレーションされています。

図 2-4 simpapp のローカル アプリケーションとリモート アプリケーション

simpapp のローカル アプリケーションとリモート アプリケーション

コンフィグレーション タスク

lapp アプリケーションと rapp アプリケーションをコンフィグレーションするには、次のタスクを行う必要があります。

simpapp のローカル アプリケーションとリモート アプリケーション

lapp の環境変数の設定

lapp アプリケーションを正常にコンフィグレーションするためには、次の環境変数を設定する必要があります。

Windows の例

prompt> set TUXDIR=C:\bea\tuxedo
prompt> set APPDIR=C:\home\lapp
prompt> set TUXCONFIG=C:\home\lapp\lapp.tux
prompt> set BDMCONFIG=C:\home\lapp\lapp.bdm
prompt> set PATH=%APPDIR%;%TUXDIR%\bin;%PATH%

注意 : Windows は、PATH 変数に設定されたパスを使って、動的に読み込み可能な必須ライブラリ ファイルにアクセスします。

UNIX の例

prompt> TUXDIR=/home/rsmith/bea/tuxedo
prompt> APPDIR=/home/rsmith/lapp
prompt> TUXCONFIG=/home/rsmith/lapp/lapp.tux
prompt> BDMCONFIG=/home/rsmith/lapp/lapp.bdm
prompt> PATH=$APPDIR:$TUXDIR/bin:/bin:$PATH
prompt> LD_LIBRARY_PATH=$APPDIR:$TUXDIR/lib:/lib:/usr/lib:
         $LD_LIBRARY_PATH
prompt> export TUXDIR APPDIR TUXCONFIG BDMCONFIG PATH LD_LIBRARY_PATH

UBBCONFIG ファイルでの lapp の Domains 環境の定義

lapp.ubb (lapp アプリケーションのテキスト形式のコンフィグレーション ファイル) では、必須パラメータのみ定義します。ほかのパラメータにはデフォルト設定を使用します。次のコード リストは、lapp.ubb の内容を示しています。

コード リスト 2-9 lapp.ubb コンフィグレーション ファイル
# lapp.ubb
#
*RESOURCES
IPCKEY 111111
MASTER LAPP
MODEL SHM

*MACHINES
giselle
LMID=LAPP
TUXDIR=”/home/rsmith/tuxedo”
APPDIR=”/home/rsmith/lapp”
TUXCONFIG=”/home/rsmith/lapp/lapp.tux”
*GROUPS
LDMGRP GRPNO=1 LMID=LAPP
LGWGRP GRPNO=2 LMID=LAPP
.
.
.
*SERVERS
DMADM SRVGRP=LDMGRP SRVID=1
GWADM SRVGRP=LGWGRP SRVID=1
GWTDOMAIN SRVGRP=LGWGRP SRVID=2 REPLYQ=N
.
.
.
*SERVICES
.
.
.
注意 : この UBBCONFIG ファイルのコード リストでは、REPLYQ=NDMADMGWADM、および GWTDOMAIN の各サーバで指定されています。この設定は必須ではありません。必要に応じて REPLYQ=Y を指定して、それらのどのサーバにでも応答キューを指定できます。ただし、REPLYQN に設定されている場合は、パフォーマンスが向上することがあります。

サーバ グループの定義

lapp.ubb では、次のサーバ グループが定義されています。

サーバの定義

DMCONFIG ファイルでの lapp の Domains パラメータの定義

lapp.dom (lapp Domains のテキスト形式のコンフィグレーション ファイル) では、必須パラメータのみ定義します。オプション パラメータにはデフォルト設定を使用します。次のコード リストは、lapp.dom ファイルの内容を示しています。

コード リスト 2-10 lapp.dom Domains コンフィグレーション ファイル
#
# lapp.dom
#
*DM_LOCAL
LAPP GWGRP=LGWGRP
TYPE=TDOMAIN
ACCESSPOINTID=”111111"
*DM_REMOTE
RAPP TYPE=TDOMAIN
ACCESSPOINTID=”222222"
*DM_EXPORT
*DM_IMPORT
TOUPPER
*DM_TDOMAIN
LAPP NWADDR=”//giselle:5000"
RAPP NWADDR=”//juliet:5000"

DM_LOCAL セクションの定義

DM_LOCAL セクションでは、ローカル ドメイン アクセス ポイント、それらに関連するドメイン ゲートウェイ グループ、およびそれらの特性を指定します。ローカル ドメイン アクセス ポイントは、ドメイン ゲートウェイ グループごとに 1 つのみです。

lapp.dom ファイルでは、唯一のローカル ドメイン アクセス ポイント LAPP を指定し、その LAPP アクセス ポイントの次のプロパティを定義します。

DM_REMOTE セクションの定義

DM_REMOTE セクションでは、リモート ドメイン アクセス ポイントとその特性を指定します。リモート ドメイン アクセス ポイントは、各ドメイン ゲートウェイ グループに 1 つでも複数でもかまいません。

lapp.dom ファイルでは、唯一のリモート ドメイン アクセス ポイント RAPP を指定し、その RAPP アクセス ポイントの次のプロパティを定義します。

DM_EXPORT セクションの定義

DM_EXPORT セクションでは、ローカル ドメイン アクセス ポイントを通じて 1 つ以上のリモート ドメインにエクスポートされるサービスの情報を指定します。このセクションがないか、あっても何も指定されていない場合は、ローカル ドメインで宣言されたすべてのサービスが、DM_REMOTE セクションで定義されたアクセス ドメインと関連付けられたリモート ドメインから利用可能になります。

lapp.dom ファイルで指定されているように、LAPP アクセス ポイントを通じて rapp アプリケーションから利用できる lapp サービスはありません。

DM_IMPORT セクションの定義

DM_IMPORT セクションでは、1 つ以上のリモート ドメイン アクセス ポイントを通じてインポートされ、1 つ以上のローカル ドメイン アクセス ポイントを通じてローカル ドメインから利用できるようになるサービスの情報を指定します。このセクションがないか、あっても何も指定されていない場合、ローカル ドメインからはどのリモート サービスも利用できません。

lapp.dom ファイルで指定されているように、TOUPPER という rapp サービスが lapp アプリケーションから利用できます。

DM_TDOMAIN セクションの定義

DM_TDOMAIN セクションでは、Oracle Tuxedo Domains コンポーネントで必要なアドレッシング情報を定義します。コンフィグレーション ファイルの LOCAL セクションおよび REMOTE セクションで指定された各ドメイン アクセス ポイントは、DM_TDOMAIN セクションのエントリとなります。

各ローカル ドメイン アクセス ポイントのエントリには NWADDR 値が関連付けられます。この値は、ローカル ドメインが 1 つ以上のリモート ドメインからの接続を受け付けるネットワーク アドレスを指定します。

各リモート ドメイン アクセス ポイントのエントリには NWADDR 値が関連付けられます。この値は、ローカル ドメインがリモート ドメインへの接続を試みるネットワーク アドレスを指定します。

lapp.dom ファイルで指定されているように、lapp アプリケーションはネットワーク アドレス giselle:5000 で受信時接続要求をリスンします。gisellelapp アプリケーションが動作しているマシンの名前、5000 はリスン ポートです。これも lapp.dom で指定されていますが、lapp アプリケーションが rapp アプリケーションに接続を試みるときには、ネットワーク アドレス juliet:5000 が使用されます。julietrapp アプリケーションが動作しているマシンの名前、5000 は接続先ポートです。

lapp のアプリケーションおよび Domains ゲートウェイ コンフィグレーション ファイルのコンパイル

lapp.ubb アプリケーション コンフィグレーション ファイルには、lapp アプリケーションの起動に必要な情報が格納されます。このファイルは、tmloadcf(1) を実行してバイナリ データ ファイルにコンパイルします。

lapp.dom Domains コンフィグレーション ファイルには、リモートの rapp TDomain ゲートウェイと通信するためにローカルの lapp TDomain ゲートウェイで使用される情報が格納されます。このファイルは、dmloadcf(1) を実行してバイナリ データ ファイルにコンパイルします。

両方のコンフィグレーション ファイルのコンパイルで、次のセッション例を参考にしてください。

Windows:
prompt> cd C:\home\lapp
prompt> set TUXCONFIG=C:\home\lapp\lapp.tux
prompt> tmloadcf -y lapp.ubb
prompt> set BDMCONFIG=C:\home\lapp\lapp.bdm
prompt> dmloadcf -y lapp.dom

UNIX:
prompt> cd /home/rsmith/lapp
prompt> TUXCONFIG=/home/rsmith/lapp/lapp.tux
prompt> export TUXCONFIG
prompt> tmloadcf -y lapp.ubb
prompt> BDMCONFIG=/home/rsmith/lapp/lapp.bdm
prompt> export BDMCONFIG
prompt> dmloadcf -y lapp.dom

lapp アプリケーションと rapp アプリケーションの両方を作成したら、それぞれのマシンで次のように tmboot(1) コマンドを実行してアプリケーションを起動します。

prompt> tmboot -y

アプリケーションを起動する順序は関係ありません。「Domains の管理」の説明に従って、dmadmin(1) を使用してアプリケーションをモニタします。アプリケーションが両方とも起動したら、rapp アプリケーションで提供される TOUPPER サービスを lapp アプリケーションのクライアントから呼び出すことができます。

rapp の環境変数の設定

rapp アプリケーションを正常にコンフィグレーションするためには、次の環境変数を設定する必要があります。

Windows の例

prompt> set TUXDIR=C:\bea\tuxedo
prompt> set APPDIR=C:\home\rapp
prompt> set TUXCONFIG=C:\home\rapp\rapp.tux
prompt> set BDMCONFIG=C:\home\rapp\rapp.bdm
prompt> set PATH=%APPDIR%;%TUXDIR%\bin;%PATH%

注意 : Windows は、PATH 変数に設定されたパスを使って、動的に読み込み可能な必須ライブラリ ファイルにアクセスします。

UNIX の例

prompt> TUXDIR=/home/rsmith/bea/tuxedo
prompt> APPDIR=/home/rsmith/rapp
prompt> TUXCONFIG=/home/rsmith/rapp/rapp.tux
prompt> BDMCONFIG=/home/rsmith/rapp/rapp.bdm
prompt> PATH=$APPDIR:$TUXDIR/bin:/bin:$PATH
prompt> LD_LIBRARY_PATH=$APPDIR:$TUXDIR/lib:/lib:/usr/lib:
         $LD_LIBRARY_PATH
prompt> export TUXDIR APPDIR TUXCONFIG BDMCONFIG PATH LD_LIBRARY_PATH

UBBCONFIG ファイルでの rapp の Domains 環境の定義

rapp.ubb (rapp アプリケーションのテキスト形式のコンフィグレーション ファイル) では、必須パラメータのみ定義します。ほかのパラメータにはデフォルト設定を使用します。次のコード リストは、rapp.ubb ファイルの内容を示しています。

コード リスト 2-11 rapp.ubb アプリケーション コンフィグレーション ファイル
# rapp.ubb
#
*RESOURCES
IPCKEY 222222
MASTER RAPP
MODEL SHM
*MACHINES
juliet
LMID=RAPP
TUXDIR=”/home/rsmith/bea/tuxedo”
APPDIR=”/home/rsmith/rapp”
TUXCONFIG=”/home/rsmith/rapp/rapp.tux”
*GROUPS
RDMGRP GRPNO=1 LMID=RAPP
RGWGRP GRPNO=2 LMID=RAPP
APPGRP GRPNO=3 LMID=RAPP
.
.
.
*SERVERS
DMADM SRVGRP=RDMGRP SRVID=1
GWADM SRVGRP=RGWGRP SRVID=1
GWTDOMAIN SRVGRP=RGWGRP SRVID=2 REPLYQ=N
simpserv SRVGRP=APPGRP SRVID=1
.
.
.
*SERVICES
TOUPPER
.
.
.
注意 : この UBBCONFIG ファイルのコード リストでは、REPLYQ=NDMADMGWADM、および GWTDOMAIN の各サーバで指定されています。この設定は必須ではありません。必要に応じて REPLYQ=Y を指定して、それらのどのサーバにでも応答キューを指定できます。ただし、REPLYQN に設定されている場合は、パフォーマンスが向上することがあります。

rapp.ubb では、次のサーバ グループが定義されています。

simpserv サーバは、文字列を小文字から大文字に変換する TOUPPER サービスを宣言します。

DMCONFIG ファイルでの rapp の Domains パラメータの定義

rapp.dom (rapp Domains のテキスト形式のコンフィグレーション ファイル) では、必須パラメータのみ定義します。ほかのパラメータにはデフォルト設定を使用します。次のコード リストは、rapp.dom ファイルの内容を示しています。

コード リスト 2-12 rapp.dom Domains コンフィグレーション ファイル
# rapp.dom
#
*DM_LOCAL
RAPP GWGRP=RGWGRP
TYPE=TDOMAIN
ACCESSPOINTID=”222222"
*DM_REMOTE
LAPP TYPE=TDOMAIN
ACCESSPOINTID=”111111"
*DM_EXPORT
TOUPPER
*DM_IMPORT
*DM_TDOMAIN
RAPP NWADDR=”//juliet:5000"
LAPP NWADDR=”//giselle:5000"

rapp.dom Domains コンフィグレーション ファイルは lapp.dom Domains コンフィグレーション ファイルと似ていますが、エクスポートおよびインポートされるサービスは異なります。具体的には、rapp.dom ファイルでは rapp アプリケーションの次の Domains コンフィグレーションが定義されます。

rapp のアプリケーションおよび Domains ゲートウェイ コンフィグレーション ファイルのコンパイル

rapp.ubb アプリケーション コンフィグレーション ファイルには、rapp アプリケーションの起動に必要な情報が格納されます。このファイルは、tmloadcf(1) を実行してバイナリ データ ファイルにコンパイルします。

rapp.dom Domains コンフィグレーション ファイルには、リモートの lapp TDomain ゲートウェイと通信するためにローカルの rapp TDomain ゲートウェイで使用される情報が格納されます。このファイルは、dmloadcf(1) を実行してバイナリ データ ファイルにコンパイルします。

両方のコンフィグレーション ファイルのコンパイルで、次のセッション例を参考にしてください。

Windows:
prompt> cd C:\home\rapp
prompt> set TUXCONFIG=C:\home\rapp\rapp.tux
prompt> tmloadcf -y rapp.ubb
prompt> set BDMCONFIG=C:\home\rapp\rapp.bdm
prompt> dmloadcf -y rapp.dom

UNIX:
prompt> cd /home/rsmith/rapp
prompt> TUXCONFIG=/home/rsmith/rapp/rapp.tux
prompt> export TUXCONFIG
prompt> tmloadcf -y rapp.ubb
prompt> BDMCONFIG=/home/rsmith/rapp/rapp.bdm
prompt> export BDMCONFIG
prompt> dmloadcf -y rapp.dom

rapp アプリケーションと lapp アプリケーションの両方を作成したら、それぞれのマシンで次のように tmboot(1) コマンドを実行してアプリケーションを起動します。

prompt> tmboot -y

アプリケーションを起動する順序は関係ありません。「Domains の管理」の説明に従って、dmadmin(1) を使用してアプリケーションをモニタします。アプリケーションが両方とも起動したら、rapp アプリケーションで提供される TOUPPER サービスを lapp アプリケーションのクライアントから呼び出すことができます。

関連項目

ドメイン間のデータの圧縮

ドメイン間を送信されるデータは、高速化を目的として圧縮できます。圧縮をコンフィグレーションするには、DMCONFIG ファイルの DM_TDOMAIN セクションで CMPLIMIT パラメータを設定します。このパラメータ (リモート ドメイン アクセス ポイントのみで有効) では、リモート ドメインにデータを送信するときの圧縮しきい値を指定します。最小値は 0、最大値は 2147483647 で、デフォルト設定は 2147483647 です。指定されたサイズより大きいアプリケーション バッファは圧縮されます。

CMPLIMIT パラメータ設定の詳細については、『Oracle Tuxedo アプリケーション実行時の管理』の「ネットワーク データの圧縮」を参照してください。

リモート ドメインへのサービス要求のルーティング

サービス要求を特定のリモート ドメインに送信するためにドメイン ゲートウェイで使用されるデータ依存型ルーティング情報は、DMCONFIG ファイルの DM_ROUTING セクションで指定します。FMLFML32VIEWVIEW32X_C_TYPEX_COMMON、および XML の型付きバッファがサポートされています。

Domains コンフィグレーションにかかわるドメインのルーティング テーブルを作成するには、DMCONFIG ファイルの DM_ROUTING セクションで次の情報を指定します。

Domains のデータ依存型ルーティング コンフィグレーションの例については、「Domains データ依存型ルーティングの指定」を参照してください。Domains のデータ依存型ルーティングの詳細については、『Oracle Tuxedo のファイル形式とデータ記述方法』のリファレンス ページ DMCONFIG(5)DM_ROUTING セクションを参照してください。

 


Domains コンフィグレーションのセキュリティの設定

Oracle Tuxedo ATMI 環境では、Domains コンフィグレーションに次の基本的なセキュリティ機能を利用できます。

Domains コンフィグレーションで利用できるセキュリティ機能と個々の Oracle Tuxedo アプリケーションで利用できるセキュリティ機能は比較的に依存性はありませんが、互換性があります。Oracle Tuxedo アプリケーションで利用できるセキュリティ機能については、『Oracle Tuxedo のセキュリティ機能』を参照してください。

Domains のセキュリティ メカニズム

Oracle Tuxedo Domains コンポーネントは、次のセキュリティ メカニズムを提供します。

Domains 認証のプリンシパル名のコンフィグレーション

『Oracle Tuxedo のセキュリティ機能』の「ドメイン間のリンクの確立」で説明されているように、ローカルの TDomain ゲートウェイでは、ローカル ドメインとリモート ドメインの両方が知っており、その結果としてドメインが相互に接続しようとしたときにリモート ドメインでローカル ドメインを認証できる ID (プリンシパル名) が必要です。同じように、リモートの TDomain ゲートウェイでは、リモート ドメインとローカル ドメインの両方が知っており、その結果としてドメインが相互に接続しようとしたときにローカル ドメインでリモート ドメインを認証できる ID (プリンシパル名) が必要です。また、ローカル TDomain ゲートウェイではその割り当てられたプリンシパル名を使用して接続の設定時に必要なセキュリティ資格を取得します。

ローカル TDomain ゲートウェイでは、プリンシパル名がもう 1 つ必要です。その 2 つめのプリンシパル名は、「リモート ドメインの ACL ポリシーのコンフィグレーション」で説明されているローカルのアクセス制御リスト (ACL) ポリシーを適用するために必要なセキュリティ資格を取得するために使用します。

管理者は、次のコンフィグレーション パラメータを使用して、リリース 7.1 以降の Oracle Tuxedo アプリケーションで動作する TDomain ゲートウェイのプリンシパル名を指定します。

次の例で、DMCONFIG ファイルの CONNECTION_PRINCIPAL_NAME ID は、LOCAL1 アクセス ポイントおよび REMOT1 アクセス ポイントを通じて接続を確立するときに使用されます。

*DM_LOCAL
LOCAL1   GWGRP=bankg1
         TYPE=TDOMAIN
         ACCESSPOINTID="BA.CENTRAL01"
         CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"
*DM_REMOTE
REMOT1   TYPE=TDOMAIN
         ACCESSPOINTID="BA.BANK01"
         CONNECTION_PRINCIPAL_NAME="BA.BANK01"

Domains パスワード セキュリティのコンフィグレーション

ドメイン ゲートウェイでは、リモート ドメインから要求された受信時接続を認証できます。アプリケーション管理者は、リモート ドメインからの受信時接続でいつセキュリティを適用するのかを定義できます。

管理者は、DMCONFIG ファイルの DM_LOCAL セクションの SECURITY パラメータを設定して、特定のローカル ドメインで使用されるセキュリティのレベルを指定できます。パスワード セキュリティには次の 3 つのレベルがあります。

TUXCONFIG ファイルで SECURITY パラメータが NONE に設定されている場合や、パラメータが設定されていない場合でも、Domains コンフィグレーションでは、TDomain ゲートウェイによる DM_PW レベルのセキュリティの適用が要求されることがあります。DM_PW オプションが選択されている場合、各リモート ドメインではパスワードを BDMCONFIG ファイルの DM_PASSWORDS セクションで定義する必要があります。つまり、パスワードがないと、受信時接続は TDomain ゲートウェイによって拒否されます。

DM_MIB(5) を使用した Domains パスワード (DM_PW) の設定

DM_MIB を使用すると、Domains パスワード (DM_PW) を設定できます。DM_MIBT_DM_PASSWORDS クラスは、TDOMAIN タイプのローカルおよびリモート アクセス ポイントを介したドメイン間認証のコンフィグレーション情報を表します。T_DM_PASSWORDS クラスには、リモート ドメインごとに次のエントリがあります。

MIB 管理要求のフォーマットと MIB 管理応答の解釈については、『Oracle Tuxedo のファイル形式とデータ記述方法』の DM_MIB(5) リファレンス ページを参照してください。

dmadmin コマンドを使用した Domains パスワード (DM_PW) の設定

dmadmin コマンドを使用しても、Domains パスワード (DM_PW) を設定できます。

prompt> dmadmin
passwd
[-r] local_domain_access_point_name
   remote_domain_access_point_name

dmadmin コマンドは、指定されたローカルおよびリモート ドメイン アクセス ポイントの新しいパスワードを要求します。dmadmin(1) の詳細については、「Domains の管理」を参照してください。

ドメイン間のパスワード セキュリティのコーディング例

DMCONFIG ファイルの DM_LOCAL セクションの SECURITY パラメータでは、ローカル ドメインのセキュリティ タイプを指定します。認証が必要な場合は、ローカル ドメインとリモート ドメインの間で接続が確立されるたびに行われます。2 つのドメインのセキュリティ タイプに互換性がない場合、またはパスワードが一致しない場合、接続は失敗します。

例 1: セキュリティを NONE に設定する

ローカル ドメインで SECURITYNONE に設定されている場合、受信時接続は認証されません。SECURITYNONE に設定されているローカル ドメインでも SECURITYDM_PW に設定されているリモート ドメインに接続できますが、そのような接続の確立前に、DM_MIB(5) または dmadmin passwd コマンドを使用して両サイドでパスワードを定義する必要があります。

コード リスト 2-13 アプリケーションと Domains の両方でセキュリティを NONE に設定する
LOCAL1: SECURITY in UBBCONFIG set to NONE
        SECURITY in DMCONFIG set to NONE
REMOT1: SECURITY in UBBCONFIG set to NONE
        SECURITY in DMCONFIG set to DM_PW

この例では、LOCAL1 ではセキュリティが適用されていませんが、REMOT1 では DM_PW セキュリティが適用されています。開始 (LOCAL1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  NONE
DMCONFIG
 *DM_LOCAL
 LOCAL1    GWGRP=bankg1
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"
           SECURITY=NONE
*DM_REMOTE
REMOT1   TYPE=TDOMAIN
         ACCESSPOINTID="BA.BANK01"
         CONNECTION_PRINCIPAL_NAME="BA.BANK01"

応答 (REMOT1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  NONE
DMCONFIG
 *DM_LOCAL
 REMOT1    GWGRP=bankg2
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.BANK01"
           CONNECTION_PRINCIPAL_NAME="BA.BANK01"
           SECURITY=DM_PW
*DM_REMOTE
 LOCAL1    TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"

TUXCONFIG ファイルと BDMCONFIG ファイルで必須属性が設定された後に、LOCAL1REMOT1 でアプリケーションを起動します。

LOCAL1:

           dmadmin
     passwd LOCAL1 REMOT1
      Enter Local Domain Password:foo1
      Reenter Local Domain Password:foo1
     Enter Remote Domain Password:foo2
     Reenter Remote Domain Password:foo2

REMOT1:

           dmadmin
     passwd REMOT1 LOCAL1
     Enter Local Domain Password:foo2
     Reenter Local Domain Password:foo2
     Enter Remote Domain Password:foo1
           Reenter Remote Domain Password:foo1

両方のドメインでパスワードが作成されたら、接続を確立して、リモート ドメインでサービスを呼び出すことができます。

コード リスト 2-14 アプリケーション セキュリティを NONE、Domains セキュリティを DM_PW に設定する

開始 (LOCAL1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  NONE
DMCONFIG
 *DM_LOCAL
 LOCAL1    GWGRP=bankg1
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"
           SECURITY=DM_PW
*DM_REMOTE
REMOT1   TYPE=TDOMAIN
         ACCESSPOINTID="BA.BANK01"
         CONNECTION_PRINCIPAL_NAME="BA.BANK01"

応答 (REMOT1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  NONE
DMCONFIG
 *DM_LOCAL
 REMOT1    GWGRP=bankg2
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.BANK01"
           CONNECTION_PRINCIPAL_NAME="BA.BANK01"
           SECURITY=DM_PW
*DM_REMOTE
 LOCAL1    TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"

TUXCONFIG ファイルと BDMCONFIG ファイルで必須属性が設定された後に、LOCAL1REMOT1 でアプリケーションを起動します。

LOCAL1:

           dmadmin
     passwd LOCAL1 REMOT1
      Enter Local Domain Password:foo1
      Reenter Local Domain Password:foo1
     Enter Remote Domain Password:foo2
     Reenter Remote Domain Password:foo2

REMOT1:

           dmadmin
     passwd REMOT1 LOCAL1
     Enter Local Domain Password:foo2
     Reenter Local Domain Password:foo2
     Enter Remote Domain Password:foo1
           Reenter Remote Domain Password:foo1

両方のドメインでパスワードが作成されたら、接続を確立して、リモート ドメインでサービスを呼び出すことができます。

例 2: セキュリティを APP_PW に設定する

UBBCONFIGSECURITY パラメータが APP_PW 以上に設定されている場合、DMCONFIGSECURITYNONEAPP_PW、または DM_PW に設定できます。1 つの DMCONFIG ファイルでドメインの複数のビューを定義できるので (ローカル ドメインの定義ごとに 1 ビュー)、それらの各ビューに異なるタイプのセキュリティ メカニズムを割り当てることができます。

注意 : DMCONFIG でローカル ドメイン アクセス ポイントの SECURITY が APP_PW に設定されている場合、UBBCONFIGSECURITY は APP_PW 以上に設定する必要があります。
コード リスト 2-15 アプリケーションと Domains の両方でセキュリティを APP_PW に設定する
LOCAL1: SECURITY in UBBCONFIG set to APP_PW
  SECURITY in DMCONFIG set to APP_PW
REMOT1: SECURITY in UBBCONFIG set to APP_PW
  SECURITY in DMCONFIG set to APP_PW

この例では、LOCAL1REMOT1 の両方で APP_PW セキュリティが適用されます。

開始 (LOCAL1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  APP_PW
DMCONFIG
 *DM_LOCAL
 LOCAL1    GWGRP=bankg1
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"
           SECURITY=APP_PW
*DM_REMOTE
REMOT1   TYPE=TDOMAIN
         ACCESSPOINTID="BA.BANK01"
         CONNECTION_PRINCIPAL_NAME="BA.BANK01"

応答 (REMOT1) 側では、UBBCONFIGDMCONFIG の関連属性は次のように設定されます。

UBBCONFIG
 *RESOURCES
SECURITY  APP_PW
DMCONFIG
 *DM_LOCAL
 REMOT1    GWGRP=bankg2
           TYPE=TDOMAIN
           ACCESSPOINTID="BA.BANK01"
           CONNECTION_PRINCIPAL_NAME="BA.BANK01"
           SECURITY=APP_PW
*DM_REMOTE
 LOCAL1    TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"

TUXCONFIG ファイルと BDMCONFIG ファイルが作成された後に、LOCAL1REMOT1 でアプリケーションを起動します。

Domains アクセス制御リストのコンフィグレーション

DMCONFIG ファイルの DM_ACCESS_CONTROL セクションで Domains アクセス制御リスト (ACL) を設定するには、ACL の名前とその ACL 名に関連付けられたリモート ドメイン アクセス ポイントを指定します。その手順は次の表にまとめられています。

ドメイン ACL フィールド
機能説明
Domains ACL 名
この ACL の名前。
1 ~ 30 文字の文字列で構成された有効な名前。表示可能である必要があり、コロン、シャープ記号、または改行文字は使用できません。
例 : ACLGRP1
リモート ドメイン リスト
このアクセス制御リストでアクセス権が与えられるリモート ドメインのリスト。
このフィールドの有効な値は、カンマで区切られた 1 つ以上のリモート ドメイン名の集合。
例 : REMDOM1,REMDOM2,REMDOM3

ACL を作成したら、DMCONFIG ファイルの DM_EXPORT セクションの ACL パラメータを使用して、特定のローカル ドメイン アクセス ポイントを通じてエクスポートされたローカル サービスへのアクセスを ACL 名と関連付けられたリモート ドメイン アクセス ポイントのみに制限します (例 : ACL=ACLGRP1)。

リモート ドメインの ACL ポリシーのコンフィグレーション

管理者は、次のコンフィグレーション パラメータを使用して、Oracle Tuxedo リリース 7.1 以降が動作するリモート ドメインの ACL ポリシーを設定および制御します。これらのパラメータは、DMCONFIG ファイルの DM_REMOTE セクションで設定します。

次の例では、REMOT1 アクセス ポイントの接続に対し、DMCONFIG ファイルで ACL がグローバルにコンフィグレーションされています。つまり、LOCAL1 アクセス ポイントのドメイン ゲートウェイは REMOT1 アクセス ポイントからのクライアント要求を変更なしで受け渡します。ACL がグローバルに設定されている場合、REMOT1 アクセス ポイントの LOCAL_PRINCIPAL_NAME エントリは無視されます。また、CREDENTIAL_POLICY=GLOBAL であるため、LOCAL1 アクセス ポイントのドメイン ゲートウェイは REMOT1 アクセス ポイントに対するローカル サービス要求から資格を削除しません。

*DM_LOCAL
LOCAL1   GWGRP=bankg1
         TYPE=TDOMAIN
         ACCESSPOINTID="BA.CENTRAL01"
         CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"
         SECURITY=DM_PW
*DM_REMOTE
REMOT1   TYPE=TDOMAIN
         ACCESSPOINTID="BA.BANK01"
         CONNECTION_PRINCIPAL_NAME="BA.BANK01"
         ACL_POLICY=GLOBAL
         CREDENTIAL_POLICY=GLOBAL
         LOCAL_PRINCIPAL_NAME="BA.BANK01.BOB"

Domains リンク レベル暗号化のコンフィグレーション

Domains リンク レベルの暗号化 (LLE) は、ローカル ドメイン ゲートウェイをリモート ドメイン ゲートウェイに接続するネットワーク リンク上で送受信されるメッセージの秘密性を保護します。リンク レベル暗号化セキュリティには、0 ビット (暗号化なし)、56 ビット (国際版)、および 128 ビット (米国およびカナダ版) の 3 つのレベルがあります。

ドメイン ゲートウェイのリンクで Domains リンク レベルの暗号化を設定するには、次の手順に従います。

  1. テキスト エディタで DMCONFIG ファイルを開き、DM_TDOMAIN セクションに次の行を追加します。
  2. *DM_TDOMAIN
    LOCAL1
      NWADDR=“newyork.acme.com:65431
             MINENCRYPTBITS=min
             
    MAXENCRYPTBITS=max
    REMOT1   NWADDR=“albany.acme.com:4051
             MINENCRYPTBITS=min
             
    MAXENCRYPTBITS=max
  3. dmloadcf(1) を実行してコンフィグレーションをロードします。dmloadcf コマンドを実行すると、DMCONFIG が解析され、BDMCONFIG 変数が指す場所にバイナリ形式の BDMCONFIG ファイルがロードされます。

上の例では、tmboot(1) を実行するとアプリケーションが起動します。各ドメイン ゲートウェイは BDMCONFIG ファイルを読み込んで MINENCRYPTBITS および MAXENCRYPTBITS などのさまざまなパラメータにアクセスし、ローカル ドメインおよびリモート ドメインにそれらのパラメータを伝播します。ローカル ドメインがリモート ドメインとのネットワーク リンクを確立するとき、これらの 2 つのドメインは、双方でサポートされるキーの最大サイズが一致するまでキー サイズの調整を行います。

 


Domains コンフィグレーションの接続の設定

ローカル ドメイン ゲートウェイがリモート ドメインに対して接続を試行するときの条件を指定できます。条件を指定するには、DMCONFIG ファイルの DM_LOCAL セクションの CONNECTION_POLICY パラメータに値を割り当てます。次の接続ポリシーのいずれかを選択できます。

Oracle Tuxedo リリース 8.1 以降では、DMCONFIG ファイルの DM_TDOMAIN セクションでリモート ドメイン単位で接続ポリシーを定義することもできます。詳細については、「接続ポリシーのコンフィグレーション方法」を参照してください。

ON_STARTUP および INCOMING_ONLY の接続ポリシーでは、Dynamic Status が呼び出されます。Dynamic Status (「接続ポリシーによるリモート サービスの可用性の判断」を参照) は、リモート サービスの状態を調べて報告する Oracle Tuxedo Domains の機能です。

クライアントの要求に応じた接続の要求 (ON_DEMAND ポリシー)

接続ポリシーが ON_DEMAND (CONNECTION_POLICY=ON_DEMAND) の場合は、ローカル クライアントがリモート サービスを要求したか、管理コマンド dmadmin connect が実行されたときにだけ接続が試行されます。ON_DEMAND は、接続ポリシーのデフォルト設定です。

次の図は、接続ポリシーが ON_DEMAND であるドメイン ゲートウェイによってどのように接続が試行されて確立されるのかを示しています。

図 2-5 ON_DEMAND ポリシーで行われる接続

ON_DEMAND ポリシーで行われる接続

起動時の接続の要求 (ON_STARTUP ポリシー)

接続ポリシーが ON_STARTUP (CONNECTION_POLICY=ON_STARTUP) の場合、ドメイン ゲートウェイはドメイン ゲートウェイ サーバが初期化されたときにリモート ドメインとの接続を試行します。デフォルトの ON_STARTUP 接続ポリシーでは、60 秒おきに失敗した接続が再試行されますが、この間隔に別の値を指定することもできます (「ON_STARTUP のみでの接続再試行間隔のコンフィグレーション」を参照)。

次の図は、接続ポリシーが ON_STARTUP であるドメイン ゲートウェイによってどのように接続が試行されて確立されるのかを示しています。

図 2-6 ON_STARTUP ポリシーで行われる接続

ON_STARTUP ポリシーで行われる接続

接続を受信メッセージのみに制限する (INCOMING_ONLY ポリシー)

接続ポリシーが INCOMING_ONLY (CONNECTION_POLICY=INCOMING_ONLY) の場合、ドメイン ゲートウェイは起動時にリモート ドメインへの接続を試行しません。次の図は、接続ポリシーが INCOMING_ONLY であるドメイン ゲートウェイによってどのように接続が試行されて確立されるのかを示しています。

図 2-7 INCOMING_ONLY ポリシー (受信時接続のみ受け付ける) で行われる接続

INCOMING_ONLY ポリシー (受信時接続のみ受け付ける) で行われる接続

ON_STARTUP のみでの接続再試行間隔のコンフィグレーション

CONNECTION_POLICY パラメータが ON_STARTUP に設定されている場合は、自動接続再試行プロセスを利用できます。接続再試行プロセスは、リモート ドメインへの失敗した接続をドメイン ゲートウェイで自動的に再試行できるようにします。管理者は、自動的な接続の試行頻度を管理できます。そのためには、ゲートウェイが接続の確立を再び試みるまでの間隔 (秒単位) を指定します。再試行間隔は、次のように RETRY_INTERVAL パラメータを設定して指定できます。

RETRY_INTERVAL=number_of_seconds

0 ~ 2147483647 秒の値を指定できます。接続ポリシーが ON_STARTUP で、RETRY_INTERVAL パラメータの値が指定されていない場合は、デフォルトの 60 秒が使用されます。

RETRY_INTERVAL パラメータは、接続ポリシーが ON_STARTUP の場合のみ有効です。ほかの接続ポリシー (ON_DEMAND および INCOMING_ONLY) の場合、接続再試行プロセスは利用できません。

最大再試行回数のコンフィグレーション

ドメイン ゲートウェイがリモート ドメインへの接続を試行する最大の回数を指定するには、MAXRETRY パラメータに値を割り当てます。このパラメータの最小値は 0 で、デフォルトである最大値は MAXLONG パラメータの値 (2147483647) です。

MAXRETRY パラメータは、接続ポリシーが ON_STARTUP の場合のみ有効です。ほかの接続ポリシー (ON_DEMAND および INCOMING_ONLY) の場合、接続再試行プロセスは利用できません。

次の表は、MAXRETRY および RETRY_INTERVAL がどのように自動接続再試行プロセスに影響するのかを示しています。

表 2-1 MAXRETRY および RETRY_INTERVAL パラメータの設定例
設定
結果
CONNECTION_POLICY=ON_STARTUP
MAXRETRY=3
RETRY_INTERVAL=30
ローカル ドメイン ゲートウェイは 30 秒間隔で最大 3 回接続を試みます。
CONNECTION_POLICY=ON_STARTUP
MAXRETRY=0
ローカル ドメイン ゲートウェイは初期化時に接続を試行しますが、最初の試行が失敗した場合でも再試行はしません。
CONNECTION_POLICY=ON_STARTUP
RETRY_INTERVAL=30
ドメイン ゲートウェイは、接続が確立されるまで 30 秒間隔で接続を試行します。

ドメイン間の接続ポリシーのコーディング例

Domains コンフィグレーションにかかわるドメインは互いに独立して機能するので、接続ポリシーのどのような組み合わせでも Domains コンフィグレーションで使用できます。ただし、接続ポリシーはどのような組み合わせでも実際に使えるわけではありません。たとえば、ほとんどの場合では、相互運用される 2 つのドメインそれぞれで接続ポリシーを ON_STARTUP にコンフィグレーションしてもあまり意味はありません。

次のコンフィグレーション例は、接続ポリシーの実際的な組み合わせです。この例で、LOCAL1 はローカルの DMCONFIG ファイルで ON_STARTUP にコンフィグレーションされていて、REMOT1 はリモートの DMCONFIG ファイルで INCOMING_ONLY にコンフィグレーションされています。

ローカルの DMCONFIG ファイル :

*DM_LOCAL
LOCAL1    GWGRP=bankg1
          TYPE=TDOMAIN
          CONNECTION_POLICY=ON_STARTUP
          MAXRETRY=5
          RETRY_INTERVAL=100
*DM_REMOTE
REMOT1    TYPE=TDOMAIN
          ACCESSPOINTID="BA.BANK01"

リモートの DMCONFIG ファイル :

*DM_LOCAL
REMOT1    GWGRP=bankg2
          TYPE=TDOMAIN
          ACCESSPOINTID="BA.BANK01"
          CONNECTION_POLICY=INCOMING_ONLY

*DM_REMOTE
 LOCAL1    TYPE=TDOMAIN
           ACCESSPOINTID="BA.CENTRAL01"
           CONNECTION_PRINCIPAL_NAME="BA.CENTRAL01"

 


Domains コンフィグレーションの接続の制御

管理者は、ドメイン間で確立する必要のある接続の数を制御できます。また、ローカル ドメインとリモート ドメインの接続を切断することもできます。

ドメイン間の接続の確立

ローカル ドメイン ゲートウェイとリモート ドメインの接続を確立するには、次のように、connect (co) サブコマンドを使用して dmadmin コマンドを実行します。

prompt> dmadmin co -d local_domain_access_point_name

デフォルトでは、接続は指定されたローカル ドメインとローカル ゲートウェイに対してコンフィグレーションされたすべてのリモート ドメインの間で確立されます。1 つのリモート ドメインのみと接続を確立する場合は、次のように、-R オプションを使用したコマンドラインでそのドメインを指定します。

prompt> dmadmin co -d local_domain_access_point_name
        -R
remote_domain_access_point_name

接続ポリシーが ON_STARTUP、接続再試行プロセスが有効な状態で接続が失敗した場合は、接続再試行プロセスを通じて接続が繰り返し試行されます。

ドメイン間の接続の切断

ゲートウェイが自動接続再試行プロセスを通じて接続を再確立しない状態で、ローカル ゲートウェイとリモート ドメインの接続を切断するには、次のように、disconnect (dco) サブコマンドを使用して dmadmin コマンドを実行します。

prompt> dmadmin dco -d local_domain_access_point_name

デフォルトでは、ローカル ドメインに対してコンフィグレーションされたすべてのリモート ドメインの接続が切断されます。1 つのリモート ドメインのみと接続を切断する場合は、次のように、-R オプションを使用したコマンドラインでそのドメインを指定します。

prompt> dmadmin dco -d local_domain_access_point_name
        -R
remote_domain_access_point_name

自動接続再試行プロセスは、コマンドの実行時にアクティブな接続があるかどうかに関係なくこのコマンドで停止されます。

接続状態の報告

dmadmin printdomain コマンドを使用すると、接続状態および再試行されている接続についてレポートを生成できます。connect コマンドは、接続が成功したかどうかを報告します。printdomain コマンドは、指定されたローカル ドメインについての情報を出力します。その情報には、リモート ドメインのリスト、接続されているリモート ドメインのリスト、接続しようとしているリモート ドメインのリストが含まれます。

次の例は、printdomain コマンドが (その短縮形 pd で) LOCAL1 というローカル ドメイン アクセス ポイントに対して発行される dmadmin セッションを示しています。

prompt> dmadmin
dmadmin - Copyright ...
.
.
.
pd -d LOCAL1
Local domain :LOCAL1
Connected domains:
Domainid: REMOT1
Disconnected domains being retried:
Domainid: REMOT2
dco -d LOCAL1 -R REMOT1
Operation completed successfully.Use printdomain(pd) to obtain results.
dco -d LOCAL1 -R REMOT2
Operation completed successfully.Use printdomain(pd) to obtain results.
co -d LOCAL1 -R REMOT1
Operation completed successfully.Use printdomain(pd) to obtain results.
pd -d LOCAL1
Local domain :LOCAL1
Connected domains:
Domainid: REMOT1

この例では、例自体がシンプルになるように、リモート ドメイン アクセス ポイントの名前 (REMOT1REMOT2) とそれらの DOMAINID (ACCESSPOINTID) 名 (REMOT1REMOT2) が DMCONFIG ファイルの DM_REMOTE セクションで定義されているとおりに同じになっています。

ドメイン接続イベントの開始

2 つ以上のドメイン間でコンフィグレーションまたは接続ステータスの変更が発生すると、デフォルトによってドメイン接続イベントが生成されます。しかし、警告またはエラー メッセージを表示/出力するには、ドメイン接続イベントをサブスクライブする必要があります。

Tuxedo では、以下の 4 つのドメイン接続イベントが生成されます。

 


Domains リンク レベルのフェイルオーバとキープアライブのコンフィグレーション

Domains のリンク レベルのフェイルオーバは、一次リンクが失敗したときに代替ネットワーク リンクが有効になるようにするメカニズムです。Domains キープアライブは、ファイアウォールをまたがるドメイン間接続を活動のない期間オープンに維持するとともに、接続の障害を迅速に検出できるようにするメカニズムです。Domains キープアライブは、Oracle Tuxedo リリース 8.1 以降で利用できます。

Domains リンク レベルのフェイルオーバについては、「Domains リンク レベルのフェイルオーバのコンフィグレーション」を参照してください。Domains キープアライブについては、「Domains のキープアライブの指定」を参照してください。


  ページの先頭       前  次