やっぱりwtc!

Post on 08-May-2015

1.021 Views

Category:

Technology

8 Downloads

Preview:

Click to see full reader

DESCRIPTION

2013年11月27日に開催されたWebLogic Server勉強会@東京のLTセッションでFacebookの「やっぱりWebLogic!」グループ管理人、櫻井将一郎が使用した「やっぱりWTC!」資料です。

TRANSCRIPT

やっぱりWebLogic!

2013年11月27日

FaceBook やっぱりWebLogic!グループ管理人

櫻井将一郎

WTC

第41回Oracle WebLogic Server勉強会@東京

はじめに(おことわりと自己紹介)

おことわり

本資料は、WebLogicやTuxedoのオンラインマニュアルにある内容に沿って、“0”から設定を行ったものになります。

本資料の内容は私見によるものであり、私が所属している組織による公式の見解ではございません。

合わせて設定内容においても推奨値を示しているものではありませんので、ご了承くださいますようお願い致します。

自己紹介

名前:櫻井将一郎@FBやっぱりWebLogic!グループ管理人

職業:Webアプリケーション開発担当を夢見がちなインフラ系SE

詳しくはWebで → http://www.facebook.com/shoichiro.sakurai

参考URL:http://www.facebook.com/groups/208829669205780/ 1

WTCとは?

Oracle Tuxedo(Transactions for Unix,Extended for Distrinuted Operations)とは、分散コンピューティング環境におけるOLTP(オンライントランザクション処理)を実現ためのTPモニタを提供するミドルウェアです。

WTC(WebLogic Tuxedo Connector)は、このTuxedoとWebLogic Server(以降、WLS)を連携(相互運用)するためのコネクタ機能です。

WebLogic

WTC

Tuxedo

Domain Gateway

Domain Gateway

Servlet EJB等

サービス

双方向の 通信が可能

参考URL:http://www.oracle.com/technetwork/jp/ondemand/middleware/

application-grid/tuxedo-overview-302080-ja.pdf

2

WTCのここが素敵

例えば、CやCOBOLで開発された資産(アプリケーション)をWLS上に展開したJavaアプリケーションから「(インポート済みの)サービス」として呼び出すことができます。

逆にWLS上に展開したJavaアプリケーション(EJB)を「(エクスポート済みの)サービス」としておくことでTuxedo上に実装した資産から呼び出すことができます。

Tuxedo-WLSで相互運用する場合にJoltなどの他の選択肢がありますが、トランザクションの伝播ができないと云ったこともあり、旧BEA社はWTCの利用を推奨しておりました。

参考URL:http://docs.oracle.com/cd/E38957_01/tuxedo/docs12c/interop/

iopwls.html

3

今回の検証環境

WebLogicサーバ(VirtualBox上の仮想マシン)

OS:CentOS 6.4(32bit)

AP:WebLogic Server 12c(12.1.1.0)

ホスト名:wls001

IPアドレス:192.168.1.10

Tuxedoサーバ(VirtualBox上の仮想マシン)

OS:CentOS 6.4(32bit)

AP:Oracle Tuxedo 12cR1(12.1.1.0)

ホスト名:tux001

IPアドレス:192.168.1.20

4

本資料のゴール

WebLogic Tuxedo Connectorクイック・スタート・ガイド(下記参考URL)に基づき、以下の構成により相互運用を検証する。

WebLogic

WTC

Tuxedo

Domain Gateway

Domain Gateway

TOLOWER (エクスポート済の

サービス)

TOUPPER

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

ホスト名:wls001 ローカルAP:TDOM2 →wls001:5678 リモートAP:TDOM1 →tux001:1234

ホスト名:tux001 ローカルAP:TDOM1 →tux001:1234 リモートAP:TDOM2 →wls001:5678

渡された文字列を小文字に

変換するプログラム

渡された文字列を大文字に

変換するプログラム

tolower クライアント

toupprクライアント (インポート済の

サービス)

5

WebLogicの設定①

WTCサーバーの作成

①管理コンソールのツリーより[相互運用性]-[WTCサーバー]を選択

③チェンジ・センターより[ロックして編集]ボタンを押下

④[新規]ボタンを押下し、[名前:]を入力し[OK]ボタンを押下

ここではクイック・スタート・ガイドに従い、“mySimpapp”を入力

⑤[WTCサーバー]の表にある“mySimpapp”のリンクをクリック

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm 6

