Oracle Tuxedo Domainsコンポーネントの使用

     前  次    新規ウィンドウで目次を開く  新規ウィンドウで索引を開く  PDFとして表示 - 新規ウィンドウ  Adobe Readerを入手 - 新規ウィンドウ
コンテンツはここから始まります

ATMI Domainsの計画と構成

次の各項では、Oracle Tuxedo ATMI Domains環境のドメインの計画および構成の方法について説明します。

 


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

図2-1に、2つのOracle Tuxedoアプリケーション(bankappアプリケーションおよびクレジット・カード認可アプリケーション)を示します。

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

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

bankappアプリケーションは、銀行の様々な支店のATMを銀行の本店に接続します。クレジット・カード認可アプリケーションは、クレジット・カードに関する顧客のリクエストを処理します。銀行の管理者は、bankappアプリケーションがクレジット・カード認可アプリケーションと直接通信できれば、顧客により優れたサービスを提供できることに気づきます。直接通信によって、銀行は新規口座を開設する顧客にクレジット・カードを即時に発行できます。

bankappアプリケーションは、Oracle Tuxedo配布キットに含まれているサンプル・アプリケーションであり、クレジット・カード認可アプリケーションは、bankappの仮想的な拡張です。bankappアプリケーション・ファイルは次の場所にあります。

tux_prod_dirは、Oracle Tuxedo配布キットがインストールされているディレクトリを表します。

リスト2-1は、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
#
# Group for Authentication Servers
#
##AUTHGRP        LMID=SITE1   GRPNO=101
#
# Group for Application Queue (/Q) Servers
#
##QGRP1          LMID=SITE1   GRPNO=102
##               TMSNAME=TMS_QM  TMSCOUNT=2
##               OPENINFO="TUXEDO/QM:<APPDIR1>/qdevice:QSP_BANKAPP"
#
# Group for Application Manager's Servers
#
##MGRGRP1        LMID=SITE1   GRPNO=103
#
# Group for EventBroker Servers
#
##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 server providing application specific authentication.
# Ref. AUTHSVR(5).
#
##AUTHSVR        SRVGRP=AUTHGRP  SRVID=1  RESTART=Y  GRACE=0  MAXGEN=2
##               CLOPT="-A"
#
# TUXEDO System /T Message Queue Manager. It is a server that enqueues and
# dequeues messages on behalf of programs calling tpenqueue(3) and
# tpdequeue(3) respectively. Ref. TMQUEUE(5).
#
##TMQUEUE        SRVGRP=QGRP1    SRVID=1  CONV=N  GRACE=0
##               CLOPT="-s QSP_BANKAPP:TMQUEUE"
#
# TUXEDO System /T Message Forwarding Server that forwards messages that have
# been stored using tpenqueue(3) for later processing. Ref. TMQFORWARD(5).
#
##TMQFORWARD     SRVGRP=QGRP1    SRVID=2  CONV=N  REPLYQ=N  GRACE=0
##               CLOPT="-- -e -n -d -q Q_OPENACCT_LOG"
#
# TUXEDO System /T User Event Broker that manages user events by notifying
# subscribers when those events are posted. Ref. 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 Application Server that subscribes to certain events.
#
##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つのソリューションは、図2-2に示すように、bankappアプリケーションとクレジット・カード認可アプリケーションを1つのOracle Tuxedoアプリケーション(ドメイン)に統合することです。

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

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

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

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

リスト2-2は、統合したアプリケーションについて考えられる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
#
# Machines for the bankapp part
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”
#
# Machine for the credit card authorization part
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
#
# Groups for the bankapp part
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”
#
# Group for the credit card authorization part
CREDIT    LMID=SITE4 GRPNO=4
          OPENINFO=“TUXEDO/SQL:/home/rsmith/bankapp/crdtdl1:bankdb:readwrite”
#
*NETWORK
#
# Network connections for the bankapp part
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>”
#
# Network connections for the credit card authorization part
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”
#
# Servers for the bankapp part
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
#
# Servers for the credit card authorization part
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
#
# Services for the bankapp part
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
#
# Services for the credit card authorization part
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構成として再構成する

別のソリューションは、図2-3に示すように、bankappアプリケーションとクレジット・カード認可アプリケーションをDomains構成として再構成することです。2つのドメインは、各ドメインでそれぞれ1つ実行されている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ファイルのコピーに次の変更を加えます。

リスト2-3は、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
#
# Groups for 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”
#
# Groups for 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”
#
# Servers for 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
#
# Servers for 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ファイルの作成

