この章では、Oracle Fusion Middlewareの主要概念について説明します。この章の内容は次のとおりです。
Oracle Fusion Middlewareには、次の2種類のコンポーネントがあります。
Javaコンポーネント。これは、Oracle Fusion Middlewareのコンポーネントのうち、1つ以上のJava EEアプリケーションおよび一連のリソースとしてデプロイされるものです。Javaコンポーネントは、ドメイン・テンプレートの一部として、Oracle WebLogic Serverドメインにデプロイされます。Javaコンポーネントの例としては、Oracle SOA SuiteおよびOracle WebCenterのコンポーネントがあります。
システム・コンポーネント。これは、管理可能なプロセスのうち、Javaアプリケーションとしてデプロイされていないものです。かわりに、システム・コンポーネントは、Oracle Process Manager and Notification(OPMN)で管理されます。システム・コンポーネントは次のとおりです。
Oracle HTTP Server
Oracle Web Cache
Oracle Internet Directory
Oracle Virtual Directory
Oracle Forms Services
Oracle Reports
Oracle Business Intelligence Discoverer
Oracle Business Intelligence
Javaコンポーネントとシステム・コンポーネントは同格です。
Oracle Fusion Middlewareのインストールおよび構成の終了後、環境に含まれるものは次のとおりです。
Oracle WebLogic Serverドメイン。これには、1つの管理サーバーと1つ以上の管理対象サーバーが含まれています。管理サーバーには、Oracle WebLogic Server管理コンソールおよびOracle Enterprise Manager Fusion Middleware Controlが含まれています。管理対象サーバーには、Oracle WebCenterやOracle SOA Suiteなどのコンポーネントが含まれています。
1つ以上のOracleインスタンス(環境にシステム・コンポーネントが含まれている場合)。
メタデータ・リポジトリ(インストールされたコンポーネントで必要とされる場合)。たとえば、Oracle SOA Suiteにはメタデータ・リポジトリが必要です。
環境にはMiddlewareホームも必要であり、これはOracle WebLogic Serverホーム、および場合によっては1つ以上のOracleホームで構成されています。
図2-1に、Oracle Fusion Middlewareのデプロイメント・トポロジを示します。
図2-1 Oracle Fusion Middlewareエンタープライズ・デプロイメント・アーキテクチャ
図2-1に示すように、このトポロジは複数層アーキテクチャを表しています。ユーザーはクライアント層からシステムにアクセスします。リクエストはハードウェア・ロード・バランサを通過し、そこで、Oracle HTTP Serverが稼働しているWebサーバー・クラスタにルーティングされます。Webサーバーでは、リクエストがWebLogicクラスタにルーティングされます。次に、WebLogicクラスタで稼働しているアプリケーションがデータベース・クラスタと対話して、リクエストに応じます。
インストール後、Oracle Fusion Middlewareの通常の環境に含まれるものは次のとおりです(図2-2)。
1つのOracle WebLogic Serverドメイン。これには、1つの管理サーバーと1つ以上の管理対象サーバーが含まれています。第2.4項「Oracle WebLogic Serverドメインとは」を参照してください。
システム・コンポーネントがインストールされている場合には、Oracleインスタンスに構成されます。第2.4項「Oracleインスタンスとは」を参照してください。
メタデータ・リポジトリ(インストールされたコンポーネントで必要とされる場合)。たとえば、Oracle SOA Suiteにはメタデータ・リポジトリが必要です。第3.2項「Oracleメタデータ・リポジトリ」を参照してください。
Middlewareホーム。これには製品のバイナリ・ファイルが含まれています。第2.6項「Middlewareホームとは」を参照してください。パッチ適用の結果、製品のバイナリ・ファイルが変化することに注意してください。新しいデータソースを構成して作成するのに伴い、製品のバイナリ・ファイルは変化します。
図2-2に、Oracle Fusion Middlewareの環境を示します。この環境は、管理サーバーを含むOracle WebLogic Serverドメイン、2つの管理対象サーバー、およびOracleインスタンスで構成されています。また、この環境にはメタデータ・リポジトリも含まれています。
Oracle WebLogic Serverドメインは、論理的に関連するJavaコンポーネントのグループです。ドメインには、管理サーバーという特殊なOracle WebLogic Serverインスタンスが含まれています。このインスタンスを中心点として、ドメイン内のすべてのリソースの構成および管理が行われます。通常は、追加のドメインを構成して、管理対象サーバーという追加のOracle WebLogic Serverインスタンスを含めます。Webアプリケーション、Enterprise Java Bean(EJB)、WebサービスなどのJavaコンポーネントや他のリソースを管理対象サーバーにデプロイできます。また、管理サーバーは構成と管理のためにのみ使用します。
ドメイン内の管理対象サーバーは、クラスタにグループ化できます。
ドメインのディレクトリ構造とOracle WebLogic Serverホームのディレクトリ構造は別です。場所はどこでもよく、Middlewareホーム・ディレクトリ内にある必要はありません。
ドメインはOracleインスタンスと同格です。どちらにも、Oracleホームの外部に固有の構成があります。
図2-3に、管理サーバー、3つのスタンドアロンの管理対象サーバー、およびクラスタ化された3つの管理対象サーバーで構成されるドメインを示します。
ドメイン構成の詳細は、『Oracle Fusion Middleware Understanding Domain Configuration for Oracle WebLogic Server』を参照してください。
次の各項では、ドメイン内のエンティティについて説明します。
管理サーバーは、ドメイン全体を構成するための中央制御エンティティとして動作します。ここにはドメインの構成ドキュメントが保持され、構成ドキュメントの変更がここから管理対象サーバーに配布されます。管理サーバーが中央の場所となり、そこからドメイン内のリソースがすべて監視されます。
ドメインごとに、管理サーバーとして動作するサーバーが1つ必要です。
管理サーバーと対話するために、Oracle WebLogic Server管理コンソールであるOracle WebLogic Scripting Tool(WLST)を使用するか、または独自のJava Management Extension(JMX)クライアントを作成できます。また、同じタスクを実行するために、Oracle Enterprise Manager Fusion Middleware Control(Fusion Middleware Controlコンソール)を使用することもできます。
Oracle WebLogic Server管理コンソールとFusion Middleware Controlは、管理サーバーで稼働します。Oracle WebLogic Server管理コンソールは、管理サーバーや管理対象サーバーなど、Oracle WebLogic Serverドメイン内のリソースの管理に使用されるWebベースの管理コンソールです。WebベースのFusion Middleware Controlは、Oracle Fusion Middlewareの管理に使用されます。Oracle Fusion Middlewareには、Oracle HTTP ServerやOracle Portalなどのコンポーネントや、Oracle SOA Suite、Oracle WebCenter、Oracle Identity Managementなどの製品スイートが含まれています。
管理対象サーバーでは、ビジネス・アプリケーション、アプリケーション・コンポーネント、Webサービス、およびそれらに関係するリソースがホストされます。パフォーマンスを最適化するために、管理対象サーバーには、ドメインの構成ドキュメントの読取り専用のコピーが保持されます。管理対象サーバーが起動すると、ドメインの管理サーバーに接続して、その構成ドキュメントと管理サーバーに保持されているドキュメントが同期化されます。
ドメインの作成時には、特定のドメイン・テンプレートを使用して作成します。ドメイン・テンプレートには、ドメイン構成に組み込む情報がすべて含まれています。次に、このテンプレートは追加のインストールに使用できます。そのテンプレートでは、Oracle SOA Suiteのような、特定のコンポーネントまたはコンポーネントのグループがサポートされます。ドメイン内の管理対象サーバーは、それらの特定のOracle Fusion Middlewareコンポーネントをホストすることのみを目的として作成されます。
Oracle Fusion MiddlewareのJavaコンポーネント(Oracle SOA Suite、Oracle WebCenter、一部のOracle Identity Managementコンポーネントなど)は、顧客が開発したアプリケーションとともに、ドメイン内の管理対象サーバーにデプロイされます。
管理対象サーバーは、Java Virtual Machine(JVM)のプロセスです。
別のコンポーネントをサポートするテンプレートを使用して作成されたドメインに、Oracle WebCenterなど、他のコンポーネントを追加する場合には、ドメイン内に追加の管理対象サーバーを作成し、追加するコンポーネント用のドメイン・テンプレートを使用して、ドメインを拡張できます。詳細は、Oracle Fusion Middlewareの管理者ガイドの「ドメインの拡張による追加コンポーネントのサポート」を参照してください。
アプリケーションのパフォーマンス、スループットまたは高可用性の向上が要求される本番環境では、クラスタとして動作するように複数の管理対象サーバーを構成できます。クラスタとは、同時に稼働し、協調動作によってスケーラビリティと信頼性の向上を実現する、Oracle WebLogic Serverの複数のサーバー・インスタンスの集合です。クラスタでは、(単一の管理対象サーバーでなく)管理対象サーバーごとに、ほとんどのリソースおよびサービスがまったく同じようにデプロイされるため、フェイルオーバーとロード・バランシングが可能になります。1つのドメインには、複数のOracle WebLogic Serverクラスタが存在していても、クラスタとして構成されていない複数の管理対象サーバーが存在していても構いません。管理対象サーバーがクラスタ化されている場合とされていない場合の重要な違いは、フェイルオーバーとロード・バランシングに対するサポートです。これらの機能は、管理対象サーバーがクラスタ化されている場合にのみ利用できます。
詳細は、『Oracle Fusion Middleware Using Clusters for Oracle WebLogic Server』の「WebLogic Serverのクラスタリングについて」を参照してください。
ノード・マネージャは、Oracle WebLogic Serverとは別のプロセスとして稼働するJavaユーティリティであり、これを使用すると、管理サーバーを基準とした場所に関係なく、管理対象サーバーに対して共通操作を実行できます。ノード・マネージャを使用するかどうかはオプションですが、高可用性を要求するアプリケーションがOracle WebLogic Server環境でホストされている場合には、ノード・マネージャを使用すると重要な利点が得られます。ノード・マネージャでは、次の操作のいくつかが実行されます。
起動
停止
プロセス監視
障害検出
再起動
管理対象サーバーをホストするコンピュータでノード・マネージャを実行する場合には、Fusion Middleware Controlコンソールまたはコマンドラインを使用して、管理対象サーバーをリモートで起動および停止できます。ノード・マネージャでは、予期しない障害が発生した後で、管理対象サーバーを自動的に再起動することもできます。
ノード・マネージャの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverノード・マネージャ管理者ガイド』を参照してください。
Oracleインスタンスには、Oracle Web Cache、Oracle HTTP Server、Oracle Internet Directoryなど、システム・コンポーネントが1つ以上含まれています。Oracleインスタンス内のシステム・コンポーネントは、同じコンピュータ上にある必要があります。Oracleインスタンスのディレクトリには、構成ファイル、ログ・ファイル、一時ファイルなどの更新可能ファイルが含まれています。
Oracleインスタンスは、Oracle WebLogic Serverドメインと同格です。どちらにも、Oracleホームの外部に固有の構成があります。
Oracleインスタンスのディレクトリ構造とOracleホームのディレクトリ構造は別です。場所はどこでもよく、Middlewareホーム・ディレクトリ内にある必要はありません。
Middlewareホームは、Oracle WebLogic Serverホーム、および場合によっては1つ以上のOracleホームで構成されています。
Middlewareホームは、ローカルのファイル・システムか、ネットワーク・ファイル・システム(NFS)を介してアクセスできるリモートの共有ディスクにあります。
WebLogicホームとは、Oracle WebLogic Serverがインストールされているルート・ディレクトリです。WebLogic Serverホームには、WebLogic Serverをホストするために必要なインストール済ファイルが含まれています。WebLogic Serverホーム・ディレクトリはOracleホーム・ディレクトリと同格であり、Middlewareホームのディレクトリ構造内にあります。
WebLogicホーム・ディレクトリには、製品のバイナリ・ファイルのみが含まれています。このファイルはほとんどの場合、パッチ適用とアップグレードのいずれかが行われるまで読取り専用です。
Oracleホームには、特定の製品をホストするために必要なインストール済ファイルが含まれています。たとえば、SOA Oracleホームには、Oracle SOA Suiteのバイナリ・ファイルおよびライブラリ・ファイルで構成されるディレクトリが含まれています。
Oracleホームは、Middlewareホームのディレクトリ構造の中にあります。それぞれのOracleホームには、複数のOracleインスタンスまたはOracle WebLogic Serverドメインを関連付けることができます。
Oracleホーム・ディレクトリには、製品のバイナリ・ファイルのみが含まれています。このファイルはほとんどの場合、パッチ適用とアップグレードのいずれかが行われるまで読取り専用です。
インストール・プロセス中に、様々なディレクトリの場所を指定するように求められます。この項では、それらのディレクトリをそれぞれ定義し、各ディレクトリの内容について説明します。
この項の内容は次のとおりです。
Oracle Fusion Middleware製品すべての最上位ディレクトリはMiddlewareホームと呼ばれます。このディレクトリは、Oracle WebLogic Serverをインストールしたときに作成されます。WebLogicホーム・ディレクトリはMiddlewareホーム内にあり、このディレクトリも、Oracle WebLogic Serverをインストールしたときに作成されます。図2-4に、Oracle WebLogic Serverをインストールした後のディレクトリ構造を示します。
Oracle Fusion Middlewareの各製品は、指定したOracleホームの場所にインストールする必要があります。Oracleホームにソフトウェアのバイナリ・ファイルがインストールされます。このディレクトリに書き込めるランタイム・プロセスはありません。
各製品のOracleホーム・ディレクトリ(この場合はSOA Oracleホーム)は、既存のMiddlewareホーム・ディレクトリ内にある必要があります(図2-5を参照)。
Oracleホーム・ディレクトリは、次の方法で作成できます。
インストールを実行する前に、システムにOracleホーム・ディレクトリを作成できます。Oracleホーム・ディレクトリがMiddlewareホーム・ディレクトリ内にあり、またディレクトリの内容が空である必要があることを忘れないでください。次に、インストーラを実行して、Oracleホームの場所を指定するように求められたら、先ほど作成したディレクトリを指定できます。
インストーラの実行中に、新規ディレクトリの名前を指定できます。このディレクトリは、インストーラによって自動的に作成され、Middlewareホーム・ディレクトリ内に置かれます。
製品は、インストール後にOracle WebLogic Serverドメインに構成できます(第2.4項「Oracle WebLogic Serverドメインとは」を参照)。
ドメイン(この場合はSOAドメイン)を作成するか、または構成すると、「User Projects」ディレクトリが作成されます。デフォルトでは、新規ドメインは「ドメイン」フォルダ内に作成されますが、他の場所に作成することも可能です。
複数の製品をインストールし、製品ごとに別々のドメインを作成することにした場合、ディレクトリ構造は図2-7のようになります。
各製品には、独自のOracleホーム・ディレクトリがあります。すべての製品の間でOracleホーム・ディレクトリを区別するために、インストレーション・ガイドでは通常、各Oracleホームが製品名で参照されています。たとえば、Oracle SOA SuiteのOracleホームはSOA Oracleホーム、Oracle WebCenter SuiteのOracleホームはWebCenter Oracleホームとして参照されています。
1つのコンピュータ上に複数のドメインを作成する場合は、各ドメインの名前を一意にしてください。
複数の製品と複数のドメインの詳細は、次のドキュメントを参照してください。
『Oracle Fusion Middleware Oracle SOA Suiteエンタープライズ・デプロイメント・ガイド』
『Oracle Fusion Middleware Oracle WebCenterエンタープライズ・デプロイメント・ガイド』
『Oracle Fusion Middleware Enterprise Deployment Guide for Oracle Identity Management』
インストール時および構成時には、新しいドメインを作成するかわりに、既存のドメインを拡張できます。ドメインの拡張とは、既存のドメインに製品と機能を追加することです。たとえば、最初にOracle SOA Suiteをインストールして新しいドメインを作成し、次にOracle WebCenter Suiteをインストールするときに、作成したOracle SOA Suiteドメインを拡張することにした場合、トポロジは図2-8のようになります。
図2-8 1つのドメインにOracle Fusion Middleware製品が複数あるディレクトリ構造
実質上、既存のOracle SOA Suiteドメインに、Oracle WebCenter Suiteの製品と機能を追加しています。
図2-9に、2つの製品がインストールされているディレクトリ構造を示します。ここでは、1つの製品(Oracle SOA Suite)は、(Javaコンポーネントで構成されている)Oracle WebLogic Serverドメインに構成され、もう1つの製品(Oracle HTTP ServerとOracle Web Cache)は、(システム・コンポーネントで構成されている)Oracleインスタンスに構成されています。
図2-9 OracleインスタンスとOracle WebLogic Serverドメインのあるディレクトリ構造