WebLogicの設定②

ローカル・アクセス・ポイントの作成

①[WTCサーバー]表にある“mySimpapp”のリンクをクリック

②[ローカルAP]タブをクリックし、下表のように設定

ここで、WLS側でリスンするアドレス・ポートを設定

します。

③[OK]ボタンを押下

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

アクセス・ポイント myLocalAp

アクセス・ポイントID TDOM2

ネットワーク・アドレス //wls001:5678

7

WebLogicの設定③

リモート・アクセス・ポイントの作成

①[リモートAP]タブをクリックし、下表のように設定

リモートアクセスポイント(Tuxedo側)のリスンする

アドレス・ポートを設定し、これと紐づけるローカル

アクセスポイントを設定します。

②[OK]ボタンを押下

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

アクセス・ポイント myRemoteAp

アクセス・ポイントID TDOM1

ローカル・アクセス・ポイント myLocalAp

ネットワーク・アドレス //tux001:1234

8

WebLogicの設定④

エクスポートされたサービスの作成

①[エクスポート済み]タブをクリックし、下表のように設定

WLSでサービスをエクスポートすることで

「リモート名」を使ってTuxedo側からWLSの

サービスをコールすることができます。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

リソース名 TOLOWER

ローカル・アクセス・ポイント myLocalAp

EJB名 tuxedo.services.TOLOWERHome

リモート名 TOLOWER

9

WebLogicの設定⑤

インポートされたサービスの作成

①[インポート済み]タブをクリックし、下表のように設定

Tuxedo側のサービスをWLSにインポート

することで、WLSからTuxedoのサービスを

コールすることができます。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

リソース名 TOUPPER

ローカル・アクセス・ポイント myLocalAp

リモート・アクセス・ポイント・リスト myRemoteAp

リモート名 TOUPPER

10

WebLogicの設定⑥

WTCサービスのデプロイ~ユーザの作成

①[ターゲット]タブをクリックし、WLSサーバインスタンスをチェックし、これまで設定したWTCの設定をインスタンスで動作するように設定

②Tuxedo側からWLSに展開するサービスをコールする際に、リモート・アクセス・ポイントのアクセス・ポイントIDで呼ばれるので、アクセス・ポイントIDをユーザとして登録しておく。 [セキュリティ・レルム]ー[myRealm]リンクー[ユーザーとグループ]タブー[ユーザー]を選択する。 [新規作成]ボタンをクリックし、“TDOM1”(名前・パスワードとも)を追加し、 [OK]ボタンをクリックする

※ これを行わないとTuxedoクライアント実行時にPermission Deniedを示す“TPEPERM”(8)が発生します。これはリモートアクセスポイント[セキュリティ]タブの[ACLポリシー]を“グローバル”にすることでも回避できます。

Tuxedo 6.5との相互運用について

今回の検証環境ではTuxedo12cと接続しますが、Tuxedo6.5とWTCを行う場合、Tuxedo6.5のリモート・アクセス・ポイントに紐づけるローカル・アクセス・ポイントに対して、 [接続]タブの[相互運用]フィールドを“はい”にしておく必要があります。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm 11

Tuxedoインストール

Tuxedoのインストール

①Tuxedoをダウンロードし、インストールする

http://www.oracle.com/technetwork/jp/middleware/tuxedo/downloads/index.html

②インストーラを実行する(コンソール・モード)

# sh△tuxedo12cR1_32_Linux_01_x86.bin△-i△console

ここでは、

Oracleホーム 【/opt/oracle】

インストール先 【/opt/oracle/tuxedo12.1.1.0】

を指定。

参考URL:http://docs.oracle.com/cd/E38957_01/tuxedo/docs12c/install/

inscon.html

12

Tuxedoの設定①

サンプルソースのビルド

①telnetやsshにて、Tuxedoサーバにログイン

②Cコンパイラが必要なので、開発ツールが入っていない場合は事前に以下の通りインストールしておく。(インターネットに接続できる環境の場合)

# yum△groupinstall△‘Development tools’ →インターネット接続できない場合は-- disablerepo/--enablerepoオプションなどを利用する。

例)# yum△--disablerepo=¥*△--enablerepo=c6-media△groupinstall△'Development tools'

③Tuxedoがインストールされたディレクトリに移動し、環境変数を読み込む