リスト2-4の例に示すように、bankappアプリケーションのDMCONFIGファイルも作成する必要があります。DMCONFIGファイルのバイナリ・バージョン(BDMCONFIG)が、DMADMサーバーと同じマシンに置かれている必要があります。

リスト2-4 bankapアプリケーションのサンプル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”
#
# If the DM_EXPORT section is absent, as in this sample DMCONFIG
# file, all services advertised by the local domain are available
# to the remote domains. Thus, the following bankapp services are
# available to the credit card authorization application:
#
# 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ファイルに次の変更を加えます。

リスト2-5は、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
#
# Group for credit card authorization
CREDIT    LMID=SITE1      GRPNO=1
          OPENINFO=“TUXEDO/SQL:/home/rsmith/creditapp/crdtdl1:bankdb:readwrite”
#
# Groups for Domains
DMADMGRP  LMID=SITE1      GRPNO=2
GWTGROUP  LMID=SITE1      GRPNO=3
#
*SERVERS
DEFAULT:  RESTART=Y        MAXGEN=5  REPLYQ=Y  CLOPT=“-A”
#
# Servers for 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
#
# Servers for credit card authorization
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
# Services for credit card authorization
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ファイルの作成

リスト2-6の例に示すように、クレジット・カード認可アプリケーションの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”
#
# If the DM_EXPORT section is absent, as in this sample DMCONFIG
# file, all services advertised by the local domain are available
# to the remote domains. Thus, the following credit card
# authorization services are available to the bankapp application:
#
# 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アプリケーションは、「複数のOracle Tuxedoアプリケーションに基づくDomainsの構築計画」で説明するように、2つのアプリケーションが相互に直接通信できるようにbankappアプリケーションとクレジット・カード認可アプリケーションを再構成するための別のソリューションです。このソリューションでは、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ファイルの名前はubbdom1からubbdom4までで、4つのDMCONFIGファイルの名前はdomcon1からdomcon4までです。ファイルはcreditappディレクトリにあります。

リスト2-7は、ubbdom1構成ファイルの内容を示しています。SERVERSセクションでは、このドメインは、Domains構成の他の3つのドメインと通信するためにこのドメインで使用される3つのTDomainゲートウェイ・グループに対して構成されています。

リスト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

リスト2-8は、domcon1 Domains構成ファイルの内容を示しています。DM_LOCALセクション(DM_LOCAL_DOMAINSセクションとも呼ばれます)では、このドメインは、Domains構成の他の3つのドメインと通信するためにこのドメインで使用される3つのTDomainゲートウェイ・グループに対して構成されています。ここに示されている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アプリケーションを実行する方法が説明されています。creditappアプリケーションをWindowsシステムで実行する場合は、READMEファイルを読んで基本的な設定情報を調べ、Windows環境で同等のタスクを実行します。WindowsでのOracle Tuxedoの使用方法の詳細は、WindowsでのOracle Tuxedo ATMIの使用を参照してください。

 


Domains構成の設定

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

次の各項で説明するDomainsの例は、次の場所にあるsimpappアプリケーションに基づいています(このアプリケーションは、Oracle Tuxedo配布キットに含まれているサンプル・アプリケーションです)。

tux_prod_dirは、Oracle Tuxedo配布キットがインストールされているディレクトリを表します。

サンプルDomainsアプリケーション(simpapp)の構成

図2-4に示すDomainsの例は、2つのOracle Tuxedoドメイン(simpappに基づくローカル・アプリケーションであるlappと、simpappに基づくリモート・アプリケーションであるrapp)から構成されます。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アプリケーション構成ファイルのテキスト・バージョンであるlapp.ubbでは、必要なパラメータのみ定義されます。他のパラメータにはデフォルト設定が使用されます。リスト2-9は、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ファイル・リストでは、DMADMGWADM、およびGWTDOMAINの各サーバーでREPLYQ=Nが指定されています。この設定は必須ではありません。必要に応じてREPLYQ=Yを指定して、それらのどのサーバーにでも応答キューを指定できます。ただし、REPLYQNに設定されている場合は、パフォーマンスが向上することがあります。

サーバー・グループの定義

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

サーバーの定義

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

lapp Domains構成ファイルのテキスト・バージョンであるlapp.domでは、必要なパラメータのみ定義されます。オプションのパラメータにはデフォルト設定が使用されます。リスト2-10は、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ファイルは、1つのローカル・ドメイン・アクセス・ポイントLAPPのみ指定し、LAPPアクセス・ポイントに対して次のプロパティを定義します。

DM_REMOTEセクションの定義

