2 ドメイン構成ファイル
この章には次の項が含まれます:
- ドメイン構成ファイルの概要
各ドメインの構成は、ドメインの構成ディレクトリに格納されているXMLドキュメントに記述されます。実行時には、ドメイン内の各Oracle WebLogic Serverインスタンスが、このドキュメントに記述された構成のインメモリー表現を作成します。 - ドメイン・ディレクトリの内容
デフォルトで、Oracle WebLogic Serverは、Oracle MiddlewareORACLE_HOME
/user_projects/domains
ディレクトリの下にドメイン・ディレクトリを作成します。ご自身のドメイン・ディレクトリは別の場所に作成することをお薦めします。 - サーバーのルート・ディレクトリ
Oracle WebLogic Serverのすべてのインスタンスは、ルート・ディレクトリを使用して、ドメインの構成ファイルの作業用コピーを格納したり、実行時データを格納したり、サーバーの構成内での相対パス名のコンテキストを提供したりします。
ドメイン構成ファイルの概要
各ドメインの構成は、ドメインの構成ディレクトリに格納されているXMLドキュメントに記述されます。実行時には、ドメイン内の各Oracle WebLogic Serverインスタンスが、このドキュメントに記述された構成のインメモリー表現を作成します。
ノート:
ドメイン・ディレクトリでは、作成後に構成の変更がなくても、ドメインの適切な動作のために書込み権限と読取り権限の両方が必要です。これらの権限が必要なのは、WebLogic Serverが固有の内部デプロイメントを実行し、サーバーの再起動時に構成ファイルが書きなおされる可能性があるためです。
構成以外のファイルをconfig
ディレクトリまたはサブディレクトリに追加しないでください。構成以外のファイルにはログ(.log)ファイルおよびロック(.lck)ファイルなどがあります。管理サーバーでは、すべての管理対象サーバー・インスタンスのconfig
ディレクトリがレプリケートされます。構成以外のファイルをconfig
ディレクトリに格納すると、ドメインでパフォーマンスの問題が引き起こされる可能性があります。
ドメインの中心的な構成ファイルはDOMAIN_NAME
/config/config.xml
です。このファイルには、ドメインの名前と、ドメイン内の各サーバー・インスタンス、クラスタ、リソース、およびサービスの構成が指定されています。ファイルには、DOMAIN_NAME
/config
ディレクトリのサブディレクトリに格納されている追加のXMLファイルへの参照も含まれています。これらの含まれるファイルは、Oracle WebLogic Serverの主要なサブシステムを記述するために使用されます。
Oracle WebLogic Serverのデフォルト値のほとんどは、パフォーマンスを最適化するため、ドメインの構成ファイルには保持されていません。そのため、状況によっては、XML要素が構成ファイルに記述されていない場合もあります。たとえば、ドメインがアクティブな間にドメインのデフォルトのロギング重大度を変更したことがない場合、config.xml
ファイルにはドメインのロギングを構成するXML要素は含まれていません。
さらにパフォーマンスを最適化するため、各管理対象サーバーはドメインの構成ファイルのコピーを保持しています。このコピーは読取り専用で、変更管理プロセスの一部としてのみ更新できます(「構成の変更の管理」を参照)。
構成ドキュメントの編集
ドメインの構成ドキュメントは、ほとんどの状況ではテキスト・エディタなどの非Oracleツールでは編集しないようにしてください。かわりに、WebLogicリモート・コンソール、Fusion Middleware Control (FMWC)、WebLogic Scripting Tool (WLST)、または『Oracle WebLogic Serverの理解』のシステム管理で説明されているいずれかのツールを使用してください。
ただし、Oracle WebLogic Serverの構成ドキュメントはスキーマに準拠したXMLファイルであるため、XSLTまたはXMLパーサー(Apache Xerces、JDOMなど)を使用して編集することも可能です。作成したスクリプトは徹底的にテストし、変更を行う前に必ず各構成ファイルのバックアップ・コピーを作成するようにしてください。
ドメインの構成ドキュメントを定義するスキーマは、次の場所に格納されています。
-
http://xmlns.oracle.com/weblogic/weblogic-diagnostics/2.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 WebLogic Serverコマンド・リファレンスのencryptを参照してください。資格を暗号化したら、config.xml
ファイル内の要素(例2-1)に、暗号化された値を指定します。
例2-1 暗号化された資格の構成
<security-configuration> <credential-encrypted>{AES256}encypted-value-here</credential-encrypted> </security-configuration> <embedded-ldap> <credential-encrypted>{AES256}encypted-value-here</credential-encrypted> </embedded-ldap>
親トピック: ドメイン構成ファイルの概要
構成ファイルのアーカイブ
構成ファイルのバックアップ・コピーを作成するようにOracle WebLogic Serverを構成できます。そうすることで、構成の変更を元に戻す必要がある場合や、万一構成ファイルが破損した場合に、回復しやすくなります。管理サーバーは起動時に、構成ファイルを含むconfig-booted.jar
というJARファイルを保存します。構成ファイルを変更すると、古いファイルはドメイン・ディレクトリの下のconfigArchive
ディレクトリ内で、連続番号の付いた名前のJARファイル(config-1.jar
など)に保存されます。
リモート・コンソールの「環境」→「ドメイン」→「一般」ページの「拡張フィールドの表示」で、アーカイブ・ファイルの保存を構成できます。WLSTを使用してバックアップ・コピーが作成されるようにOracle WebLogic Serverを構成する場合は、例2-2に示すように、DomainMBean
のConfigBackupEnabled
属性をtrue
に設定し、保持する構成アーカイブ・ファイルの数をArchiveConfigurationCount
属性に指定します。
例2-2 アーカイブ・ファイルの構成
connect() edit() startEdit() cmo.setArchiveConfigurationCount(5) cmo.setConfigBackupEnabled(true) activate()
親トピック: ドメイン構成ファイルの概要
ドメイン・ディレクトリの内容
デフォルトで、Oracle WebLogic Serverは、Oracle Middleware ORACLE_HOME
/user_projects/domains
ディレクトリの下にドメイン・ディレクトリを作成します。ご自身のドメイン・ディレクトリは別の場所に作成することをお薦めします。
ドメイン・ディレクトリには、ドメイン内の個別のアプリケーションによって作成されたファイルやディレクトリが格納される場合もあります。
次の項では、ドメイン・ディレクトリとサブフォルダの内容について説明します。ここでは、ユーザーがドメイン作成時に定義する名前を、domain-name
、deployment-name
、server-name
のように表記します。
- domain-name
- autodeploy
- bin
- config
- config/configCache
- config/diagnostics
- config/jdbc
- config/jms
- config/lib
- config/nodemanager
- config/security
- configArchive
- init-info
- lib
- pending
- security
- servers
- servers/server-name
- servers/server-name/cache
- servers/server-name/cache/EJBCompilerCache
- servers/server-name/data
- servers/server-name/data/ldap
- servers/server-name/data/store
- servers/server-name/logs
- servers/server-name/logs/diagnostic_images
- servers/server-name/logs/jmsServers
- servers/server-name/security
- servers/server-name/tmp
- tmp
親トピック: ドメイン構成ファイル
autodeploy
このディレクトリは、開発サーバーでアプリケーションを素早くデプロイする方法を提供します。Oracle WebLogic Serverインスタンスが開発モードで実行中の場合、このディレクトリに配置したアプリケーションまたはモジュールはWebLogic Serverインスタンスによって自動的にデプロイされます。
このディレクトリに配置するファイルは、次のようなJakarta EEアプリケーションです:
-
EARファイル
-
WAR、EJB JAR、RAR、またはCARアーカイブ・モジュール
-
アプリケーションまたはモジュールの展開されたアーカイブ・ディレクトリ
親トピック: ドメイン・ディレクトリの内容
bin
このディレクトリには、ドメインの管理サーバーと管理対象サーバーの起動および停止処理に使用されるスクリプトが含まれています。これらのスクリプトは、UNIX用に.sh
ファイルが、Windows用に.cmd
ファイルが用意されています。bin
ディレクトリは、データベース管理システム、フルテキスト検索エンジン・プロセスなどを起動および停止するスクリプトなどのドメイン全体を対象とする他のスクリプトをオプションで含むことができます。『Oracle WebLogic Serverサーバーの起動と停止の管理』を参照してください。
親トピック: ドメイン・ディレクトリの内容
config
このディレクトリには、ドメインの現在の構成とデプロイメントの状態が含まれています。中心的なドメイン構成ファイルのconfig.xml
はこのディレクトリに格納されます。
親トピック: ドメイン・ディレクトリの内容
config/configCache
ドメインの構成ドキュメントへの変更を検証する際に、パフォーマンスの最適化に使用するデータが格納されます。これらはOracle WebLogic Serverの内部データであるため、バックアップする必要はありません。
親トピック: ドメイン・ディレクトリの内容
config/diagnostics
このディレクトリには、WebLogic診断フレームワークのインストゥルメンテーションのシステム・モジュールがあります。『Oracle WebLogic Server診断フレームワークの構成と使用』を参照してください。
親トピック: ドメイン・ディレクトリの内容
config/jdbc
このディレクトリには、JDBCのシステム・モジュール、つまり、(JSR-88とは異なり)JMXから直接構成できる、グローバルなJDBCモジュールが含まれます。Oracle WebLogic Serverのデータベース接続に関する説明を参照してください。
親トピック: ドメイン・ディレクトリの内容
config/jms
このディレクトリには、JMSのシステム・モジュール、つまり、(JSR-88とは異なり)JMXから直接構成できる、グローバルなJMSモジュールが含まれます。「Oracle WebLogic Serverメッセージング」を参照してください。
親トピック: ドメイン・ディレクトリの内容
config/nodemanager
このディレクトリには、ノード・マネージャとの接続に関する情報が保持されます。『Oracle WebLogic Serverノード・マネージャの管理』のノード・マネージャの構成ファイルとログ・ファイルに関するを参照してください。
親トピック: ドメイン・ディレクトリの内容
config/security
このディレクトリには、セキュリティ・フレームワークのシステム・モジュールが含まれます。ドメインの現在のレルムにあるセキュリティ・プロバイダの種類ごとに1つの、セキュリティ・プロバイダの構成拡張が格納されます。『Oracle WebLogic Serverセキュリティの理解』を参照してください。
親トピック: ドメイン・ディレクトリの内容
configArchive
このディレクトリには、ドメインの構成の状態を保存したJARファイルのセットが格納されます。構成の保留中の変更内容がアクティブ化される直前に、config.xml
ファイルと他の関連する構成ファイルからなるドメインの既存の構成の状態が、config-1.jar
、config-2.jar
のような名前のバージョン付きのJARファイルに保存されます。
保存するバージョン付きJARファイルの最大数は、DomainMBean
のarchiveConfigurationCount
属性で指定します。この最大数に達すると、新しいアーカイブが作成される前に、最も古い変換アーカイブが削除されます。
親トピック: ドメイン・ディレクトリの内容
init-info
このディレクトリには、WebLogicドメインのプロビジョニングに使用されるファイルがあります。このディレクトリのファイルは変更しないでください。
親トピック: ドメイン・ディレクトリの内容
lib
このディレクトリに配置されているJARファイルは、ドメイン内のWebLogic Serverインスタンスで実行しているすべてのJakarta EEアプリケーションで(別のシステム・レベル・クラス・ローダー内で)使用できるようになります。『Oracle WebLogic Serverアプリケーションの開発』のドメイン/lib
ディレクトリへのJARの追加に関する項を参照してください。
親トピック: ドメイン・ディレクトリの内容
pending
このディレクトリには、要求されてまだアクティブ化されていない構成の変更を表すドメイン構成ファイルが格納されます。構成の変更がアクティブ化されると、構成ファイルはこのディレクトリから削除されます。「構成の変更の管理」を参照してください。
親トピック: ドメイン・ディレクトリの内容
security
このディレクトリには、ドメイン内のどのOracle WebLogic Serverインスタンスの場合でも、以下のセキュリティ関連のファイルが格納されます。
-
SerializedSystemIni.dat
また、ドメインの管理サーバーだけで必要になる、以下のセキュリティ関連ファイルも格納されます。
-
DefaultAuthorizerInit.ldift
-
DefaultAuthenticatorInit.ldift
-
DefaultRoleMapperInit.ldift
-
XACMLRoleMapperInit.ldift
『Oracle WebLogic Serverセキュリティの理解』を参照してください。
親トピック: ドメイン・ディレクトリの内容
servers
このディレクトリには、ドメイン内の各Oracle WebLogic Serverインスタンスごとに1つのサブディレクトリが含まれます。サブディレクトリには、各サーバー・インスタンスに固有のデータが格納されます。
サーバーの命名規則の詳細は、ドメイン名とサーバー名の制限を参照してください。
親トピック: ドメイン・ディレクトリの内容
servers/server-name
このディレクトリは、ディレクトリと同じ名前のOracle WebLogic Serverインスタンスのサーバー・ディレクトリです。名前は、ドメイン名およびサーバー名の制限の原則に従う必要があります。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/cache
このディレクトリには、キャッシュされたデータを格納するディレクトリとファイルがあります。「キャッシュされた」というのは、データが他のデータのコピーであり、場合によっては処理済の形式(コンパイル済、変換済、または再フォーマット済)のコピーであることを意味します。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/data
このディレクトリには、一時的なキャッシュや履歴情報とは対照的に、Oracle WebLogic Serverインスタンスの実行に使用される、永続的なサーバーごとの状態(セキュリティの状態を除く)を保持するファイルが格納されます。このディレクトリのファイルは、Oracle WebLogic Serverインスタンスの起動、停止、クラッシュ、再起動、新しいバージョンへのアップグレードなどの際に保持する必要のある、重要な情報です。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/data/ldap
このディレクトリには組込みLDAPデータベースがあります。Oracle WebLogic Serverインスタンスの実行時のセキュリティの状態はこのディレクトリに永続化されます。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/data/store
このディレクトリにはWebLogic永続ストアが格納されます。各永続ストアごとに、永続ストアを表すファイルを格納するサブディレクトリがあります。サブディレクトリの名前は永続ストアの名前です。通常、default
という名前のストアが1つあります。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/logs
このディレクトリにはログと診断情報が保持されます。この情報は事実上、履歴情報です。サーバーの処理に不可欠なものではなく、(少なくとも、Oracle WebLogic Serverインスタンスが停止している間に)削除しても、通常の処理には影響を与えません。ただし、この情報はデバッグや監査の目的には非常に役立つものなので、特に理由がない場合は削除しないでください。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/logs/diagnostic_images
このディレクトリには、WebLogic診断フレームワークのサーバー・イメージ・キャプチャ・コンポーネントによって作成される情報が格納されます。『Oracle WebLogic Server診断フレームワークの構成と使用』を参照してください。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/logs/jmsServers
このディレクトリには、Oracle WebLogic Serverインスタンス内の各JMSサーバーごとに1つのサブディレクトリが含まれます。各サブディレクトリには、そのJMSサーバーのログが保存されます。サブディレクトリの名前はJMSサーバーの名前です。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/security
このディレクトリには、Oracle WebLogic Serverインスタンスごとに内容が異なる場合のある、セキュリティ関連のファイルが格納されます。boot.properties
ファイルはここに置かれるファイルの例です。このファイルの内容はサーバーごとに異なるからです。このディレクトリには、SSLキーに関連するファイルも格納されます。
親トピック: ドメイン・ディレクトリの内容
servers/server-name/tmp
このディレクトリには、サーバー・インスタンスの実行中に作成される一時ディレクトリおよびファイルが格納されます。たとえば、JMSページング・ディレクトリは、他の場所を指定しない限り、自動的にここに作成されます。このディレクトリのファイルは、サーバーの実行中はそのままにしておく必要がありますが、サーバー・インスタンスを停止しているときは、自由に削除できます。
親トピック: ドメイン・ディレクトリの内容
サーバーのルート・ディレクトリ
Oracle WebLogic Serverのすべてのインスタンスは、ルート・ディレクトリを使用して、ドメインの構成ファイルの作業用コピーを格納したり、実行時データを格納したり、サーバーの構成内での相対パス名のコンテキストを提供したりします。
管理サーバーの場合は、常にドメイン・ディレクトリがルート・ディレクトリとして使用されます。管理対象サーバーの場合は、ドメイン・ディレクトリも使用できますが、ユーザーが定義した他のどのディレクトリでも使用できます。
たとえば、管理サーバーをホストするコンピュータとファイル・システムを共有していない管理対象サーバーを起動した場合は、その管理対象サーバーによって独自のルート・ディレクトリが作成されます。サーバーは、ドメイン・ディレクトリのデータをこのルート・ディレクトリにコピーし、実行時データをこのディレクトリに書き込みます。
ノート:
ドメイン・ディレクトリの外にあるディレクトリに管理対象サーバー・インスタンスを作成するには、-managed=true
オプションを指定したpack
コマンド、または構成ウィザードを使用することをお薦めします。ただし、ドメイン・ディレクトリの外の空のディレクトリに手動で管理対象サーバーを作成する場合は、最初にsecurity
ディレクトリおよびその内容を、管理サーバー・ディレクトリからその管理対象サーバー・ディレクトリにコピーする必要があります。
サーバー・インスタンスごとにサーバー・ルート・ディレクトリのパスと名前を指定できます。1つのコンピュータ上にホストされる複数のサーバー・インスタンスで共通のサーバー・ルート・ディレクトリを指定することも、サーバーごとに異なるサーバー・ルート・ディレクトリを指定することもできます。ドメインには、1つまたは複数のサーバー・ルート・ディレクトリが存在します。
- サーバー・ルート・ディレクトリの指定
- 管理サーバーのサーバー・ルート・ディレクトリ
- ノード・マネージャで起動した管理対象サーバーのサーバー・ルート・ディレクトリ
- ノード・マネージャで起動されていない管理対象サーバーのサーバー・ルート・ディレクトリ
親トピック: ドメイン構成ファイル
サーバー・ルート・ディレクトリの指定
サーバー・ルート・ディレクトリのパスは、以下のいずれかの手段で指定できます。
-
コマンド行からOracle WebLogic Serverインスタンスを起動する場合は、
-Dweblogic.RootDirectory=
path
オプションを使用します。たとえば、次のコマンドはOracle WebLogic Serverインスタンスを起動し、サーバーのルート・ディレクトリとしてc:\MyServerRootDirectory
を使用します。java -Dweblogic.RootDirectory=c:\MyServerRootDirectory weblogic.Server
-
ノード・マネージャを使用してOracle WebLogic Serverインスタンスを起動する場合は、WebLogicリモート・コンソールの「環境」→「サーバー」→「myServer」→「拡張」→「ノード・マネージャ」ページで、「ルート・ディレクトリ」属性を使用してサーバー・ルート・ディレクトリを指定できます。詳細は、Oracle WebLogicリモート・コンソール・オンライン・ヘルプの管理対象サーバーの起動引数の構成を参照してください。
上記の手段でサーバー・ルート・ディレクトリを指定しない場合、サーバー・ルート・ディレクトリのパスと名前は、サーバー・インスタンスが管理対象サーバーと管理サーバーのどちらであるか、サーバー・インスタンスの起動にノード・マネージャを使用するかどうかによって異なります。以降の節で、それらのバリエーションについて説明します。
親トピック: サーバーのルート・ディレクトリ
管理サーバーのサーバー・ルート・ディレクトリ
管理サーバーは、サーバー・ルート・ディレクトリを、ドメインの構成データ(config.xml
など)とセキュリティ・リソース(デフォルトの組込みLDAPサーバーなど)のリポジトリとして使用します。
管理サーバーのルート・ディレクトリの判別は以下の手順で行われます。
-
サーバーの起動コマンドに
-Dweblogic.RootDirectory=
path
オプションが含まれている場合は、path
の値がサーバー・ルート・ディレクトリになります。 -
-Dweblogic.RootDirectory=
path
が指定されていない場合は、作業ディレクトリがサーバー・ルート・ディレクトリになります。
config.xml
ファイルが見つからない場合は、新たにディレクトリを作成するかどうかを尋ねるメッセージが表示されます。この方法では、新しいドメインを作成できます。『Oracle WebLogic Serverコマンド・リファレンス』のweblogic.Serverコマンド行を使用したドメインの作成に関する項を参照してください。
親トピック: サーバーのルート・ディレクトリ
ノード・マネージャで起動した管理対象サーバーのサーバー・ルート・ディレクトリ
ノード・マネージャを使用して管理対象サーバーを起動した場合、ルート・ディレクトリはノード・マネージャ・プロセスをホストするコンピュータ上に置かれます。サーバーのルート・ディレクトリの位置を判断するために、Oracle WebLogic Serverは以下を行います。
-
WebLogicリモート・コンソールの「環境」→「サーバー」→「myServer」→「拡張」→「ノード・マネージャ」ページでルート・ディレクトリを指定した場合、指定したディレクトリがサーバー・ルート・ディレクトリになります。
-
WebLogicリモート・コンソールでルート・ディレクトリを指定していない場合、サーバー・ルート・ディレクトリは次のようになります:
ORACLE_HOME
\user_projects\domains\domain-name\servers\managed-server-name
ORACLE_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ソフトウェアのインストール・ディレクトリとは別のディレクトリにします。
親トピック: サーバーのルート・ディレクトリ