# cd△/opt/oracle/tuxedo12.1.1.0/

# source△tux.env ※全量は後述

④サンプルソースをビルドする(必要であれば別のディレクトリに複製してから)

# cd△/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/

# buildclient△-o△simpcl△-f△simpcl.c

→TuxedoからWLSのサービスを呼び出すサンプル

# buildserver△-o△simpserv△-f△simpserv.c△-s△TOUPPER

→WLSからTuxedoのサービスを呼び出すサンプル

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm 13

Tuxedoの設定②

ubbconfig(ubbdomain)の設定

①サンプルに同梱されたファイルからubbconfigの設定を行う

# cd△/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/

# cp△-p△ubbsimple△ubbconfig

# vi△ubbconfig

設定を変更する箇所は以下の通り ※全量は後述

②ubbconfigをロードして、tuxconfigを生成する

# tmloadcf△-y△ubbconfig

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

IPCKEY 123456

APPDIR “/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp”

TUXCONFIG “/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/tuxconfig”

TUXDIR “/opt/oracle/tuxedo12.1.1.0”

*MACHINES tux001

14

Tuxedoの設定③

domainconfigの設定

①WebLogicサンプルに同梱されたファイルからdomainconfigの設定を行う

# cp△-p△dom1config.template△¥

/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/domainconfig

# vi△domainonfig

設定を変更する箇所は以下の通り ※全量は後述

②domainconfigをロードして、bdmconfigを生成する

# dmloadcf△-y△domainonfig

③WLSサービスを呼ぶためのサンプルクライアントをビルドする

# buildclient△-f△tolower.c△-o△tolower

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

設定項目名 設定値

TDOM1 GWGRP GROUP2

TDOM1 NWADDR “//tux001:1234”

TDOM2 NWADDR “//wls001:5678”

15

WebLogicAPのデプロイ

WebLogicアプリケーションサンプルのビルド

①WTCのサンプルとして提供されている【simpapp】【simpserv】を入手する。WLS7/8.1では同梱されていたが、現バージョンではOTNにあるらしい。

(・・・が、見つけられていないので、各自何とか探し出す)

②antタスクを利用してサンプル【simpapp】をビルドする

# cd△【simpapp】のあるディレクトリ(build.xmlが同梱されている)

# source△/opt/oracle/weblogic/wlserver_12.1/server/setWLSEnv.sh

# TUXDIR=/opt/oracle/tuxedo12.1.1.0;△export△TUXDIR

※build.xml内で環境変数TUXDIRが必要なためセットします。不要であればコメント化。

# ant

③【wtc_toupper.jar】が生成されるので、管理コンソールからデプロイを行う

④同様に【simpserv】をビルドすると【wtc_tolower.jar】が生成されるので、これもデプロイを行う。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm 16

Tuxedoの起動

Tuxedoの起動

①以下のコマンドでTuxedoを起動する

# tmboot△-y

なお、停止の際には“tmshutdown△-y”で停止します。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

Booting all admin and server processes in /opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/tuxconfig INFO: Oracle Tuxedo, Version 12.1.1.0, 32-bit, Patch Level (none) Booting admin processes ... exec BBL -A : process id=4169 ... Started. Booting server processes ... exec simpserv -A : process id=4170 ... Started. exec DMADM -A : process id=4171 ... Started. exec GWADM -A : process id=4172 ... Started. exec GWTDOMAIN -A : process id=4173 ... Started. 5 processes started.

BBL・・・Tuxedo管理プロセス DMADM・・・Domains管理サーバ GWADM・・・ゲートウェイ管理サーバ GWTDOMAIN・・・Tdomainゲートウェイ・サーバ(WLSとの接続を確立するサーバプロセス)

17

Tuxedoの起動確認

Tuxedoの起動確認

①以下のコマンドでTuxedoを起動確認する

# tmadmin

> printserver

> printservice

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

Prog Name Queue Name Grp Name ID RqDone Load Done Current Service --------- ---------- -------- -- ------ --------- --------------- BBL 123435 SITE1 0 0 0 ( IDLE ) DMADM 00002.00001 GROUP2 1 6 300 ( IDLE ) simpserv 00001.00001 GROUP1 1 0 0 ( IDLE ) GWADM 00002.00002 GROUP2 2 0 0 ( IDLE ) GWTDOMAIN 00002.00003 GROUP2 3 9 0 ( IDLE )