DM_REMOTEセクションは、リモート・ドメイン・アクセス・ポイントとその特性を示します。ドメイン・ゲートウェイ・グループあたり1つ以上のリモート・ドメイン・アクセス・ポイントがある場合があります。

lapp.domファイルは、1つのリモート・ドメイン・アクセス・ポイントRAPPのみ指定し、RAPPアクセス・ポイントに対して次のプロパティを定義します。

DM_EXPORTセクションの定義

DM_EXPORTセクションは、ローカル・ドメイン・アクセス・ポイントを介して1つ以上のリモート・ドメインにエクスポートされるサービスに関する情報を提供します。このセクションがない場合、または存在しても空の場合は、ローカル・ドメインによって通知されるすべてのサービスが、DM_REMOTEセクションで定義されているアクセス・ポイントに関連付けられているリモート・ドメインから使用可能になります。

lapp.domファイルで指定されているように、lappサービスは、LAPPアクセス・ポイントを介してrappアプリケーションから使用できます。

DM_IMPORTセクションの定義

DM_IMPORTセクションは、1つ以上のリモート・ドメイン・アクセス・ポイントを通じてインポートされ、1つ以上のローカル・ドメイン・アクセス・ポイントを介してローカル・ドメインから利用可能なサービスに関する情報を提供します。このセクションが存在しない場合、または存在しても空の場合、リモート・サービスはローカル・ドメインで使用できません。

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

DM_TDOMAINセクションの定義

DM_TDOMAINセクションは、Oracle Tuxedo Domainsコンポーネントに必要なアドレス指定情報を定義します。構成ファイルのLOCALセクションとREMOTEセクションで指定された各ドメイン・アクセス・ポイントは、DM_TDOMAINセクションのエントリとして表示されます。

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

各リモート・ドメイン・アクセス・ポイント・エントリには、ローカル・ドメインがリモート・ドメインへの接続を行うネットワーク・アドレスを指定する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構成ファイルには、ローカルlapp TDomainゲートウェイがリモートrapp 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

2つのアプリケーションの起動順序に意味はありません。「Domainsの管理」で説明しているように、dmadmin(1)でアプリケーションをモニターします。両方のアプリケーションの起動後に、lappアプリケーションのクライアントはrappアプリケーションで提供されているTOUPPERサービスを呼び出すことができます。

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アプリケーション構成ファイルのテキスト・バージョンであるrapp.ubbでは、必要なパラメータのみ定義されます。他のパラメータにはデフォルト設定が使用されます。リスト2-11は、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ファイル・リストでは、DMADMGWADM、およびGWTDOMAINの各サーバーでREPLYQ=Nが指定されています。この設定は必須ではありません。必要に応じてREPLYQ=Yを指定して、それらのどのサーバーにでも応答キューを指定できます。ただし、REPLYQNに設定されている場合は、パフォーマンスが向上することがあります。

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

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

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

rapp Domains構成ファイルのテキスト・バージョンであるrapp.domでは、必要なパラメータのみ定義されます。他のパラメータにはデフォルト設定が使用されます。リスト2-12は、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構成ファイルと似ていますが、エクスポートおよびインポートするサービスとして2つのファイルにリストされるサービスは異なります。具体的には、rapp.domファイルはrappアプリケーションに対して次のDomains構成を定義します。

rappのアプリケーションおよびドメイン・ゲートウェイ構成ファイルのコンパイル

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

rapp.dom Domains構成ファイルには、ローカルrapp TDomainゲートウェイがリモートlapp 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

2つのアプリケーションの起動順序に意味はありません。「Domainsの管理」で説明しているように、dmadmin(1)でアプリケーションをモニターします。両方のアプリケーションの起動後に、lappアプリケーションのクライアントはrappアプリケーションで提供されているTOUPPERサービスを呼び出すことができます。

関連項目

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

ドメイン間で送信されるデータを圧縮してパフォーマンスを向上させることができます。圧縮を構成するには、DMCONFIGファイルのDM_TDOMAINセクションでCMPLIMITパラメータを設定します。このパラメータはリモート・ドメイン・アクセス・ポイントにのみ関連し、データをリモート・ドメインに送信するときに使用する圧縮しきい値を指定します。最小値は0で、最大値は2147483647です。デフォルト設定は2147483647です。指定したサイズより大きいアプリケーション・バッファは圧縮されます。

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

リモート・ドメインへのサービス・リクエストのルーティング

特定のリモート・ドメインにサービス・リクエストを送信するためにドメイン・ゲートウェイで使用されるデータ依存型ルーティング情報は、DMCONFIGファイルのDM_ROUTINGセクションで提供されます。FMLFML32VIEWVIEW32X_C_TYPEX_COMMONXMLの型付きバッファがサポートされます。

