Oracle Application Server 管理者ガイド 10gリリース3(10.1.3.4) B50830-01 |
|
この章では、Oracle Application Server中間層インスタンスのインストールのクローニングについて説明します。
この章の項目は次のとおりです。
クローニングとは、既存のインストールを元の構成のまま別の場所へコピーするプロセスです。Oracle Application Serverのインストールのクローニングは、次のような場合に役立ちます。
クローン・インストールは、ソース・インストールと同様に動作します。たとえば、クローン・インスタンスは、Oracle Universal Installerを使用して削除またはパッチを適用できます。また、クローン・インストールから別のクローンを作成することもできます。
コマンドラインのクローニング・スクリプトを使用して、テスト用、開発用または本番用のインストールをクローニングしたコピーを作成できます。
大半の用途には、デフォルトのクローニング手順で十分に対応できます。さらに、カスタム・ポート割当ての指定や、カスタム設定の保存など、クローニング・プロセスの様々な側面をカスタマイズすることもできます。
図9-1に、Oracle Identity Managementに接続されていないJ2EEサーバーおよびWebサーバー中間層のクローニングを示します。
クローニング・プロセスでは、ソースOracleホームにあるすべてのファイルをクローニング先Oracleホームにコピーします。したがって、ソース・インスタンスによって使用されているファイルの中に、ソースOracleホームのディレクトリ構造の外部に置かれているものがある場合、それはクローニング先にコピーされません。
ファイルをコピーした後は、一連のスクリプトを使用して、主要な構成ファイルの情報を更新します。たとえば、httpd.conf
内のホスト名とOracleホームへの参照はすべて、新しい値に更新されます。
ソース・インスタンスにデプロイされたアプリケーションのうち、ソースOracleホームのディレクトリ構造内にあるものも、クローン・インスタンスにコピーされ、自動的にデプロイされます。
このリリースでは、次のタイプの中間層インストールをクローニングできます。
クローンOracleホームにおける特定のコンポーネントに影響する検討項目および制限の詳細は、第9.5項を参照してください。
次の事項に注意してください。
クローニング・プロセスでは、Oracle Universal Installerのクローニング機能を利用します。処理はOracle Application Serverインストールに含まれている一連のスクリプトによって実行されます。次の項では、インスタンスのクローニングに関連するプロセスについて説明します。
ソースで、prepare_clone.pl
というスクリプトを実行します。これはクローニングに向けてソースを準備するPerlスクリプトです。クローニングに必要な情報のスナップショットを取得します。
このフェーズで、prepare_clone.pl
はソースOracleホームのファイルを解析して、必要な値を抽出および格納し、必要なファイルをバックアップします。
その後で、Oracleホーム・ディレクトリに対してtarを実行します。
ソース・インスタンスを準備する具体的な手順は、第9.4.2項を参照してください。
クローニング先で、tarファイルからOracleホームを抽出します。次に、clone.pl
というスクリプトを実行します。これは、クローニング処理のすべてを自動的に実行するPerlスクリプトで、必要に応じて、他のユーティリティやOracle Universal Installerを起動します。clone.pl
スクリプトを起動すると、次の3つのフェーズが実行されます。
このフェーズでは、clone.pl
スクリプトによって、クローニングを実行できるようにするために必要な土台を作ります。
このフェーズでは、clone.pl
スクリプトによって、Oracle Universal Installerに必要な引数を指定してクローン・モードで起動し、Oracle Universal Installerホームのクローニングを実行します。これによって、すべてのファイルの再インスタンス化(インスタンス化された既存ファイルのバックアップ作成後)、環境変数の設定、リンクの更新などが行われます。つまり、ファイルのコピーを除き、インストール時に実行された作業をすべて繰り返します。
ポストインストール構成アシスタントは、クローニング時に再度実行するようには設計されていません。したがって、構成アシスタントによって更新されるインスタンス固有の構成ファイルの一部は、Oracle Universal Installerのクローニング・セッションが終了しても更新されません。かわりに、Oracleが用意した一連のポストクローニング・スクリプトで、これらのファイルを更新し、クローン・ホームを作業可能な状態にします。
スクリプトによって実行されるポストクローニング手順は次のとおりです。
chgiphost
コマンドを呼び出すことによって、クローン・ホームのホスト名とIPアドレスが変更されます。chgiphost
を呼び出す前に、スクリプトはchgiphost
をサイレント・モードで起動するために必要な次の情報を集める必要があります。
クローニングの一部としてchgiphost
を実行する場合、(ホスト名やドメイン名の変更などで)chgiphost
をスタンドアロンで実行するときとは違い、すべての構成ツールが実行されるわけではありません。
各フェーズを手動で実行する必要はありません。clone.pl
スクリプトが3つのフェーズをすべて自動的に処理します。ここで示した情報は、概念を理解するためのものにすぎません。
クローニング先での具体的な作業手順は、第9.4.3項を参照してください。
ポストクローニング・フェーズでは、いくつかの重要な構成ファイルがバックアップからリストアされ、更新されます。ファイルに対する典型的な変更は、ホスト名、Oracleホーム、ポート番号などの環境固有の変数を新しい値に更新することです。
次のリストに、更新される重要なファイルの一部を示します。これは、更新されるファイルをすべて網羅しているわけではありません。
Oracle_Home
/config/ias.properties
Oracle_Home
/sysman/j2ee/application-deployments/ascontrol/orion-web.xml
Oracle_Home
/Apache/Apache/conf/httpd.conf
Oracle_Home
/Apache/Apache/conf/mod_oc4j.conf
Oracle_Home
/Apache/Apache/conf/oracle_apache.conf
Oracle_Home
/Apache/modplsql/conf/dads.conf
Oracle_Home
/Apache/modplsql/conf/plsql.conf
Oracle_Home
/Apache/modplsql/conf/cache.conf
Oracle_Home
/Apache/oradav/conf/moddav.conf
Oracle_Home
/opmn/conf/opmn.xml
Oracle_Home
/backup_restore/config/config_misc_files.inp
ここでのパスの形式は、UNIX形式で示されています。Windowsでは、スラッシュが円記号になります。
Oracle Application Serverインスタンスをクローニングするには、Companion CDからスクリプトをコピーします。最初にソースOracleホームを準備し、次に、相手先をクローニングします。
クローニングを実行するには、Perl 5.83以降をシステムにインストールしておく必要があります。クローニングを行うPerlスクリプトを実行する前に、PERL5LIB環境変数に、OracleホームのPerlディレクトリへのパスを設定する必要があります。このパスは、変数定義の最初に示されているパスと一致する必要があります。たとえば、次のように指定します。
export PERL5LIB=$ORACLE_HOME/perl/lib/5.8.3/i686-linux-thread-multi:$ORACLE_ HOME/perl/lib/5.8.3:$ORACLE_HOME/perl/lib/site_perl/5.8.3/i686-linux-thread-multi/
set PERl5LIB=%ORACLE_HOME%¥perl¥5.8.3¥lib;%ORACLE_ HOME%¥perl¥5.8.3¥lib¥MSWin32-x86-multi-thread;%ORACLE_ HOME%¥perl¥site¥5.6.1¥lib;%ORACLE_HOME%¥perl¥site¥5.8.3¥lib
ソースOracleホームのクローニングを準備するには、ソース・インスタンスで次の手順を実行します。
(UNIX) ORACLE_HOME/clone/bin (Windows) ORACLE_HOME¥clone¥bin
prepare_clone.pl
スクリプトを実行します。このスクリプトによって、ソースをクローニングする準備ができます。このスクリプトのコマンドラインは、次のような形式になります。
perl prepare_clone.pl [ORACLE_HOME=OH_dir] [-silent] [-debug] [-export] [-help]
この例では、perl
はそれぞれ、次のように置き換えます。
$ORACLE_HOME/perl/bin/perl
%ORACLE_HOME%¥perl¥5.8.3¥bin¥MSWin32-x86-multi-thread¥perl5.8.3
表9-1に、prepare_clone.pl
スクリプトのパラメータとオプションを示します。
cd Source_Oracle_Home tar cf - * | gzip > oracleas.tar.gz
ファイルの中にsticky bitに設定されているものがある場合、tarユーティリティは警告を発する場合があります。この警告は無視してかまいません。
Oracleホームのアーカイブおよび圧縮には、jar
ユーティリティを使用しないようにしてください。
相手先でソース・インスタンスをクローニングするには、次の手順を実行します。
mkdir -p Destination_Oracle_Home cd Destination_Oracle_Home gunzip < Dir_Containing_Tar/oracleas.tar.gz | tar xf -
(UNIX) ORACLE_HOME/clone/bin (Windows) ORACLE_HOME¥clone¥bin
clone.pl
スクリプトを実行します。Oracleインベントリ・ファイルが含まれたディレクトリには、書込み権限が必要です(Oracleインベントリ・ディレクトリの場所の詳細は、第9.4.4項を参照してください)。このスクリプトのコマンドラインは、次のような形式になります。
perl clone.pl ORACLE_HOME=OH_dir ORACLE_HOME_NAME=OH_Name -instance Instance_Name [-db_vendor vendor_name -db_user username {-db_password db_pass | -db_obf_password db_obf_pass} -db_string connect_db_string -db_sid db_service_name ] {-oc4jadmin_old_password old_admin_pass | -oc4jadmin_obf_old_password old_obf_admin_pass} {-oc4jadmin_new_password new_admin_pass | -oc4jadmin_obf_new_password new_obf_admin_pass} [-Ostring] [-silent] [-debug] [-import] [-help]
この例では、perl
はそれぞれ、次のように置き換えます。
$ORACLE_HOME/perl/bin/perl
%ORACLE_HOME%¥perl¥5.8.3¥bin¥MSWin32-x86-multi-thread¥perl5.8.3
表9-2に、clone.pl
スクリプトのパラメータとオプションを示します。
パラメータまたはオプション | 説明 |
---|---|
ORACLE_HOME |
必須。クローニング先Oracleホームの完全なディレクトリ指定。このパラメータは必須です。このパラメータを指定しない場合、またはその値が無効の場合は、スクリプトは終了します。 Oracleホームを指定するときは、スラッシュ(UNIX)や円記号(Windows)を最後に使用しないでください。 |
ORACLE_HOME_NAME |
必須。クローニング先Oracleホーム(クローンのOracleホーム)の名前。 |
-instance |
必須。クローンのインスタンス名。このインスタンスには、ソース・インスタンス、またはそれ以外に、同じOracleAS Infrastructureを使用するインスタンスや同じクラスタ・トポロジの一部であるインスタンスとは、異なる名前を付ける必要があります。 |
-db_vendor |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。それらの製品スキーマを格納するデータベースのベンダー。有効な値は |
-db_user |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。データベースでスキーマを作成したデータベース・ユーザー。たとえば、SYSを指定します。 ユーザー名が指定されていない場合、スクリプトは終了します。 |
-db_password |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。データベース・ユーザーのパスワード。このオプションのかわりに、-db_obf_passwordを使用することもできます。 ユーザー名が指定されていない場合、スクリプトによって、入力を求めるプロンプトが表示されます。 |
-db_obf_password |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。データベース・ユーザーの不明瞭化されたパスワード。このオプションのかわりに、-db_passwordを使用することもできます。 |
-db_string |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。 connect_db_stringの形式は、データベースのタイプによって異なります。 シングル・インスタンス・データベースの場合: hostname:port hostnameはデータベースを含むホストの完全修飾名、portはデータベース・リスナーのポートを示します。 10g Oracle RACデータベースの場合: virtual_hostname_node1:port1^virtual_hostname_node2:port2[^...] virtual_hostname_node1は最初のノードの仮想ホスト名、port1は最初のノードのデータベース・リスナーのポートを示します。後続のノードごとに、カレット記号(^)と同様の情報を指定します。 9i Oracle RACデータベースの場合: hostname_node1:port1^hostname_node2:port2^[...] hostname_node1は最初のノードのホスト名、port1は最初のノードのデータベース・リスナーのポートを示します。後続のノードごとに、カレット記号(^)と同様の情報を指定します。 |
-db_sid |
Oracle RACデータベース、Oracle BPEL Process ManagerまたはOracle Enterprise Service Busのインストール時のみ必須。データベースのサービスの完全修飾名 (SIDではなくサービス名を指定する必要があります)。たとえば、orcl.us.oracle.comのように指定します。 |
-oc4jadmin_old_password |
-oc4jadmin_obf_old_passwordが使用されていない場合は必須。ソース・インスタンスに対するOracle Application Serverの管理者 |
-oc4jadmin_obf_old_password |
-oc4jadmin_old_passwordが使用されていない場合は必須。ソース・インスタンスに対するOracle Application Serverの管理者 |
-oc4jadmin_new_password |
-oc4jadmin_obf_new_passwordが使用されていない場合は必須。クローン・インスタンスに対するOracle Application Serverの管理者 このパスワードはデフォルトのOC4Jインスタンスに使用され、それ以外のOC4Jインスタンスには使用されません。詳細は、第9.5.3項を参照してください。 |
-oc4jadmin_obf_new_password |
-oc4jadmin_new_passwordが使用されていない場合は必須。クローン・インスタンスに対するOracle Application Serverの管理者 このパスワードはデフォルトのOC4Jインスタンスに使用され、それ以外のOC4Jインスタンスには使用されません。詳細は、第9.5.3項を参照してください。 |
-O |
このオプションに続くテキストが、Oracle Universal Installerコマンドラインに渡されるように指定されます。たとえば、次のコードでこのオプションを使用すると、Oracle Universal Installerが使用する '-O-paramFile C:¥OraHome_1¥oui¥oraparam.ini' 渡すテキストに空白などの区切り文字が含まれている場合は、そのオプションを二重引用符(")で囲む必要があります。 このオプションを使用して複数のパラメータをOracle Universal Installerに渡すには、すべてのパラメータに-Oオプションを1つ付けて渡すか、個々のパラメータに複数の-Oオプションを使用して渡します。 |
-silent |
スクリプトがサイレント・モードで実行されます。パスワードに関連する必須オプションがコマンドラインに含まれていない場合、スクリプトは終了します。 |
-debug |
スクリプトがデバッグ・モードで実行されます。 |
-import |
ソース・インスタンス上のMDSに格納されているページ・カスタマイズ・データやポートレット・メタデータをクローン・インスタンスにインポートします。また、ポートレットのカスタマイズ・データ(プリファレンス・データ)もインポートします。prepare_clone.plコマンドラインの-exportオプションで生成された.earファイルからカスタマイズ・データをインポートします。新しいインスタンスで別の場所のMDSを使用する場合は、このオプションを使用して、WebCenterアプリケーションに関連付けられているカスタマイズ・データを別の場所に移行します。 このオプションでは、Oracle WebCenter Framework Predeploymentツールのインポート・モードをコールします。Predeploymentツールの詳細は、『Oracle WebCenter Framework開発者ガイド』の「WebCenterアプリケーションのデプロイ」を参照してください。
スクリプトによって、 |
-help |
スクリプトの使用方法が出力されます。 |
たとえば、次のように指定します。
perl clone.pl ORACLE_HOME=/scratch/oracle/Ora_1013_B ORACLE_HOME_NAME=OH_1013_B -instance orcl_B -db_vendor oracle -db_user SYS -db_password my_db_pass -db_string my_host:1521 -db_sid orcl.us.oracle.com -oc4jadmin_old_password my_old_admin_pass -oc4jadmin_new_password my_new_admin_pass '-O-paramFile /var/opt/oracle/oui/oraparam.ini' -silent
たとえば、テスト環境から本番環境に移行する場合、新しい場所のMDSを指定できます。ただし、新しいインスタンスを追加することによって環境を拡張する場合は、ソース・インスタンスと同じMDSを使用することをお薦めします。
Specified mds path is mds_path. Do you want to keep the original settings [n|y] [y]:
同じ場所のMDSを使用するには、yを指定します。
別の場所のMDSを使用するには、nを指定します。次に、プロンプトで、新しい場所を入力します。絶対パスを指定してください。また、MDSの場所はアクセス可能である必要があります。つまり、ユーザーには読取りと書込みができる権限が必要です。
誤った場所を指定した場合は、クローニング処理の完了後に場所を変更できます。場所の変更は、次のディレクトリにあるadf-config.xml
ファイルで行います。
ORACLE_HOME/j2ee/OC4J_Instance/applications/apps_name/adf/META-INF
ディレクトリの指定において、OC4J_instanceはOC4Jインスタンスの名前、apps_nameはアプリケーションの名前です。
root.sh
スクリプトを実行します。このスクリプトを実行するにはrootユーザーとしてログインしている必要があります。このスクリプトは、クローン・インスタンスのOracleホーム・ディレクトリにあります。 たとえば、次のように指定します。
$ORACLE_HOME/root.sh
orainstRoot.sh
スクリプトを実行し、Oracleインベントリ・ディレクトリを登録する必要があります。このスクリプトはoraInventoryディレクトリにあります。 oraInventoryディレクトリの場所は、次のファイルに含まれます。
ORACLE_HOME/clone/logs/clonetimestamp.log
これで、クローン・インスタンスは、ソース・インスタンスと同じ構成になります。OC4Jカスタム・インスタンスなど、クローン・インスタンスのプロセスはすべて、Application Server ControlとOPMNで起動および停止できます。デプロイされたアプリケーションはすべて表示され、正しく実行できます。
クローニング・スクリプトは複数のツールを呼び出しますが、これらのツールは個別にログ・ファイルを生成します。ただし、次に示すログ・ファイルは、Oracle Universal Installerおよびクローニングを行うスクリプトによって生成されるもので、診断を目的とした主要なログ・ファイルです。
Oracle_inventory
/logs/cloneActions
timestamp
.log
: ここには、クローニングのOracle Universal Installer部分で発生したアクションの詳細なログが記録されます。
Oracle_inventory
/logs/oraInstall
timestamp
.err
: ここには、Oracle Universal Installerの実行中に発生したエラーに関する情報が記録されます。
Oracle_inventory
/logs/oraInstall
timestamp
.out
: ここには、Oracle Universal Installerで生成された他の様々なメッセージが記録されます。
Oracle_Home
/clone/logs/clone
timestamp
.log
: ここには、プリクローニングおよびクローニングの処理中に発生したアクションの詳細なログが記録されます。
Oracle_Home
/clone/logs/error
timestamp
.log
: ここには、プリクローニングおよびクローニングの処理中に発生したエラーに関する情報が記録されます。また、クローニング・スクリプトにより呼び出された複数のツールによって書き込まれた標準エラー(STDERR)メッセージがすべて記録されます。メッセージは、ツールによって参考メッセージであったりエラー・メッセージであったりします。
ここでのパスの形式は、UNIX形式で示されています。Windowsでは、スラッシュが円記号になります。
clone.pl
スクリプトの実行後にこれらのログ・ファイルを開いて、クローニング・プロセスの詳細を調べてください。Application Server Controlでログ・ファイルを表示する手順は次のとおりです。
「結果」表にログ・ファイルが表示されます。
クラスタのメンバーである中間層インスタンスは、マルチキャスト動的ノード検出または静的ノード検出がベースとなっている場合のみクローニングできます。この場合、クローニング・スクリプトによって、元のクラスタ設定を保持するかどうか尋ねられます。次に例を示します。
cluster Config:<Multi Casting>detected for Source Instance:Do you want to keep the original cluster settings(n|y)[y]:
y
と答えると、クローン・インスタンスは、ソース・インスタンスと同じクラスタの一部となります。
n
と答えると、クローニング・スクリプトによって、クラスタの新しいIPアドレスとポートを入力するよう求められます。この場合、クラスタのタイプは維持されます。たとえば、ソース・インスタンスが動的ノード検出クラスタのメンバーである場合、n
と答えると、新しいマルチキャスト検出IPアドレスおよびポートを入力するよう求められます。クローニングの実行中は、クラスタのタイプを静的ノード検出クラスタなどの別のタイプに変更できません。
トポロジ間ゲートウェイまたは手動のノード間構成をベースとしているクラスタのメンバーであるインスタンスはクローニングできません。これらは、最初にクラスタから削除する必要があります。
次の項では、クローニング全般およびクローンOracleホームの特定のコンポーネントに影響する検討事項と制限事項について、詳しく説明します。
このリリースでは、次のものはクローニングできません。
クローニングについては、これ以外にも次の点に注意してください。
prepare_clone.pl
スクリプトを実行することをお薦めします。
(UNIX) ORACLE_HOME/inventory/Clone/clone.xml (Windows) ORACLE_HOME¥inventory¥Clone¥clone.xml
clone.pl
スクリプトを実行するまでに、ファイルをクローニング先ホストに手動でコピーすることが必要な場合があります。
ファイル内で次の編集を行います。
staticports.ini
ファイルを使用できます。UNIXで1024未満のポートを指定した場合は、クローニング処理中にクローン・インスタンスが起動することはありません。クローニング処理の完了後、root権限でroot.sh
スクリプトを実行してから、このプロセスを開始する必要があります。
次に、Oracle HTTP Serverのクローニングに関する重要な情報を説明します。
ここでのパスの形式は、UNIX形式で示されています。Windowsでは、スラッシュが円記号になります。
クローニング・スクリプトは、ソースの設定を保存し、これらのファイルを新しい環境パラメータで更新します。
クローニングで更新されるのは、既知のファイル、つまり元のインストールに含まれていたファイルのみです。特に、クローニングでは、httpd.conf
、oracle_apache.conf
、dads.conf
、plsql.conf
、olap.conf
、moddav.conf
などのファイルの「include」リストにユーザーが追加した構成ファイルは更新されません。ただし、クローニングで更新されるファイルのリストに「include」ファイルを明示的に追加できます。カスタム設定の更新方法の詳細は、第9.6.3項を参照してください。
httpd.conf
内のVirtualHost命令ディレクティブがすべて保存されます。これらのディレクティブの中に、ソース・ホームへの参照があれば、すべて置き換えられます。ただし、クローニングでは、これらの仮想ホストがリスニングするIPアドレスまたはポート番号は変更されません。 これらの値がクローニング先の環境で有効ではない場合、次のいずれかの手順を実行する必要があります。
httpd.conf
で、手動で更新します。
httpd.conf
のポート番号を変更して、ローカルのOracle HTTP Serverポートでなく、ロード・バランシング・ルーターのポートを使用するようにしていた場合、その変更はクローニング後に破棄されます。クローン・ホームのhttpd.conf
ファイルを編集して、ポート番号をロード・バランシング・ルーターのポートに変更する必要があります。
次に、OC4Jのクローニングについての検討事項を示します。
prepare_clone.pl
スクリプトの実行中に、OC4Jアプリケーションをアンデプロイしようとしたり、OC4Jアプリケーションのその他の管理作業を実行しないでください。
oc4j.properties
はそうしたファイルの一例です。詳細は、第9.3項を参照してください。
mod_oc4j.conf
ファイルは更新されません。mod_oc4j.conf
ファイルに、インスタンスを手動で追加する必要があります。
グループ内の各OC4Jインスタンスに同じoc4jadmin
パスワードを指定する必要があることに注意してください。詳細は、第2.3.3.2項を参照してください。
次に、どのOC4Jコンポーネントが保存されるかを説明します。
data-sources.xml
の中のデータソース情報は保存されます。
jms.xml
、java2.policy
、jazn.xml
、jazn-data.xml
、global-web-application.xml
およびapplication.xml
に含まれるユーザー構成は保存されます。
Application Server Controlをクローニングする際は、次の検討事項を参考にしてください。
default-web-site.xml
ファイルを維持することで、ソース・インスタンスのSSL設定が維持されます。つまり、ソースのApplication Server ControlがHTTPS用に構成されている場合は、クローンのApplication Server ControlもHTTPS用に構成されます。
Oracle BPEL Process Managerを含むインスタンスをクローニングする場合、クローニング後に次の手順を実行する必要があります。
(UNIX) ORACLE_HOME/bpel/bin/shutdownorabpel.sh (Windows) ORACLE_HOME¥bpel¥bin¥shutdownorabpel.bat
(UNIX) ORACLE_HOME/bpel/domains/domainname/tmp/* (Windows) ORACLE_HOME¥bpel¥domains¥domainname¥tmp¥*
(UNIX) ORACLE_HOME/bpel/bin/startorabpel.sh (Windows) ORACLE_HOME¥bpel¥bin¥startorabpel.bat
Oracle Enterprise Service Busを含むインスタンスをクローニングする場合は、インスタンスをクローニングする前にソース・インスタンスからOracle Enterprise Service Busサービスをエクスポートし、クローニング後にそれらのサービスをクローン・インスタンスにインポートする必要があります。
(UNIX) ORACLE_HOME/integration/esb/bin/esbdevprompt.sh (Windows) ORACLE_HOME¥integration¥esb¥bin¥esbdevprompt.bat
ant export-params -Dparamfile ORACLE_HOME¥integration¥DateTimeStamp¥esbparam.properties -DDB_URL=jdbc_connectString:@//hostname:port/db_service_name -DDB_USER=oraesb -DDB_PASSWORD=esb_pwd -DDB_DRIVER=oracle.jdbc.driver.OracleDriver
この例で、hostnameはOracle Enterprise Service Busのリポジトリを含むホスト、portはそのリポジトリのポート、db_service_nameはデータベース・サービス名、esb_pwdはORAESBユーザーのパスワードを表します。たとえばWindowsでは、次のように指定します。
ant export-params -Dparamfile ORACLE_HOME¥integration¥20060828_1503¥esbparam.properties -DDB_URL=jdbc:oracle:thin:@//sta.oracle.com:1521/orcl.us.oracle.com -DDB_USER=oraesb -DDB_PASSWORD=ORAESB123 -DDB_DRIVER=oracle.jdbc.driver.OracleDriver
esbparam.properties
ファイルを、ソース・インスタンスからクローン・インスタンスの次の場所にコピーします。
(UNIX) ORACLE_HOME¥integration¥DateTimeStamp¥esbparam.properties (Windows) ORACLE_HOME/integration/DateTimeStamp/esbparam.properties
esbparam.properties
ファイルを編集して、新しい環境を反映します。クローン・インスタンスとソース・インスタンスが同じホスト上にある場合は、DT_OC4J_HTTP_PORTを新しいポート番号に変更します。たとえば、HTTPリスニング・ポートが7778である場合、このプロパティの値は次のようになります。
DT_OC4J_HTTP_PORT=7778
クローン・インスタンスとソース・インスタンスが異なるホスト上にある場合は、DT_OC4J_HOSTプロパティを新しいホスト名、DT_OC4J_HTTP_PORTを新しいポート番号に変更します。たとえば、クローン・インスタンスのホスト名がnewhost.oracle.com
であり、HTTPリスニング・ポートが7778である場合、これらのプロパティの値は次のようになります。
DT_OC4J_HOST=newhost.oracle.com DT_OC4J_HTTP_PORT=7778
(UNIX) ORACLE_HOME/integration/esb/bin/esbdevprompt.sh (Windows) ORACLE_HOME¥integration¥esb¥bin¥esbdevprompt.bat
ant import-params -Dparamfile ORACLE_HOME¥integration¥DateTimeStamp¥esbparam.properties -DDB_URL=jdbc_connectString:@//hostname:port/db_service_name -DDB_USER=oraesb -DDB_PASSWORD=esb_pwd -DDB_DRIVER=oracle.jdbc.driver.OracleDriver
この例で、hostnameはOracle Enterprise Service Busのリポジトリを含むホスト、portはそのリポジトリのポート、db_service_nameはデータベース・サービス名、esb_pwdはORAESBユーザーのパスワードを表します。たとえばWindowsでは、次のように指定します。
ant import-params -Dparamfile ORACLE_HOME¥integration¥20060828_1503¥esbparam.properties -DDB_URL=jdbc:oracle:thin:@//sta1.oracle.com:1521/orcl.us.oracle.com -DDB_USER=oraesb -DDB_PASSWORD=ORAESB123 -DDB_DRIVER=oracle.jdbc.driver.OracleDriver
Oracle WebCenter Frameworkをクローニングする際は、次の検討事項を参考にしてください。
たとえば、テスト環境から本番環境に移行する場合、新しい場所のMDSを指定できます。ただし、新しいインスタンスを追加することによって環境を拡張する場合は、ソース・インスタンスと同じMDSを使用することをお薦めします。
prepare_clone
コマンドラインの-export
オプションおよびclone
コマンドラインの-import
オプションを使用します。第9.4.3項を参照してください。
クローニングおよびOracle WebCenter Frameworkの詳細は、『Oracle WebCenter Framework開発者ガイド』の「WebCenterアプリケーションのクローニング」を参照してください。
大半の場合には、デフォルトのクローニング・プロセスで十分に対応できます。さらに、次の項で説明する手動の構成手順を実行することによって、クローニング・プロセスのいくつかの側面をカスタマイズすることもできます。
インスタンスをクローニングするときには、Oracle Universal Installerを直接起動しません。ただし、Oracle Universal Installerに間接的に情報を渡すことはできます。それには、通常はコマンドラインに指定するOracle Universal Installerのパラメータを構成ファイルcs.properties
で指定します。このファイルは次のディレクトリにあります。
(UNIX) ORACLE_HOME/clone/ias/config (Windows) ORACLE_HOME¥clone¥ias¥config
たとえば、UNIXでOracleのインベントリ・ファイルにデフォルト以外の場所を指定するには、cs.properties
ファイルに次の行を追加できます。
clone_command_line= -invptrloc /private/oracle/oraInst.loc
複数の引数を指定するには、clone_command_line
に、それぞれの引数を空白で区切って追加します。clone_command_line
行を追加しないでください。次の例は、Linux上で2つの引数を指定する方法を示しています。
clone_command_line= -silent -invptrloc /private/oracle/oraInst.loc oracle.as.j2ee.top:szl_PortListSelect="{YES,/tmp/staticports.ini}"
さらに、-O
文字列オプションを使用して、Oracle Universal Installerコマンドラインに渡す情報を指定できます。たとえば、次のコードでこのオプションを使用すると、Oracle Universal Installerが使用するoraparam.ini
ファイルの場所を渡せます。
'-O-paramFile C:¥OraHome_1¥oui¥oraparam.ini'
デフォルトでは、クローニング・スクリプトが自動的に、コンポーネントに空きポートを割り当てます。クローニング時にデフォルトのポートを割り当てるアルゴリズムは、Oracle Application Serverのインストール時に使用するものと同じです。
新しいOracle Application Serverインスタンスをインストールするときに、使用するポートをstaticports.ini
ファイルに列挙して指定できます。次に、このファイルは、Oracle Universal Installerを呼び出すときのパラメータの値として渡されます。ポートの割当て方法およびstaticports.ini
ファイルの使用方法の詳細は、使用しているプラットフォームのOracle Application Serverのインストレーション・ガイドを参照してください。
インスタンスをクローニングするときには、Oracle Universal Installerを直接起動しません。したがって、コマンドラインでstaticports.ini
ファイルを指定しても、カスタム・ポートは割り当てられません。ただし、Oracle Universal Installerに間接的にポート情報を渡すことはできます。それには、staticports.ini
ファイルの場所を、次の構成ファイルで指定します。
(UNIX) ORACLE_HOME/clone/ias/config/cs.properties (Windows) ORACLE_HOME¥clone¥ias¥config¥cs.properties
たとえば、1024未満のポートを使用する場合は、staticports.ini
ファイルでポートを指定でき、cs.properties
ファイルでstaticports.ini
ファイルの場所を指定できます。
クローニング時にカスタム・ポートを割り当てる手順は次のとおりです。
staticports.ini
ファイルにポート番号を列挙します。詳細は、使用しているプラットフォームのOracle Application Serverのインストレーション・ガイドを参照してください。
staticports.ini
ファイルの場所を指定するには、cs.properties
ファイルのclone_command_line
に情報を追加します。たとえばLinuxでは、次のように指定します。
clone_command_line= oracle.as.j2ee.top:szl_PortListSelect="{YES, /tmp/staticports.ini}"
staticports.ini
ファイルに列挙されているポートは、クローニング時に読み取られ、それにしたがってOracle Universal Installerはポート番号を割り当てます。
UNIXで1024未満のポートを指定した場合は、クローニング処理中にクローン・インスタンスが起動することはありません。クローニング処理の完了後、root権限でroot.sh
スクリプトを実行してから、このプロセスを開始する必要があります。
デフォルトでは、クローニング・スクリプトを実行すると、Oracleホーム内の主要な構成ファイルが更新され、そこに含まれる情報は、クローニング先の環境に対応するものとなります。第9.4.3項は、更新されるファイルの一部のリストです。
デフォルトのクローニング・プロセスを変更して、デフォルトでは更新されないカスタム・データを更新するようにできます。クローニング時にどのファイルを更新し、それらのファイルのどのエントリを更新するかについての情報は、別のファイルのセットに含まれており、それがクローニング・スクリプトによって読み取られます。これらのファイルを編集すると、次のことができます。
これらの変更は、FileFixerというJavaユーティリティで行います。FileFixerでは、正規表現と照合することでファイル内の特定のテキスト文字列が検索され、それらが新しい値に更新されます。FileFixerのパターン検索は行単位で実行されることに注意してください。複数行にわたるパターンは照合できません。
可能な変更には、次のようなものがあります。
これを行うには、ホスト名の変更が必要なファイルのパスを(Oracleホームからの相対位置で)次のようにファイルに追加します。
(UNIX) ORACLE_HOME/chgip/config/hostname.lst (Windows) ORACLE_HOME¥chgip¥config¥hostname.lst
これを行うには、XML構成ファイルfixup_script.xml.tmpl
にreplace
要素タグを追加します。このファイルは次のディレクトリにあります。
(UNIX) ORACLE_HOME/clone/ias/config (Windows) ORACLE_HOME¥clone¥ias¥config
file_name属性の値は、置換を行うファイルの名前と場所を指定します。たとえば、次のタグはserver.xml
ファイル内のOracleホームの値を更新します。
<cfw:operation> <replace file_name="%NEW_HOME%/j2ee/home/config/server.xml"> <cfw:replaceCommand> <cfw:pattern>(%OLD_HOME%)</cfw:pattern> <cfw:value_ref>1</cfw:value_ref> <cfw:new_value>%NEW_HOME%</cfw:new_value> </cfw:replaceCommand> </replace> </cfw:operation>
クローニングの一般的な用途は、Oracle Application Serverクラスタ・トポロジのサイズの拡張です。構成とアプリケーション・デプロイが同一であり、複数のOracle WebCenter FrameworkおよびOracle HTTP Server中間層で構成されるクラスタを考えてみましょう。クラスタを拡張するには、他のインスタンスと同じ構成の新しい中間層インスタンスを作成し、同じクラスタの一部とします。
この例では、次のことを前提としています。
Oracle Web Services Managerはクローニングできないことに注意してください。詳細は、第9.2項を参照してください。
クラスタ・トポロジを拡張する手順は次のとおりです。
このステップでは、クローン・インスタンスの名前を、コマンドラインで指定して変更する必要があります。さらに、-importオプションを指定して、prepare_clone処理で生成された.earファイルをインポートする必要があります。次に例を示します。
perl clone.pl ORACLE_HOME=/scratch/oracle/Ora_10132_B ORACLE_HOME_NAME=OH_10132B -instance WebC -oc4jadmin_old_password my_old_admin_pass -oc4jadmin_new_password my_new_admin_pass -import
この例では、クローン・インスタンスのインスタンス名はWebCです。
|
Copyright © 2002, 2008, Oracle. All Rights Reserved. |
|