Service Name Routine Name Prog Name Grp Name ID Machine # Done Status ------------ ------------ --------- -------- -- ------- ------ ------ DMADMIN DMADMIN DMADM GROUP2 1 SITE1 0 AVAIL TOUPPER TOUPPER simpserv GROUP1 1 SITE1 0 AVAIL TDOM1 GWS GWADM GROUP2 2 SITE1 0 AVAIL TOLOWER GWS GWTDOMAIN GROUP2 3 SITE1 9 AVAIL TMS GWS GWTDOMAIN GROUP2 3 SITE1 0 AVAIL

18

WTCの接続状態

WTCの接続状態

①以下のコマンドで接続状態を確認する

# netstat△–a (WebLogic側)

# netstat△–a (Tuxedo側)

どちらからかサービスが呼ばれると、WTC接続は”ESTABLISHED”として接続します。

なお、WebLogicでリモートアクセスポイントの[接続]タブにある[接続ポリシー]が

“起動時”、またはTuxedoで【domainconfig】のDM_LOCAL_DOMAINSセクショ

ンにCONNECTION_POLICY=ON_STARTUPが設定されていると、起動時から恒久的に

接続し続けます。

また先に接続してきた方が相手のリスンポートに接続し、自身はhighポート(anyポート)

を使います。上記の場合は、WebLogic側から接続してきた例になります。

tcp 0 0 wls001:5678 *:* LISTEN tcp 0 0 wls001:56532 tux001:1234 ESTABLISHED

tcp 0 0 tux001:1234 *:* LISTEN tcp 0 0 tux001:1234 wls001:56532 ESTABLISHED

19

リモートサービスの呼び出し

TuxedoからWebLogicのサービスを呼び出す

①以下のコマンドを実行する

# cd△/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp

# ./tolower△ALLSMALL

WebLogicからTuxedoのサービスを呼び出す

①以下のコマンドを実行する

# cd△./clientclasses (simpappビルド時に生成されるEJBクライアントの出力先)

# java△examples.wtc.atmi.simpapp.Client△string-to-convert△¥

“t3://192.168.1.10:7001”△ユーザ名△パスワード

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65958/toc.htm

Returned string is: allsmall

Beginning statefulSession.Client... Creating Toupper converting string-to-convert converted to: STRING-TO-CONVERT End statefulSession.Client...

20

WTC通信時のパケットキャプチャ

WTC通信時のパケットキャプチャ

左図:Tuxedo→WebLogicのサービス呼び出し時にWebLogic上でキャプチャ

右図:WebLogic→Tuxedoのサービス呼び出し時にTuxedo上でキャプチャ

プロトコル仕様は公開されていないため、よくわからないですが、メッセージは飛んでいそうです。

21

Tuxedo通信の概要①

Tuxedoサービスへの接続

TuxedoConnectionFactoryを使用してJNDIツリーの「tuxedo.services.TuxedoConne

ction」をルックアップ、リモートドメインへの接続を確立し、TuxedoConnectionオブジェクトを取得します。その後でgetTuxedoConnection() を使用してTuxedo オブジェクトへの接続を作成します。なお、“TPENOENT”(6)は、相手側のサービスが参照できない(エントリがない)場合のTuxedoエラーになります。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65957/

clients.htm