Domains構成に含まれるドメインのルーティング表を作成するには、DMCONFIGファイルのDM_ROUTINGセクションに次の情報を指定します。

Domainsデータ依存型ルーティング構成の例は、「Domainsデータ依存型ルーティングの指定」を参照してください。Domainsデータ依存型ルーティングの詳細な説明は、『Oracle Tuxedoファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』のDMCONFIG (5)リファレンス・ページでDM_ROUTINGを参照してください。

 


Domains構成のセキュリティの設定

Oracle Tuxedo ATMI環境には、Domains構成用の次の基本的なセキュリティ機能が用意されています。

Domains構成で使用可能なセキュリティ機能と個々のOracle Tuxedoアプリケーションで使用可能なセキュリティ機能は相互に独立していますが、互換性があります。Oracle Tuxedoアプリケーションで使用可能なセキュリティ機能の詳細は、ATMIアプリケーションにおけるセキュリティの使用を参照してください。

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

Oracle Tuxedo Domainsコンポーネントには次のセキュリティ・メカニズムがあります。

Domains認証のプリンシパル名の構成

ATMIアプリケーションにおけるセキュリティの使用ドメイン間でのリンクの確立に関する項に説明されているように、ドメインが相互に接続を試行したときにリモート・ドメインがローカル・ドメインを認証できるようにするために、ローカルTDomainゲートウェイには、ローカル・ドメインとリモート・ドメインの両方が認識している識別情報(プリンシパル名)が必要です。同様に、ドメインが相互に接続の確立を試行したときにローカル・ドメインがリモート・ドメインを認証できるようにするために、リモートTDomainゲートウェイには、リモート・ドメインとローカル・ドメインの両方が認識している識別情報(プリンシパル名)が必要です。また、ローカルTDomainゲートウェイは、割り当てられたプリンシパル名を使用して、接続の設定時に必要なセキュリティ資格証明のセットを取得します。

「リモート・ドメインのACLポリシーの構成」で説明しているように、ローカル・アクセス制御リスト(ACL)ポリシーを適用するために必要なセキュリティ資格証明のセットを取得するには、ローカルTDomainゲートウェイに第2のプリンシパル名が必要です。

管理者は、次の構成パラメータを使用して、リリース7.1以降のOracle Tuxedoアプリケーションで実行されているTDomainゲートウェイのプリンシパル名を指定します。

次の例では、LOCAL1アクセス・ポイントとREMOT1アクセス・ポイントを使用して接続を確立するときにDMCONFIGファイルのCONNECTION_PRINCIPAL_NAME識別子が使用されています。

*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に設定されているか何も設定されていない場合でも、DM_PWレベルでセキュリティを適用するにはDomains構成にTDomainゲートウェイが必要です。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ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』の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に、アプリケーションとドメインの両方でNONEに設定されたセキュリティを示します。

リスト2-13 アプリケーションとドメインの両方で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はセキュリティを適用しませんが、REMOT1DM_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ファイルに必要な属性を設定した後で、LOCAL1およびREMOT1でアプリケーションを起動します。

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に設定されたアプリケーション・セキュリティとDM_PWに設定されたドメイン・セキュリティを示します。

リスト2-14 NONEに設定したアプリケーション・セキュリティと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ファイルに必要な属性を設定した後で、LOCAL1およびREMOT1でアプリケーションを起動します。

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に、アプリケーションとドメインの両方でAPP_PWに設定されたセキュリティを示します。

リスト2-15 アプリケーションとドメインの両方で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ファイルを作成した後で、LOCAL1およびREMOT1でアプリケーションを起動します。

Domainsアクセス制御リストの構成

DMCONFIGファイルのDM_ACCESS_CONTROLセクションにDomainsアクセス制御リスト(ACL)を設定するには、ACLの名前とACL名に関連付けるリモート・ドメイン・アクセス・ポイントを指定します。表2-1に手順を示します。

表2-1 Domainsアクセス制御リストの構成
Domain 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ファイルを読み込んでMINENCRYPTBITSMAXENCRYPTBITSなどの様々なパラメータにアクセスし、ローカル・ドメインおよびリモート・ドメインにそれらのパラメータを伝播します。ローカル・ドメインがリモート・ドメインとのネットワーク・リンクを確立するとき、これらの2つのドメインは、双方でサポートされるキーの最大サイズが一致するまでキー・サイズのネゴシエーションを行います。

 


Domains構成の接続の設定

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

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

