次の節では、Oracle WebLogic Serverにおいて、ドメインの構成を永続化するために使用するファイルについて説明します。
各ドメインの構成は、ドメインの構成ディレクトリに格納されているXMLドキュメントに記述されます。実行時には、ドメイン内の各Oracle WebLogic Serverインスタンスが、このドキュメントに記述された構成のインメモリー表現を作成します。
注意: ドメイン・ディレクトリでは、作成後に構成の変更がなくても、ドメインの適切な動作のために書込み権限と読取り権限が必要です。これは、Weblogic Serverが固有の内部デプロイメントを実行し、サーバーの再起動時に構成ファイルが書きなおされる可能性があるためです。 |
ドメインの中心的な構成ファイルはDOMAIN_NAME
/config/config.xml
です。このファイルには、ドメインの名前と、ドメイン内の各サーバー・インスタンス、クラスタ、リソース、およびサービスの構成が指定されています。ファイルには、DOMAIN_NAME
/config
ディレクトリのサブディレクトリに格納されている追加のXMLファイルへの参照も含まれています。これらの含まれるファイルは、Oracle WebLogic Serverの主要なサブシステムを記述するために使用されます。
Oracle WebLogic Serverのデフォルト値のほとんどは、パフォーマンスを最適化するため、ドメインの構成ファイルには保持されていません。そのため、状況によっては、XML要素が構成ファイルに記述されていない場合もあります。たとえば、ドメインがアクティブな間にドメインのデフォルトのロギング重大度を変更したことがない場合、config.xml
ファイルにはドメインのロギングを構成するXML要素は含まれていません。
さらにパフォーマンスを最適化するため、各管理対象サーバーはドメインの構成ファイルのコピーを保持しています。このコピーは読取り専用で、変更管理プロセスの一部としてのみ更新できます(第4章「構成の変更の管理」を参照)。
ドメインの構成ドキュメントは、ほとんどの状況ではテキスト・エディタなどの非Oracleツールでは編集しないようにしてください。かわりに、管理コンソール、WebLogic Scripting Tool (WLST)など、『Oracle Fusion Middleware Oracle WebLogic Serverの紹介』の「WebLogic Serverシステム管理の概要」で説明されているいずれかのツールを使用してください。
ただし、Oracle WebLogic Serverの構成ドキュメントはスキーマに準拠したXMLファイルであるため、XSLTまたはXMLパーサー(Apache Xerces、JDOMなど)を使用して編集することも可能です。作成したスクリプトは徹底的にテストし、変更を行う前に必ず各構成ファイルのバックアップ・コピーを作成するようにしてください。
ドメインの構成ドキュメントを定義するスキーマは、次の場所に格納されています。
http://xmlns.oracle.com/weblogic/weblogic-diagnostics/1.0/weblogic-diagnostics.xsd
WL_HOME
/server/lib/schema
内のJARファイル。WL_HOME
はOracle WebLogic Serverのインストール・ディレクトリです。このディレクトリ内では:
domain.xsd
ドキュメントは、パス名META-INF/schemas/schema-0.xsd
のweblogic-domain-binding.jar
で表現されます。
security.xsd
ドキュメントは、パス名META-INF/schemas/schema-1.xsd
のweblogic-domain-binding.jar
で表現されます。
weblogic-diagnostics.xsd
ドキュメントは、パス名META-INF/schemas/schema-0.xsd
のdiagnostics-binding.jar
で表現されます。
警告: 実行中のドメインの構成ファイルは編集しないでください。Oracle WebLogic Serverでは、構成ファイルを定期的に書き換えているため、変更した内容は消失します。プラットフォームによっては、Oracle WebLogic Serverの障害の原因となる可能性もあります。 |
ドメイン・セキュリティと組込みLDAPサーバーのセキュリティ資格は、暗号化された状態でconfig.xml
ファイルに格納されます。config.xml
ファイルをテキスト・エディタなどの非Oracleツールで作成した場合は、セキュリティ資格を見つけて暗号化し、作成済のconfig.xml
ファイルに、暗号化した資格をコピーする必要があります。
Oracle WebLogic Serverの暗号化ユーティリティの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverコマンド・リファレンス』の「encrypt」を参照してください。資格を暗号化したら、config.xml
ファイル内の要素(例3-1)に、暗号化された値を指定します。
構成ファイルのバックアップ・コピーを作成するようにOracle WebLogic Serverを構成できます。そうすることで、構成の変更を元に戻す必要がある場合や、万一構成ファイルが破損した場合に、回復しやすくなります。管理サーバーは起動時に、構成ファイルを含むconfig-booted.jar
というJARファイルを保存します。構成ファイルを変更すると、古いファイルはドメイン・ディレクトリの下のconfigArchive
ディレクトリ内で、連続番号の付いた名前のJARファイル(config-1.jar
など)に保存されます。
構成ファイルのアーカイブについては、Oracle Fusion Middleware Oracle WebLogic Serverの管理コンソール・オンライン・ヘルプの「構成ファイルのアーカイブ化」を参照してください。WLSTを使用してバックアップ・コピーが作成されるように構成する場合は、例3-2に示すように、DomainMBean
のConfigBackupEnabled
属性をtrue
に設定し、保持する構成アーカイブ・ファイルの数をArchiveConfigurationCount
属性に指定します。
デフォルトで、Oracle WebLogic Serverは、Oracle Middleware MW_HOME
/user_projects/domains
ディレクトリの下にドメイン・ディレクトリを作成します。この節では、ドメイン・ディレクトリとサブフォルダの内容について説明します。なお以下では、ユーザーがドメイン作成時に定義する名前を、domain-name
、deployment-name
、server-name
のように表記します。
ドメイン・ディレクトリには、ドメイン内の個別のアプリケーションによって作成されたファイルやディレクトリが格納される場合もあります。
まだドメインを作成していない場合は、サンプルとして既存のドメイン・ディレクトリWL_HOME
/examples/domains/wl_server
を参照してください。WL_HOME
はOracle WebLogic Serverのインストール・ディレクトリです。
このディレクトリは、開発サーバーでアプリケーションを素早くデプロイする方法を提供します。Oracle WebLogic Serverインスタンスが開発モードで実行中の場合、このディレクトリに配置したアプリケーションまたはモジュールはWebLogic Serverインスタンスによって自動的にデプロイされます。
このディレクトリに配置するファイルは、次のようなJava EEアプリケーションです。
EARファイル
WAR、EJB JAR、RAR、またはCARアーカイブ・モジュール
アプリケーションまたはモジュールの展開されたアーカイブ・ディレクトリ
このディレクトリには、ドメインの管理サーバーと管理対象サーバーの起動および停止処理に使用されるスクリプトが含まれています。通常、これらのスクリプトは、UNIX用に.sh
ファイルが、Windows用に.cmd
ファイルが用意されています。bin
ディレクトリは、データベース管理システム、フルテキスト検索エンジン・プロセスなどを起動および停止するスクリプトなどのドメイン全体を対象とする他のスクリプトをオプションで含むことができます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverサーバーの起動と停止の管理』を参照してください。
ドメインの構成ドキュメントへの変更を検証する際に、パフォーマンスの最適化に使用するデータが格納されます。これらはOracle WebLogic Serverの内部データであるため、バックアップする必要はありません。
このディレクトリには、WebLogic診断フレームワークのインストゥルメンテーションのシステム・モジュールがあります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Server診断フレームワークの構成と使い方』を参照してください。
このディレクトリには、JDBCのシステム・モジュール、つまり、(JSR-88とは異なり) JMXから直接構成できる、グローバルなJDBCモジュールが含まれます。詳細は、Oracle WebLogic Serverのデータベース接続に関する説明を参照してください。
このディレクトリには、JMSのシステム・モジュール、つまり、(JSR-88とは異なり) JMXから直接構成できる、グローバルなJMSモジュールが含まれます。詳細は、Oracle WebLogic Serverのメッセージングに関する説明を参照してください。
このディレクトリには、ノード・マネージャとの接続に関する構成情報が保持されます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverノード・マネージャ管理者ガイド』の「ノード・マネージャの構成ファイルとログ・ファイル」を参照してください。
このディレクトリには、セキュリティ・フレームワークのシステム・モジュールが含まれます。ドメインの現在のレルムにある、セキュリティ・プロバイダの各種類ごとに1つの、セキュリティ・プロバイダの構成拡張が格納されます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Server Securityについて』を参照してください。
このディレクトリには、ドメインの構成の状態を保存したJARファイルのセットが格納されます。構成の保留中の変更内容がアクティブ化される直前に、config.xml
ファイルと他の関連する構成ファイルから成るドメインの既存の構成の状態が、config.jar#1
、config.jar#2
のような名前のバージョン付きのJARファイルに保存されます。
保存するバージョン付きJARファイルの最大数は、DomainMBean
のarchiveConfigurationCount
属性で指定します。この最大数に達すると、新しいアーカイブが作成される前に、最も古い変換アーカイブが削除されます。
このディレクトリには、管理コンソールの拡張が格納されています。これらの拡張を使用すると、Oracle WebLogic Serverにインストールされているファイルを修正することなく、Oracle WebLogic Server管理コンソールのコンテンツを追加または置換したり、ロゴ、スタイル、色を変更したりできます。たとえば、カスタマイズされたアプリケーション・モニター機能や管理機能を備えたコンテンツを追加できます。『Oracle Fusion Middleware Oracle WebLogic Server管理コンソールの拡張』を参照してください。
このディレクトリに配置されているJARファイルは、ドメイン内のWebLogic Serverインスタンスで実行しているすべてのJ2EEアプリケーションで(別のシステム・レベル・クラス・ローダー内で)使用できるようになります。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverアプリケーションの開発』のドメイン/lib
ディレクトリへのJARの追加に関する項を参照してください。
このディレクトリには、要求されてまだアクティブ化されていない構成の変更を表すドメイン構成ファイルが格納されます。構成の変更がアクティブ化されると、構成ファイルはこのディレクトリから削除されます。詳細は、第4章「構成の変更の管理」を参照してください。
このディレクトリには、ドメイン内のどのOracle WebLogic Serverインスタンスの場合でも、以下のセキュリティ関連のファイルが格納されます。
SerializedSystemIni.dat
また、ドメインの管理サーバーだけで必要になる、以下のセキュリティ関連ファイルも格納されます。
DefaultAuthorizerInit.ldift
DefaultAuthenticatorInit.ldift
DefaultRoleMapperInit.ldift
XACMLRoleMapperInit.ldift
詳細は、『Oracle Fusion Middleware Oracle WebLogic Server Securityについて』を参照してください。
このディレクトリには、ドメイン内の各Oracle WebLogic Serverインスタンスごとに1つのサブディレクトリが含まれます。サブディレクトリには、各サーバー・インスタンスに固有のデータが格納されます。
このディレクトリには、キャッシュされたデータを格納するディレクトリとファイルがあります。「キャッシュされた」というのは、データが他のデータのコピーであり、場合によっては処理済の形式(コンパイル済、変換済、または再フォーマット済)のコピーであることを意味します。
このディレクトリには、一時的なキャッシュや履歴情報とは対照的に、Oracle WebLogic Serverインスタンスの実行に使用される、永続的なサーバーごとの状態(セキュリティの状態を除く)を保持するファイルが格納されます。このディレクトリのファイルは、Oracle WebLogic Serverインスタンスの起動、停止、クラッシュ、再起動、新しいバージョンへのアップグレードなどの際に保持する必要のある、重要な情報です。
このディレクトリには組込みLDAPデータベースがあります。Oracle WebLogic Serverインスタンスの実行時のセキュリティの状態はこのディレクトリに永続化されます。
このディレクトリにはWebLogic永続ストアが格納されます。各永続ストアごとに、永続ストアを表すファイルを格納するサブディレクトリがあります。サブディレクトリの名前は永続ストアの名前です。通常、default
という名前のストアが1つあります。
このディレクトリにはログと診断情報が保持されます。この情報は事実上、履歴情報です。サーバーの処理に不可欠なものではなく、(少なくとも、Oracle WebLogic Serverインスタンスが停止している間に)削除しても、通常の処理には影響を与えません。ただし、この情報はデバッグや監査の目的には非常に役立つものなので、特に理由がない場合は削除しないでください。
このディレクトリには、WebLogic診断フレームワークのサーバー・イメージ・キャプチャ・コンポーネントによって作成される情報が格納されます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Server診断フレームワークの構成と使い方』を参照してください。
このディレクトリには、Oracle WebLogic Serverインスタンス内の各JMSサーバーごとに1つのサブディレクトリが含まれます。各サブディレクトリには、そのJMSサーバーのログが保存されます。サブディレクトリの名前はJMSサーバーの名前です。
このディレクトリには、Oracle WebLogic Serverインスタンスごとに内容が異なる場合のある、セキュリティ関連のファイルが格納されます。boot.properties
ファイルはここに置かれるファイルの例です。このファイルの内容はサーバーごとに異なるからです。このディレクトリには、SSLキーに関連するファイルも格納されます。
このディレクトリには、サーバー・インスタンスの実行中に作成される一時ディレクトリおよびファイルが格納されます。たとえば、JMSページング・ディレクトリは、他の場所を指定しない限り、自動的にここに作成されます。このディレクトリのファイルは、サーバーの実行中はそのままにしておく必要がありますが、サーバー・インスタンスを停止しているときは、自由に削除できます。
Oracle WebLogic Serverのすべてのインスタンスは、ルート・ディレクトリを使用して、ドメインの構成ファイルの作業用コピーを格納したり、実行時データを格納したり、サーバーの構成内での相対パス名のコンテキストを提供したりします。管理サーバーの場合は、常にドメイン・ディレクトリがルート・ディレクトリとして使用されます。管理対象サーバーの場合は、ドメイン・ディレクトリも使用できますが、ユーザーが定義した他のどのディレクトリでも使用できます。
たとえば、管理サーバーをホストするコンピュータとファイル・システムを共有していない管理対象サーバーを起動した場合は、その管理対象サーバーによって独自のルート・ディレクトリが作成されます。サーバーは、ドメイン・ディレクトリのデータをこのルート・ディレクトリにコピーし、実行時データをこのディレクトリに書き込みます。
サーバー・インスタンスごとにサーバー・ルート・ディレクトリのパスと名前を指定できます。1つのコンピュータ上にホストされる複数のサーバー・インスタンスで共通のサーバー・ルート・ディレクトリを指定することも、サーバーごとに異なるサーバー・ルート・ディレクトリを指定することもできます。ドメインには、1つまたは複数のサーバー・ルート・ディレクトリが存在できます。
サーバー・ルート・ディレクトリのパスは、以下のいずれかの手段で指定できます。
コマンド・ラインからOracle WebLogic Serverインスタンスを起動する場合は、-Dweblogic.RootDirectory=
path
オプションを使用。たとえば、次のコマンドはOracle WebLogic Serverインスタンスを起動し、サーバーのルート・ディレクトリとしてc:\MyServerRootDirectory
を使用します。
java -Dweblogic.RootDirectory=c:\MyServerRootDirectory weblogic.Server
ノード・マネージャを使用してOracle WebLogic Serverインスタンスを起動する場合は、管理コンソールの「環境」、「サーバー」、server_name、「構成」、「サーバーの起動」ページの「ルート・ディレクトリ」属性で、サーバー・ルート・ディレクトリを指定できる。
上記の手段でサーバー・ルート・ディレクトリを指定しない場合、サーバー・ルート・ディレクトリのパスと名前は、サーバー・インスタンスが管理対象サーバーと管理サーバーのどちらであるか、サーバー・インスタンスの起動にノード・マネージャを使用するかどうかによって異なります。以降の節で、それらのバリエーションについて説明します。
管理サーバーは、サーバー・ルート・ディレクトリを、ドメインの構成データ(config.xml
など)とセキュリティ・リソース(デフォルトの組込みLDAPサーバーなど)のリポジトリとして使用します。
管理サーバーのルート・ディレクトリの判別は以下の手順で行われます。
サーバーの起動コマンドに-Dweblogic.RootDirectory=
path
オプションが含まれている場合は、path
の値がサーバー・ルート・ディレクトリになる。
-Dweblogic.RootDirectory=
path
が指定されていない場合は、作業ディレクトリがサーバー・ルート・ディレクトリになる。
config.xml
ファイルが見つからない場合は、新たにディレクトリを作成するかどうかを尋ねるメッセージが表示されます。この方法では、新しいドメインを作成できます。詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverコマンド・リファレンス』の「weblogic.Serverコマンド・ラインを使用したドメインの作成」を参照してください。
ノード・マネージャを使用して管理対象サーバーを起動した場合、ルート・ディレクトリはノード・マネージャ・プロセスをホストするコンピュータ上に置かれます。サーバーのルート・ディレクトリの位置を判断するために、Oracle WebLogic Serverは以下を行います。
管理コンソールの「環境」>「サーバー」>「server-name」>「構成」>「サーバーの起動」ページでルート・ディレクトリを指定した場合、指定したディレクトリがサーバー・ルート・ディレクトリになる。
管理コンソールでルート・ディレクトリを指定していない場合、サーバー・ルート・ディレクトリは次のようになる。
MW_HOME\user_projects\domains\domain-name\servers\managed-server-name
MW_HOME
は、ノード・マネージャのホスト・コンピュータでのOracle WebLogic Serverのインストール・ディレクトリです。
ノード・マネージャを使用せず、java weblogic.Server
コマンドまたはそのコマンドを呼び出すスクリプトを使用して管理対象サーバーを起動した場合、Oracle WebLogic Serverは次のようにルート・ディレクトリを判断します。
サーバーの起動コマンドに-Dweblogic.RootDirectory=
path
オプションが含まれている場合は、path
の値がサーバー・ルート・ディレクトリになる。
-Dweblogic.RootDirectory=
path
が指定されていない場合は、作業(カレント)ディレクトリがルート・ディレクトリになる。たとえば、c:\config\MyManagedServer
からweblogic.Server
コマンドを実行した場合は、c:\config\MyManagedServer
がルート・ディレクトリになります。
Oracle WebLogic Serverソフトウェアがアップグレードされてもドメイン構成とアプリケーションを簡単に維持できるようにするには、サーバー・ルート・ディレクトリをOracle WebLogic Serverソフトウェアのインストール・ディレクトリとは別のディレクトリにします。