1:try { 2: ctx = new InitialContext(); 3: tcf = 4: (TuxedoConnectionFactory) 5: ctx.lookup("tuxedo.services.TuxedoConnection"); 6:} catch (NamingException ne) { // Tuxedo オブジェクトを取得できなかった場合にTPENOENT を送出する 7: throw new TPException(TPException.TPENOENT, 8: "Could not get TuxedoConnectionFactory : " + ne); 9:} 10:myTux = tcf.getTuxedoConnection();

22

Tuxedo通信の概要②

Tuxedoへのメッセージ送信

ここではtpcall()によってTuxedoサービスを同期呼び出しします。他にもtpacall()と云う非同期タイプの呼び出し方法もあります。

例外は最終的に一般なシステムエラーを示す“TPESYSTEM”(12)にまとめています。

メッセージ送信後は、tpterm()によりTuxedoサービスとの接続を切断します。

参考URL:http://docs.oracle.com/cd/E28613_01/web.1211/b65957/

clients.htm

1:myData = new TypedString(<文字列>); 2:try { 3: myRtn = myTux.tpcall(“<リモートサービス名>", myData, 0); 4:} catch (TPReplyException tre) { 5: throw tre; 6:} catch (TPException te) { 7: throw te; 8:} catch (Exception ee) { 9: throw new TPException(TPException.TPESYSTEM, "Exception: " + ee); 10:} 11:myData = (TypedString) myRtn.getReplyBuffer(); 12:myTux.tpterm(); // Tuxedo との関連をクローズする

23

Tuxedo通信の概要③

C言語によるクライアントのコーディング

C言語でクライアントアプリケーションを作る場合にはこうした関数が必要となります。

(atmi.hヘッダファイルをincludeしておく必要があります)

参考URL:

http://docs.oracle.com/cd/E38957_01/tuxedo/docs12c/tutor/tutsi.html http://docs.oracle.com/cd/E38957_01/tuxedo/docs12c/pgc/pgclt.html

関数名 内容

tpinit() アプリケーションへの参加する

tpalloc() 送信または応答メッセージのバッファを確保する

tpcall() メッセージを送信する

tpterm() アプリケーションを終了する

tpfree() tpalloc()で確保したバッファを解放する

24

おわりに

WTCには本番環境では必要となるフェイルオーバー構成やラウンドロビン構成、タイムアウト設計、またWTCから呼ばれるサービスの専用実行スレッドやその設定方法など、今回紹介しきれていないTIPSがまだまだあります。

冒頭の通りCなどの資産があり、Javaからそれを利用したい(例えばWebアプリケーションとして利用できるようにしたい)、と云った場合に、Tuxedo+WebLogicによるWTCでこれを実現する手段もあります。

本資料でWTCと云うテクノロジーを認識し、興味を持って頂けたら幸いです。

以上、ご清聴ありがとうございました。

25

(参考)Tuxedoインストールログ①

# sh tuxedo12cR1_32_Linux_01_x86.bin -i console

Preparing to install...

Extracting the JRE from the installer archive...

Unpacking the JRE...

Extracting the installation resources from the installer archive...

Configuring the installer for this system's environment...

Launching installer...

Preparing CONSOLE Mode Installation...

===============================================================================

Choose Locale...

----------------

1- English

->2- 日本語

CHOOSE LOCALE BY NUMBER: 2

===============================================================================

Tuxedo 12.1.1.0 (created with InstallAnywhere by Macrovision)

-------------------------------------------------------------------------------

===============================================================================

開始画面

----

InstallAnywhere の指示に従って操作していくと、Tuxedo 12.1.1.0 を簡単にインストールできます。

このインストールを続行する前に、すべてのプログラムを終了することをお勧めします。

各指示に従って操作すると、次のインストール手順へ進むことができます。前の手順で指定した内容を変更する場合は、[戻る] ボタンをクリックしてください。

[終了] ボタンをクリックすると、いつでもインストールをキャンセルできます。

続行するには <ENTER> キーを押します。:

(つづく)

(つづき)

===============================================================================

インストール セットを選択

-------------

このインストーラでインストールするインストール セットを選択してください。

->1- Full Install

2- Server Install

3- Full Client Install

4- Jolt Client Install

5- ATMI Client Install

6- CORBA Client Install

7- カスタマイズ...

インストール セットの番号を入力するか、デフォルトを使用する場合は <ENTER> キーを押してください。

: 1

===============================================================================

Oracleホームの選択

------------

1- 新しいOracleホームを作成します

数字を入力してください: 1

新しいOracleホーム・ディレクトリを指定してください: /opt/oracle

===============================================================================

製品ディレクトリの選択

-----------

1- 現在の選択を変更します(/opt/oracle/tuxedo12.1.1.0)

2- 現在の選択を使用します(/opt/oracle/tuxedo12.1.1.0)

数字を入力してください: 2

サンプルのインストール (Y/N): Y

(つづく)

26

(参考)Tuxedoインストールログ②

(つづき)

===============================================================================

インストール前の要約

----------

続行するには <ENTER> キーを押してください。情報が間違っている場合は、[戻る] をクリックして変更を行ってください。

製品名:

Tuxedo 12.1.1.0

インストール フォルダ:

/opt/oracle/tuxedo12.1.1.0

Required Space:

374 MB

Available Space:

2822 MB

続行するには <ENTER> キーを押します。:

===============================================================================

インストール準備完了

----------

お使いのシステムに Tuxedo 12.1.1.0 をインストールする準備が整いました。インストール先:

/opt/oracle/tuxedo12.1.1.0

インストールするには <ENTER> キーを押してください。:

===============================================================================

インストール中...

----------

[==================|==================|==================|==================]

[------------------|------------------|------------------|------------------]

===============================================================================

tlistenサービスの構成

--------------

パスワード:

パスワードの確認:

パスワードが受理されました。お待ちください...

(つづく)

(つづき)

===============================================================================

SSL Installation Choice.

------------------------

Would you like to install SSL Support?

->1- Yes

2- No

選択する項目の番号を入力するか、デフォルトを使用する場合は <ENTER> キーを押してください。:

===============================================================================

SSLサポートのためのLDAP設定を入力

--------------------

LDAPサービス名: a

LDAPポートID: b

LDAP基本オブジェクト: c

LDAPフィルタ・ファイルの場所

[Enter]を押して、デフォルトの

/opt/oracle/tuxedo12.1.1.0/udataobj/security/bea_ldap_filter.dat

を使用するか、新規に入力します:

===============================================================================

インストール完了

--------

おめでとうございます。 Tuxedo 12.1.1.0 が次の場所にインストールされました。

/opt/oracle/tuxedo12.1.1.0

<ENTER> キーを押すと、インストーラが終了します。:

27

(参考)Tuxedo設定ファイル

【 tux.env 】

TUXDIR=/opt/oracle/tuxedo12.1.1.0; export TUXDIR

JAVA_HOME=$TUXDIR/jre; export JAVA_HOME

JVMLIBS=$JAVA_HOME/lib/i386/server:$JAVA_HOME/jre/bin

PATH=$TUXDIR/bin:$JAVA_HOME/bin:$PATH; export PATH

COBCPY=:$TUXDIR/cobinclude; export COBCPY

COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"; export COBOPT

SHLIB_PATH=$TUXDIR/lib:$JVMLIBS:$SHLIB_PATH; export SHLIB_PATH

LIBPATH=$TUXDIR/lib:$JVMLIBS:$LIBPATH; export LIBPATH

LD_LIBRARY_PATH=$TUXDIR/lib:$JVMLIBS:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH

WEBJAVADIR=$TUXDIR/udataobj/webgui/java; export WEBJAVADIR

APPDIR=/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp;export APPDIR

TUXCONFIG=/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/tuxconfig;export TUXCONFIG

BDMCONFIG=/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/bdmconfig;export BDMCONFIG

【 domainconfig 】

*DM_RESOURCES

VERSION=U22

*DM_LOCAL_DOMAINS

TDOM1 GWGRP=GROUP2

TYPE=TDOMAIN

DOMAINID="TDOM1"

BLOCKTIME=20

MAXDATALEN=56

MAXRDOM=89

DMTLOGNAME="DMTLOG_TUXDOM"

DMTLOGDEV="/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/tlog"

AUDITLOG="/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/aud"

*DM_REMOTE_DOMAINS

TDOM2 TYPE=TDOMAIN

DOMAINID="TDOM2"

*DM_TDOMAIN

TDOM1 NWADDR="//tux001:1234"

TDOM2 NWADDR="//wls001:5678"

*DM_REMOTE_SERVICES

TOLOWER RDOM="TDOM2"

【 ubbconfig 】

*RESOURCES

IPCKEY 123456

DOMAINID simpapp

MASTER SITE1

MODEL SHM

LDBAL N

MAXACCESSERS 20

MAXSERVERS 15

MAXSERVICES 20

*MACHINES

tux001

LMID = SITE1

APPDIR = "/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp"

TUXCONFIG = "/opt/oracle/tuxedo12.1.1.0/samples/atmi/simpapp/tuxconfig"

TUXDIR = "/opt/oracle/tuxedo12.1.1.0"

*GROUPS

GROUP1

LMID=SITE1 GRPNO=1 OPENINFO=NONE

GROUP2

LMID=SITE1 GRPNO=2 OPENINFO=NONE

*SERVERS

DEFAULT:

CLOPT="-A"

simpserv SRVGRP=GROUP1 SRVID=1

DMADM SRVGRP=GROUP2 SRVID=1

GWADM SRVGRP=GROUP2 SRVID=2

GWTDOMAIN SRVGRP=GROUP2 SRVID=3

*SERVICES

TOUPPER

28

top related