ON_STARTUPINCOMING_ONLYの接続ポリシーでは、動的ステータスが呼び出されます。「接続ポリシーによるリモート・サービスの可用性の判断」で説明されている動的ステータスは、リモート・サービスのステータスをチェックしてレポートするOracle Tuxedo Domains機能です。

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

ON_DEMANDの接続ポリシー(CONNECTION_POLICY=ON_DEMAND)は、ローカル・クライアントがリモート・サービスをリクエストしたとき、またはdmadmin connect管理コマンドが実行されたときにのみ接続が試行されることを意味します。ON_DEMANDはデフォルトの接続ポリシー設定です。

図2-5に、接続ポリシーがON_DEMANDであるドメイン・ゲートウェイによって接続が試行および確立される方法を示します。

図2-5 ON_DEMANDポリシーで確立された接続

ON_DEMANDポリシーで確立された接続

起動時の接続のリクエスト(ON_STARTUPポリシー)

ON_STARTUP (CONNECTION_POLICY=ON_STARTUP)の接続ポリシーは、ドメイン・ゲートウェイ・サーバーの初期化時にドメイン・ゲートウェイがリモート・ドメインとの接続の確立を試行することを意味します。デフォルトでは、ON_STARTUP接続ポリシーは失敗した接続を60秒ごとに再試行しますが、「ON_STARTUPのみでの接続再試行間隔の構成」で説明しているように、この間隔には別の値を指定できます。

図2-6に、接続ポリシーがON_STARTUPであるドメイン・ゲートウェイによって接続が試行および確立される方法を示します。

図2-6 ON_STARTUPポリシーで確立された接続

ON_STARTUPポリシーで確立された接続

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

INCOMING_ONLYの接続ポリシー(CONNECTION_POLICY=INCOMING_ONLY)は、ドメイン・ゲートウェイが開始時にリモート・ドメインへの接続の確立を試行しないことを意味します。図2-7に、接続ポリシーが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)の場合は、接続再試行処理を使用できません。

表2-2は、MAXRETRYRETRY_INTERVALが自動接続再試行処理に与える影響の例を示しています。

表2-2 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の接続ポリシーで構成してもあまり意味はありません。

次の構成例は、実際的な接続ポリシーの組合せです。この例では、ローカルDMCONFIGファイルのON_STARTUPに対してLOCAL1が構成され、リモートDMCONFIGファイルのINCOMING_ONLYに対してREMOT1が構成されています。

ローカル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構成の接続の制御

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

ドメイン間の接続の確立

ローカル・ドメイン・ゲートウェイとリモート・ドメイン間に接続を確立するには、dmadminコマンドをconnect (co)サブコマンドとともに実行します。

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の場合は、(接続再試行処理を介して)接続の反復的な再試行が行われます。

ドメイン間の接続の切断

ローカル・ゲートウェイとリモート・ドメイン間の接続を切断するには(ゲートウェイが自動接続再試行処理を介して接続の再確立を試行しないことを確認してください)、dmadminコマンドをdisconnect (dco)サブコマンドとともに実行します。

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コマンドは、リモート・ドメインのリスト、接続先のリモート・ドメインのリスト、接続の確立を試行しているリモート・ドメインのリストなど、指定したローカル・ドメインに関する情報を出力します。

次の例は、LOCAL1という名前のローカル・ドメイン・アクセス・ポイントに対してprintdomainコマンド(省略形式はpd)が発行された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

この例では、単純化のために、DMCONFIGファイルのDM_REMOTEで定義されるリモート・ドメイン・アクセス・ポイント名(REMOT1REMOT2)とそのDOMAINID-ACCESSPOINTID-名(REMOT1REMOT2)が同じになっています。

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

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

Tuxedoは、次の4つのドメイン接続イベントを生成します。

 


Domainsリンク・レベルのフェイルオーバーとキープ・アライブの構成

Domainsリンク・レベルのフェイルオーバーは、一次ネットワーク・リンクに障害が発生したときに別のネットワーク・リンクがアクティブになるようにするメカニズムです。Domainsキープアライブは、非アクティブな期間中にファイアウォールを介してドメイン間接続をオープン状態に保ち、接続障害を迅速に検出できるようにするメカニズムです。Domainsキープアライブは、Oracle Tuxedoリリース8.1以降で使用可能です。

Domainsリンク・レベルのフェイルオーバーの説明は、「Domainsリンク・レベルのフェイルオーバーの構成」を参照してください。Domainsキープアライブの説明は、「Domainsのキープ・アライブの指定」を参照してください。


  先頭に戻る       前  次