4 Oracle SOA Suiteドメインの構成

Oracle SOA Suiteをインストールすると、ドメインを構成できます。これは、高可用性になるように拡張することもできます。

ここで示される構成ステップでは、次に説明するインストール・ステップを完了していることが前提になります。

次の項を参照して、データベース・スキーマの作成、WebLogicドメインの構成および構成の検証を行います。

データベース・スキーマの作成

Oracle SOA SuiteおよびOracle Business Process Managementドメインを構成する前に、このリリースのOracle Fusion Middlewareで使用する動作保証済のデータベースに必要なスキーマをインストールしておく必要があります。

動作保証されたデータベースのインストールと構成

データベース・スキーマを作成する前に、動作保証されたデータベースをインストールおよび構成し、データベースが起動されて稼働していることを確認しておく必要があります。

リポジトリ作成ユーティリティの起動

動作保証されたJDKがシステムにインストールされていることを確認してから、リポジトリ作成ユーティリティ(RCU)を起動します。

RCUを起動するには、次のようにします。

  1. コマンドラインからjava -versionを実行して、動作保証されたJDKがすでにシステムにあることを確認します。12c (12.2.1.3.0)では、動作保証されたJDKは1.8.0_131以降です。
  2. JAVA_HOME環境変数が、動作保証済JDKの場所に設定されていることを確認します。たとえば:
    • (UNIX) setenv JAVA_HOME /home/Oracle/Java/jdk1.8.0_131
    • (Windows) set JAVA_HOME=C:\home\Oracle\Java\jdk1.8.0_131
  3. 次のディレクトリに変更します。
    • (UNIX) ORACLE_HOME/oracle_common/bin
    • (Windows) ORACLE_HOME\oracle_common\bin
  4. 次のコマンドを入力します。
    • (UNIX) ./rcu
    • (Windows) rcu.bat

「リポジトリ作成ユーティリティ」画面をナビゲートしてスキーマを作成

必要な情報をRCU画面に入力して、データベース・スキーマを作成します。

RCUの概要

「ようこそ」画面は、RCUを起動したとき最初に表示される画面です。

「次へ」をクリックします。

スキーマ作成の方法の選択

「リポジトリの作成」画面を使用して、コンポーネント・スキーマをデータベースに作成およびロードする方法を選択します。

「リポジトリの作成」画面では、次の操作を実行します。
  • データベースでDBAアクティビティを実行するために必要な権限を持っている場合は、「システム・ロードおよび製品ロード」を選択します。この手順は、SYSDBA権限があることを前提としています。

  • データベースでDBAアクティビティを実行するために必要な権限を持っていない場合は、この画面で「システム・ロードに対するスクリプトの準備」を選択する必要があります。このオプションによってSQLスクリプトが生成され、それをデータベース管理者が使用します。リポジトリ作成ユーティリティによるスキーマの作成システム・ロードと製品ロードについてを参照してください。

  • DBAがすでにシステム・ロードに対するSQLスクリプトを実行している場合は、「製品ロードの実行」を選択します。

データベース接続の詳細の指定

「データベース接続の詳細」画面に、データベースに接続するためのRCUに関するデータベース接続の詳細が表示されます。

ノート:

データベースのサービス名が不明な場合は、データベースの初期化パラメータ・ファイル内のSERVICE_NAMESパラメータから取得できます。初期化パラメータ・ファイルにSERVICE_NAMESパラメータが含まれていない場合、サービス名はDB_NAMEDB_DOMAINパラメータに指定されているグローバル・データベース名と同じです。

たとえば:

  • データベース・タイプ: Oracle Database
  • 接続文字列の書式: 接続パラメータまたは接続文字列
  • 接続文字列: examplehost.exampledomain.com:1521:Orcl.exampledomain.com
  • ホスト名: examplehost.exampledomain.com
  • ポート: 1521
  • サービス名: Orcl.exampledomain.com
  • ユーザー名: sys
  • パスワード: ******
  • ロール: SYSDBA

「次へ」をクリックして続行し、データベースへの接続が成功したことを通知するダイアログ・ウィンドウで「OK」をクリックします。

カスタム接頭辞の指定とスキーマの選択

「コンポーネントの選択」画面で、カスタム接頭辞を指定して、製品データベース・スキーマを選択します。

「新規接頭辞の作成」を選択し、カスタム接頭辞を指定して、「SOAスイート」スキーマを選択します。これにより、自動的に「SOAインフラストラクチャ」が選択され、同時に次のスキーマが依存関係として選択されます。

  • ユーザー・メッセージング・サービス

  • メタデータ・サービス

  • WebLogicサービス

  • Oracle Platform Security Services

  • 監査サービス

  • 監査サービスへの追加

  • 監査サービス・ビューア

ヒント:

ここで入力したカスタム接頭辞は、後でドメイン作成プロセスで必要になるため、ノートにとっておいてください。

共通インフラストラクチャ・サービスと呼ばれるスキーマも自動的に作成されますが、このスキーマはグレー表示されます(選択や選択解除はできません)。このスキーマを使用すると、ドメインの構成中にRCUから情報を取得できるようになります。『リポジトリ作成ユーティリティによるスキーマの作成』サービス表スキーマの理解に関する項を参照してください。

カスタム接頭辞は、これらのスキーマをこのドメイン内でのみ使用するように論理的にグループ化するものであり、複数のドメイン間でのスキーマの共有はサポートされていないため、ドメインごとに固有のスキーマ・セットを作成する必要があります。

関連項目:

『リポジトリ作成ユーティリティによるスキーマの作成』の次のトピックを参照してください。

「次へ」をクリックして先に進み、スキーマ作成の前提条件チェックが成功したことを確認するには「OK」をクリックします。

スキーマ・パスワードの指定

「スキーマ・パスワード」画面で、データベースでのスキーマ・パスワードの設定方法を指定した後、パスワードを入力して確認します。

この画面で設定するパスワードは、ノートにとっておく必要があります。このパスワードは、後述するドメイン作成のプロセスで必要になります。

カスタム変数の指定

「カスタム変数」画面で、SOAインフラストラクチャ・スキーマのカスタム変数を指定します。

Oracle SOA Suiteの標準インストール・トポロジでは、データベース・プロファイル(Small)とHealthcare Integration (No)の両方のデフォルト値が受け入れられます。

「SOA Suiteスキーマに必要なカスタム変数について」を参照してください。

この画面に示されるオプションの詳細は、『リポジトリ作成ユーティリティによるスキーマの作成』カスタム変数に関する項を参照してください。

スキーマの作成の完了

残りのRCU画面を最後までナビゲートし、スキーマ作成を完了します。

RCUを起動したときに、データベース(OracleまたはOracle EBR)で「透過的データ暗号化」(TDE)を使用可能にした場合のみ、「表領域のマップ」画面に「表領域の暗号化」チェック・ボックスが表示されます。RCUによって作成されるすべての新しい表領域を暗号化する場合は、「表領域の暗号化」チェック・ボックスを選択します。

「完了サマリー」画面に到達したら、「閉じる」をクリックしてRCUを終了します。

ドメインの構成

構成ウィザードを使用して、ドメインを作成および構成します。

ドメインを作成するその他の方法の詳細は、『構成ウィザードによるWebLogicドメインの作成』WebLogicドメインの作成、拡張および管理のためのその他のツールに関する項を参照してください。

構成ウィザードの起動

構成ウィザードを起動して、ドメインの構成を開始します。

構成ウィザードを起動するには:

  1. 次のディレクトリに変更します。

    (UNIX) ORACLE_HOME/oracle_common/common/bin

    (Windows) ORACLE_HOME\oracle_common\common\bin

    ここでORACLE_HOMEは、12c (12.2.1.3.0) Oracleホームになります。

  2. 次のコマンドを入力します。

    (UNIX) ./config.sh

    (Windows) config.cmd

ドメインを作成および構成するための構成ウィザード画面のナビゲート

構成ウィザードの画面に必要な情報を入力して、トポロジのドメインを作成および構成します。

ノート:

この手順を使用して既存のドメインを拡張できます。この手順の説明では要件が満たされない場合は、その要件に応じた選択を行うか、サポート・ドキュメントで詳細を参照してください。

ドメイン・タイプとドメイン・ホームの場所の選択

「構成タイプ」画面を使用して、ドメイン・ホーム・ディレクトリの場所(Oracleホーム・ディレクトリの外部が最適)を選択する必要があります。

ドメイン・ホームの場所は、Oracle Fusion Middlewareの理解Oracle Fusion Middlewareの主要ディレクトリのディレクトリ構造に従って、Oracleホーム・ディレクトリの外に配置することをお薦めします。このディレクトリ構造は、ソフトウェアのアップグレードや再インストールが必要になった場合に問題が発生しないようにするのに役立ちます。

ドメイン・タイプおよびドメインのホーム・ディレクトリを指定するには:

  1. 「構成タイプ」画面で、「新規ドメインの作成」を選択します。
  2. 「ドメインの場所」フィールドで、使用するドメイン・ホーム・ディレクトリを指定します。

この画面の詳細は、『構成ウィザードによるWebLogicドメインの作成』構成タイプに関する項を参照してください。

Oracle SOA Suiteの構成テンプレートの選択

「テンプレート」画面で、必要なテンプレートを選択します。

「テンプレート」画面で、「製品テンプレートを使用してドメインを作成」が選択されていることを確認し、次のテンプレートを選択します。

  • Oracle SOA Suite - 12.2.1.3.0 [soa]

    このテンプレートを選択すると、次の項目が依存関係として自動的に選択されます。

    • Oracle Enterprise Manager

    • Oracle WSMポリシー・マネージャ

    • Oracle JRF

    • WebLogic Coherenceクラスタ拡張

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成テンプレートを参照してください。

高可用性オプションの構成

この画面を使用して、高可用性に影響するサービス移行および永続設定を構成します。自動サービス移行、永続ストアまたは両方を使用するクラスタおよび構成ウィザードを使用してドメインに追加し、選択したHAオプションを自動的に適用するすべての後続のクラスタを作成する場合、この画面が最初に表示されます。

自動サービス移行の有効化

「自動サービス移行の有効化」を選択して、固定サービスをフェイルオーバー用の正常な管理対象サーバーに自動的に移行できます。自動サービス移行およびクラスタ・リースに必要である移行可能なターゲット定義を構成します。これらのクラスタ・リース・オプションのいずれかを選択します。

  • データベース・リース - 管理対象サーバーは、リーシングに有効なJDBCシステム・リソースの表を使用します。自動移行データ・ソースに有効なJDBCシステム・リソースがある必要があります。このオプションを選択する場合、移行基準がデータベースに構成され、自動移行のデータ・ソースも構成ウィザードで自動的に構成されます。Oracle RACなどの高可用性データベースを使用してリース情報を管理する場合は、「高可用性データベース・リース」のステップに従って、サーバーの移行に使用するデータベースを構成します。

  • コンセンサス・リーシング - 管理対象サーバーはメモリー内にリーシング情報を保持します。ノード・マネージャを使用して、クラスタの管理対象サーバーを制御します。(また、移行可能な(または移行可能対象をホストできる)すべてのサーバーにノード・マネージャを関連付ける必要があります。)このオプションを選択する場合、構成ウィザードで移行基準をコンセンサスに構成します。

リーシングの詳細は、「リーシング」を参照してください。

自動サービス移行の詳細は、「サービス移行」を参照してください。

JTAトランザクション・ログ永続性

この項には、2つのオプション(「デフォルト永続ストア」および「JDBC TLOGストア」)があります。
  • デフォルト永続ストア - デフォルトのファイル・ストアのサーバーのJTAトランザクション・ログ・ストアを構成します。

  • JDBC TLogストア - JDBCストアのサーバーのJTAトランザクション・ログ・ストアを構成します。

JDBC TLogストアを選択することをお薦めします。構成を完了すると、JDBC永続ストアがトランザクション・ログに設定されるクラスタが用意されます。

永続ストアおよびTLOGストアの詳細は、『Oracle WebLogic Server JTAアプリケーションの開発』の次のトピックを参照してください。

JMSサービス永続性

永続的なJMSストアは、永続メッセージ・データと恒久サブスクライバを格納するための物理的なリポジトリです。ディスクベースのファイル・ストアにも、JDBC対応データベースにもなります。メモリーを消費した場合のディスクへのメッセージのページングには、JMSファイル・ストアを使用できます。

  • JMSファイル・ストア - JMSファイル・ストアを使用するコンポーネントを構成します。このオプションを選択する場合、「拡張構成」画面の「ファイル・ストア」オプションを選択して、必要に応じて設定を変更できます。「ファイル・ストア」画面で、ファイル・ストア名、ディレクトリおよび同期書込みポリシーを設定できます。

  • JMS JDBCストア - すべてのJMSサーバーのJDBCストアを使用するコンポーネントを構成します。構成を完了すると、クラスタが用意され、JDBC永続ストアがJMSサーバーに構成されます。

アプリケーション・ホームの場所の選択

「アプリケーションの場所」画面を使用して、ドメインに関連付けられたアプリケーションの格納場所(アプリケーション・ホーム・ディレクトリとも呼ばれる)を選択します。

アプリケーション・ホームの場所は、Oracle Fusion Middlewareの理解Oracle Fusion Middlewareの主要ディレクトリのディレクトリ構造に従って、Oracleホーム・ディレクトリの外に配置することをお薦めします。このディレクトリ構造は、ソフトウェアのアップグレードや再インストールが必要になった場合に問題が発生しないようにするのに役立ちます。

アプリケーション・ホーム・ディレクトリの詳細は、アプリケーション・ホーム・ディレクトリについてを参照してください。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成アプリケーションの場所を参照してください。

管理者アカウントの構成

「管理者アカウント」画面では、ドメインに対するデフォルトのWebLogic管理者アカウントのユーザー名とパスワードを指定します。

この画面に入力するユーザー名とパスワードは、ノートにとっておいてください。これらの資格証明は、このドメインの管理サーバーの起動とそのサーバーへの接続で、後で必要になります。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成の管理者アカウントを参照してください。

ドメイン・モードとJDKの指定

「ドメイン・モードおよびJDK」画面を使用して、ドメイン・モードおよびJava Development Kit (JDK)を指定します。

「ドメイン・モードおよびJDK」画面では、次の操作を実行します。

  • 「ドメイン・モード」フィールドで、「本番」を選択します。

  • 「JDK」フィールドで、Oracle HotSpot JDKを選択します。

この画面の詳細は、『Oracle Fusion Middleware構成ウィザードによるWebLogicドメインの作成』ドメイン・モードとJDK に関する項を参照してください。
データベース構成タイプの指定

「データベース構成タイプ」画面を使用して、データベースとデータベース・スキーマの詳細を指定します。

「データベース構成タイプ」画面で、「RCUデータ」を選択します。このオプションでは、構成ウィザードに対して、データベースおよびサービス表(STB)スキーマに接続し、ドメインの構成に必要なスキーマのスキーマ情報を自動的に取得するように指示します。

ノート:

この画面で「手動構成」を選択した場合は、次の画面でスキーマのパラメータを手動で入力する必要があります。

「RCUデータ」を選択した後、次のフィールドで詳細を指定します。

フィールド 説明

DBMS/サービス

データベースのDBMS名(サービス・タイプ・ドライバを選択している場合はサービス名)を入力します。

例: orcl.exampledomain.com

ホスト名

データベースをホストするサーバーの名前を入力します。

例: examplehost.exampledomain.com

ポート

データベースがリスニングするポート番号を入力します。

例: 1521

スキーマ所有者

スキーマ・パスワード

データベースのサービス表スキーマに接続するためのユーザー名とパスワードを入力します。これは、RCUの「スキーマ・パスワード」画面でサービス表コンポーネントに入力したスキーマ・ユーザー名とパスワードです(「スキーマのパスワードの指定」を参照)。

デフォルトのユーザー名はprefix_STBです。prefixは、RCUで定義したカスタム接頭辞です。

データベース接続情報の指定を完了したら、「RCU構成の取得」をクリックします。「接続結果ログ」の次の出力は、操作が成功したことを示しています。

Connecting to the database server...OK
Retrieving schema data from database server...OK
Binding local schema components with retrieved data...OK

Successfully Done.

RCUの実行時にインストールされるスキーマの詳細は、リポジトリ作成ユーティリティによるスキーマの作成サービス表スキーマについてを参照してください。

『構成ウィザードによるWebLogicドメインの作成』データベース構成タイプに関する項を参照してください。

JDBCコンポーネント・スキーマ情報の指定

「JDBCコンポーネント・スキーマ」画面を使用して、データベース・スキーマの詳細を確認または指定します。

「JDBCコンポーネント・スキーマ」画面に移入された値が、すべてのスキーマに対して適切であることを確認します。前の画面で「RCUデータ」を選択した場合、スキーマ表はすでに適切に移入されている必要があります。

高可用性環境の場合は、Oracle RACデータベースのデータ・ソース構成に関する追加情報について、『高可用性ガイド』の次の項を参照してください。

この画面の詳細は、『構成ウィザードによるWebLogicドメインの作成』JDBCコンポーネント・スキーマに関する項を参照してください。

JDBC接続のテスト

「JDBCコンポーネント・スキーマ・テスト」画面を使用して、データ・ソース接続をテストします。

「ステータス」列に示される緑色のチェック・マークは、テストが成功したことを表します。問題が発生した場合は、この画面の「接続結果ログ」セクションに示されるエラー・メッセージを確認し、問題を修正してから接続テストを再試行してください。

デフォルトでは、スキーマの作成時に指定したパスワードが、各スキーマ・コンポーネントのスキーマ・パスワードです。スキーマ・コンポーネントに応じて異なるパスワードを使用する場合は、各行の「スキーマ・パスワード」列に使用するパスワードを入力して、前の画面(JDBCコンポーネント・スキーマ)で手動で編集します。パスワードを指定した後、パスワードを変更したスキーマに対応するチェック・ボックスを選択し、再度接続をテストします。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成JDBCコンポーネント・スキーマ・テストを参照してください。

拡張構成の選択

「拡張構成」画面を使用して、ドメイン構成を完了します。

「拡張構成」画面で、次を選択します。

  • 管理サーバー

    管理サーバーのリスニング・アドレスを適切に構成するために必要です。

  • ノード・マネージャ

    ノード・マネージャを構成するために必要です。

  • トポロジ

    Oracle SOA Suite管理対象サーバーを構成するために必要です。

必要に応じてオプションで、目的のインストール環境で使用可能な他のオプションを選択します。このガイドのステップでは、標準インストール・トポロジを説明していますが、別のパスに従うこともできます。インストール要件がこのガイドの範囲外の追加オプションにも拡大している場合は、それらのオプションを構成するための追加の画面が表示される場合があります。構成ウィザードのすべての画面の詳細は、構成ウィザードによるWebLogicドメインの作成構成ウィザードの画面を参照してください。

管理サーバーのリスニング・アドレスの構成

「管理サーバー」画面を使用して、ホストのIPアドレスを選択します。

「リスニング・アドレス」の横にあるドロップダウン・リストを選択し、管理サーバーが存在するホストのIPアドレスを選択するか、単一のIPアドレスにマップされたシステム名またはDNS名を使用します。「すべてのローカル・アドレス」を使用しないでください。

管理サーバーにサーバー・グループは指定しないでください。

ノード・マネージャの構成

「ノード・マネージャ」画面を使用して、構成するノード・マネージャのタイプおよびノード・マネージャ資格証明を選択します。

ノード・マネージャのタイプには「ドメインごとのデフォルトの場所」を選択し、ノード・マネージャの資格証明を指定します。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成ノード・マネージャを参照してください。

ノード・マネージャ・タイプの詳細は、『Oracle WebLogic Serverノード・マネージャの管理』ノード・マネージャの概要に関する項を参照してください。

Oracle SOA Suiteの管理対象サーバーの構成

「管理対象サーバー」画面を使用して、管理対象サーバーを構成します。

Oracle SOA Suiteの管理対象サーバーを構成するには、次のようにします。
  1. 「追加」をクリックして、soa_server1という管理対象サーバーを作成します。
  2. 「リスニング・アドレス」ドロップダウン・リストで、管理対象サーバーが存在するホストのIPアドレスを選択するか、単一のIPアドレスにマップされたシステム名またはDNS名を使用します。「すべてのローカル・アドレス」を使用しないでください。
  3. 「サーバー・グループ」ドロップダウン・リストで、SOA-MGD-SVRSが選択されていることを確認します。これらのサーバー・グループによって、SOAとOracle Web Services Manager (OWSM)のサービスが、作成中の管理対象サーバーにターゲット設定されます。

    SOAのみをターゲットに設定するSOA-MGD-SVRS-ONLYという別のサーバー・グループがありますが、Oracle Web Services Manager (OWSM)からサーバーからサーバーにターゲット設定するものではありません。これは、通常、SOAサーバーとは別のサーバーにOracle Web Services Manager (OWSM)を含める場合に使用します。

    サーバー・グループは、定義済アプリケーション・サービス・グループを各定義済サーバー・グループにマップすることにより、Fusion Middlewareアプリケーションおよびサービスを1つ以上のサーバーにターゲット指定します。必要に応じて、特定のアプリケーション・サービス・グループを複数のサーバー・グループにマップできます。特定のサーバー・グループにマップされた任意のアプリケーション・サービスは、そのグループに割り当てられたすべてのサーバーに自動的にターゲット指定されます。『ドメイン・テンプレート・リファレンス』アプリケーション・サービス・グループ、サーバー・グループおよびアプリケーション・サービス・マッピングに関する項を参照してください。

  4. 2番目の管理対象サーバーの構成は、高可用性の標準トポロジを構成するために必要なステップの1つです。高可用性環境を作成しない場合、このステップはオプションになります。

    「追加」をクリックして、SOA-MGD-SVRSを選択し、soa_server2という名前の2番目の管理対象サーバーを作成します。

    ノート:

    同じマシンにSOA管理対象サーバーとOSB管理対象サーバーの両方を含むクラスタを構成しようとする場合、それぞれの管理対象サーバーにOSB-MGD-SVRS-COMBINEDサーバー・グループとSOA-MGD-SVRSサーバー・グループの両方を割り当てる必要があります。そうしないと、ドメインの作成は失敗します。

    高可用性の標準トポロジの詳細は、『高可用性ガイド』Fusion Middleware標準HAトポロジの理解に関する項を参照してください。

    ドメインを構成した後、高可用性の準備のための次のステップの詳細は、「高可用性のための環境の準備」を参照してください。

これらのサーバー名は、このドキュメント全体の例で引用されるため、別の名前を選択したときには、必要に応じて置き換えてください。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成管理対象サーバーを参照してください。

Oracle SOA Suiteのクラスタの構成

「クラスタ」画面を使用して、新規クラスタを作成します。

「クラスタ」画面で、次のように実行します。

  1. 「追加」をクリックします。
  2. 「クラスタ名」フィールドでsoa_cluster1を指定します。
  3. 「クラスタ・アドレス」フィールドは、空白のままにしておきます。

デフォルトでは、クラスタ内のサーバー・インスタンスは、ユニキャストを使用して相互に通信します。マルチキャストを使用するようにクラスタの通信を変更する場合は、『Oracle WebLogic Serverクラスタの管理』ユニキャストまたはマルチキャストを選択する際の考慮事項に関する項を参照してください。

また、Fusion Middleware Controlを使用してクラスタを作成することもできます。この場合、新しいクラスタを作成するときに、クラスタ通信(ユニキャストまたはマルチキャスト)を構成できます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプクラスタの作成と構成に関する項を参照してください。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成クラスタを参照してください。

サーバー・テンプレートの定義

高可用性設定の動的クラスタを作成している場合は、「サーバー・テンプレート」画面を使用して、ドメインのサーバー・テンプレートを1つ以上作成します。

ドメインの構成を続行するには、「次」をクリックします。

高可用性設定用の動的クラスタを作成するステップは、高可用性ガイド動的クラスタの使用を参照してください。

動的サーバーの構成

高可用性設定用の動的クラスタを作成している場合は、「動的サーバー」画面を使用して、動的サーバーを構成します。

動的クラスタを構成していない場合は、「次」をクリックして、ドメインの構成を続行します。

ノート:

動的クラスタを作成するときは、マシン名マッチング式を割り当てた後に動的クラスタ用のマシンを作成する必要がないことに注意してください。

高可用性設定用の動的クラスタを作成するには、高可用性ガイド動的クラスタの使用を参照してください。

クラスタへのOracle SOA Suite管理対象サーバーの割当て

「サーバーのクラスタへの割当」画面を使用して、管理対象サーバーを新しい構成済クラスタに割り当てます。構成済クラスタは、手動で構成するクラスタです。動的クラスタを構成する場合はこの画面を使用しません。動的クラスタは、サーバー・テンプレートに基づいた生成済サーバー・インスタンスを1つ以上備えたクラスタです。

ノート:

ドメイン内のコンポーネント・タイプのすべての管理対象サーバーは、そのクラスタに属している必要があります。たとえば、Oracle SOA Suiteドメインは、各ドメイン内の単一のOracle SOA Suiteクラスタのみをサポートします。

構成済クラスタおよび動的クラスタの用語の詳細は、Oracle WebLogic Serverの理解動的クラスタについてを参照してください。

「サーバーのクラスタへの割当」画面で、次のように実行します。

  1. 「クラスタ」ペインで、管理対象サーバーを割り当てるクラスタ(この例ではsoa_cluster1)を選択します。
  2. 「サーバー」ペインで、次のいずれかの手順を実行して、soa_server1soa_cluster1に割り当てます。
    • シングルクリックでsoa_server1を選択し、右矢印をクリックすることで、「クラスタ」ペインで選択済のクラスタ(soa_cluster1)の下に移動します。

    • soa_server1をダブルクリックして、「クラスタ」ペインで選択済のクラスタ(soa_cluster1)の下に移動します。

  3. soa_server2soa_cluster1に割り当てるように繰り返します。
次の図は、管理対象サーバーがクラスタに割り当てられた後の「クラスタ」ペインの一般的な例を示しています。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成クラスタへのサーバーの割当を参照してください。

Coherenceクラスタの構成

「Coherenceクラスタ」画面を使用して、Coherenceクラスタを構成します。

Coherenceクラスタのリスニング・ポートとして、デフォルトのポート番号のをそのまま使用します。構成後、Coherenceクラスタがドメインに自動的に追加されます。

ノート:

ユニキャスト・リスニング・ポートを0に設定すると、管理対象サーバー・ポート番号のオフセットが作成されます。オフセットは5000で、管理対象サーバー・ポート番号に割り当てられる最大許容値が65535ではなく60535であることを意味します。

Coherence構成の詳細と次のステップについては、表8-2を参照してください。

Coherenceのライセンス情報の詳細は、ライセンス情報Oracle Coherence製品を参照してください。

新しいOracle SOA Suiteマシンの作成

「マシン」画面を使用して、ドメイン内に新規マシンを作成します。ノード・マネージャがサーバーを起動および停止するには、マシンが必要です。

高可用性環境を作成する際に目的のトポロジで必要になるマシンのリストがわかっているときには、この項の手順を実行して、この時点ですべてのマシンを作成できます。スケール・アウト・ステップの詳細は、『高可用性ガイド』オプションのスケール・アウト・ステップに関する項を参照してください。

ノード・マネージャがサーバーを起動して停止できるようにOracle SOA Suiteマシンを新規作成するには:
  1. 新しいマシンを作成するには、「マシン」タブ(Windowsの場合)または「Unixマシン」タブ(UNIXの場合)を選択し、「追加」をクリックします。
  2. 「名前」フィールドにsoa_machine1などのマシン名を指定します。
  3. 「ノード・マネージャ・リスニング・アドレス」フィールドで、管理対象サーバーを構成しているマシンのIPアドレスを選択します。

    localhostではなく、特定のインタフェースを選択する必要があります。これにより、Coherenceクラスタのアドレスが動的に計算されます。

  4. 「ノード・マネージャ・リスニング・ポート」フィールドのポート番号を確認します。
  5. 必要に応じて、これらのステップを繰り返してさらにマシンを追加します。

ノート:

既存のドメインを拡張している場合は、既存のマシンにサーバーを割り当てることもできます。新しいマシンが不要な場合は、マシンを作成する必要はありません。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成マシンを参照してください。

Oracle SOA Suiteマシンへのサーバーの割当て

「サーバーのマシンへの割当」画面を使用して、作成したばかりの新しいマシンに管理サーバーと管理対象サーバーを割り当てます。

「サーバーのマシンへの割当」画面で次の操作を実行します。

  1. 「マシン」ペインで、サーバーに割り当てるマシン(ここでは、soa_machine1)を選択します。
  2. 「サーバー」ペインで、次のいずれかの手順を実行して、AdminServersoa_machine1に割り当てます。
    • シングルクリックで「AdminServer」を選択し、右矢印をクリックして、「マシン」ペインの選択済のマシン(soa_machine1)の下に移動します。

    • 「AdminServer」をダブルクリックして、「マシン」ペインの選択済のマシン(soa_machine1)の下に移動します。

  3. このステップを繰り返して、すべての管理対象サーバーをそれぞれのマシンに割り当てます。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成マシンへのサーバーの割当を参照してください。

仮想ターゲット

WebLogic Server Multitenant (MT)環境がある場合、「仮想ターゲット」画面を使用して仮想ターゲットを追加または削除します。このインストール(WebLogic Server MT環境ではない)の場合、値を入力せずに「次へ」」を選択します。

この画面の詳細は、構成ウィザードを使用したWebLogicドメインの作成仮想ターゲットを参照してください。

パーティション

「パーティション」画面は、WebLogic Server Multitenant (MT)環境での仮想ターゲットのパーティションの構成に使用されます。オプションを選択せずに「次へ」を選択します。

この画面のオプションの詳細は、構成ウィザードを使用したWebLogicドメインの作成パーティションに関する項を参照してください。

構成の指定内容の確認とドメインの構成

「構成サマリー」画面には、これから作成するドメインに関する詳細な構成情報が表示されます。

画面上の各項目を検討し、情報が正しいことを確認します。変更するには、「戻る」ボタンをクリックするか、ナビゲーション・ペインの画面を選択することにより、前の画面に戻ります。ドメイン作成は、「作成」をクリックするまで開始されません。

この画面上のオプションの詳細は、『構成ウィザードによるWebLogicドメインの作成』構成サマリーに関する項を参照してください。

ドメイン・ホームと管理サーバーURLの記録

「構成の終了」画面には、構成したばかりのドメインについての情報が表示されます。

後で必要になるため、次の項目をノートにとります。

  • ドメインの場所

  • 管理サーバーURL

ドメインの場所は、ノード・マネージャと管理サーバーを起動するスクリプトへのアクセスで必要になります。また、URLは管理サーバーへのアクセスで必要になります。

「終了」をクリックして、構成ウィザードを閉じます。

サーバーの起動

構成が完了した後、ノード・マネージャ、WebLogic管理サーバーおよび管理対象サーバーの順に起動します。

ドメイン管理に使用する追加のツールの詳細は、『Oracle Fusion Middlewareの管理』Oracle Fusion Middlewareの管理ツールの概要に関する項を参照してください。

ノード・マネージャの起動

ドメインごとにノード・マネージャを起動するには:
  1. 次のディレクトリを変更します。

    • (UNIX) setenv JAVA_HOME /home/Oracle/Java/jdk1.8.0_131

    • (Windows) set JAVA_HOME=C:\home\Oracle\Java\jdk1.8.0_131

  2. 次のコマンドを入力します。

    • (UNIX) 次に示すようにnohupnm.outをサンプル出力ファイルとして使用します。

      nohup ./startNodeManager.sh > LOG_DIR/nm.out&
      

      ここで、LOG_DIRは、ログ・ファイルを格納するディレクトリの場所になります。

    • (Windows) startNodeManager.cmd

      ノート:

      Windowsオペレーティング・システムでは、ノード・マネージャをスタートアップ・サービスとして、ノード・マネージャを構成することをお薦めします。これによって、システムが再起動されるたびに、ノード・マネージャが自動で起動されます。

      Oracle WebLogic Serverノード・マネージャの管理起動サービスとしてのノード・マネージャの実行を参照してください。

管理サーバーの起動に関する項

管理サーバーを起動するには:
  1. DOMAIN_HOME/binディレクトリに移動します。

  2. 次のコマンドを入力します。

    • (UNIX)

      ./startWebLogic.sh
    • (Windows)

      startWebLogic.cmd

ドメインを作成した際に「ドメイン・モードおよびJDK」画面で「本番モード」を選択した場合、「管理者アカウント」画面に表示されたように、管理者ユーザーのログイン資格証明のプロンプトが表示されます。

管理サーバーの起動の詳細は、Oracle Fusion Middlewareの管理管理サーバーの起動と停止を参照してください。

本番モードでは、起動アイデンティティ・ファイルを作成することで、管理サーバーの起動時に必要なユーザー名とパスワードの指定を省略できます。起動アイデンティティ・ファイルの詳細は、『Oracle WebLogic Serverサーバーの起動と停止の管理』管理サーバー用の起動アイデンティティ・ファイルの作成に関する項を参照してください。

管理サーバー・コンソールにアクセスすることで、管理サーバーが稼働中であることを確認できます。URLは「構成の終了」画面に指定されます(http://administration_server_host:administration_server_port/console)。デフォルトの管理サーバーのポート番号は7001です。

ノート:

製品スキーマをホストしているデータベースが稼働中であり、管理サーバーからアクセスできることを確認してください。

管理コンソールの使用方法については、『Oracle Fusion Middlewareの管理』Oracle WebLogic Server管理コンソールの使用のスタート・ガイドを参照してください。

管理対象サーバーの起動

管理サーバーを起動するには:

  1. Oracle Fusion Middleware Controlにサインインします。
    http://administration_server_host:administration_server_port/em
    

    管理サーバーのホストおよびポート番号は「構成の終了」画面のURLにありました(「ドメイン・ホームおよび管理サーバーURLを書き込む」)。デフォルトの管理サーバーのポート番号は7001です。

    ログイン資格証明は「管理者アカウントの構成」の「管理者アカウント」画面で指定されました。

  2. Enterprise Managerのランディング・ページには、このドメインに構成されているサーバーのリストと、それらのステータスが表示されます(「実行中」または「停止」など)。新しく構成されたドメインでは、AdminServer(管理サーバー)のみが実行されています。

    最初の管理対象サーバーを選択します。

  3. 「WebLogic Server」メニューの横にある「起動」を選択します。
  4. ステップ3と4を繰り返して、すべての管理対象サーバーを起動します。
  5. メインのランディング・ページで、すべての管理対象サーバーが起動して実行していることを確認します。

構成の検証

構成ステップがすべて完了したら、ドメインが適切に構成されていることを検証する追加のステップを実行できます。

ドメインが適切に構成されていることを確認するには、「追加ドメイン構成タスクの実行」を参照してください。

SOAのサイレント・ドメインの作成

次のステップを実行して、サンプル・スクリプトを使用してサイレント・ドメインを作成します。
  1. ドメインを作成するLinuxシステムに次のスクリプト(createSoaDomain.py)をコピーします。
    import os
    import sys
    
    import com.oracle.cie.domain.script.jython.WLSTException as WLSTException
    
    class SOA12213Provisioner:
    
    # In this sample script, only one machine is used for all servers.
    # You can add more than one machine. For example, soa_server1 - machine1, soa_server2 - machine2
    
        MACHINES = {
            'machine1' : {
                'NMType': 'SSL',
                'ListenAddress': '127.0.0.1',
                'ListenPort': 5658
            }
        }
    
        CLUSTERS = {
            'soa_cluster' : {}
        }
    
        SERVERS = {
            'AdminServer' : {
                'ListenAddress': '127.0.0.1',
                'ListenPort': 7001,
                'Machine': 'machine1'
            },
            'soa_server1' : {
                'ListenAddress': '127.0.0.1',
                'ListenPort': 8001,
                'Machine': 'machine1',
                'Cluster': 'soa_cluster'
            },
            'soa_server2' : {
                'ListenAddress': '127.0.0.1',
                'ListenPort': 8002,
                'Machine': 'machine1',
                'Cluster': 'soa_cluster'
            }
        }
    
        JRF_12213_TEMPLATES = {
            'baseTemplate' : '@@ORACLE_HOME@@/wlserver/common/templates/wls/wls.jar',
            'extensionTemplates' : [
                '@@ORACLE_HOME@@/oracle_common/common/templates/wls/oracle.jrf_template.jar',
                '@@ORACLE_HOME@@/oracle_common/common/templates/wls/oracle.jrf.ws.async_template.jar',
                '@@ORACLE_HOME@@/oracle_common/common/templates/wls/oracle.wsmpm_template.jar',
                '@@ORACLE_HOME@@/oracle_common/common/templates/wls/oracle.ums_template.jar',
                '@@ORACLE_HOME@@/em/common/templates/wls/oracle.em_wls_template.jar'
            ],
            'serverGroupsToTarget' : [ 'JRF-MAN-SVR', 'WSMPM-MAN-SVR' ]
        }
    
        SOA_12213_TEMPLATES = {
            'extensionTemplates' : [
                '@@ORACLE_HOME@@/soa/common/templates/wls/oracle.soa_template.jar'
            ],
            'serverGroupsToTarget' : [ 'SOA-MGD-SVRS-ONLY' ]
        }
    
        def __init__(self, oracleHome, javaHome, domainParentDir):
            self.oracleHome = self.validateDirectory(oracleHome)
            self.javaHome = self.validateDirectory(javaHome)
            self.domainParentDir = self.validateDirectory(domainParentDir, create=True)
            return
    
        def createSoaDomain(self, name, user, password, db, dbPrefix, dbPassword):
            domainHome = self.createBaseDomain(name, user, password)
            self.extendDomain(domainHome, db, dbPrefix, dbPassword)
    
    
        def createBaseDomain(self, name, user, password):
            baseTemplate = self.replaceTokens(self.JRF_12213_TEMPLATES['baseTemplate'])
    
            readTemplate(baseTemplate)
            setOption('DomainName', name)
            setOption('JavaHome', self.javaHome)
            setOption('ServerStartMode', 'prod')
            set('Name', domainName)
            cd('/Security/' + domainName + '/User/weblogic')
            set('Name', user)
            set('Password', password)
    
            print 'Creating cluster...'
            for cluster in self.CLUSTERS:
                cd('/')
                create(cluster, 'Cluster')
                cd('Cluster/' + cluster)
                for param in  self.CLUSTERS[cluster]:
                    set(param, self.CLUSTERS[cluster][param])
    
            print 'Creating Node Managers...'
            for machine in self.MACHINES:
                cd('/')
                create(machine, 'Machine')
                cd('Machine/' + machine)
                create(machine, 'NodeManager')
                cd('NodeManager/' + machine)
                for param in self.MACHINES[machine]:
                    set(param, self.MACHINES[machine][param])
    
            print 'Creating Servers...'
            for server in self.SERVERS:
                cd('/')
                if server == 'AdminServer':
                	cd('Server/' + server)
                	for param in self.SERVERS[server]:
                		set(param, self.SERVERS[server][param])
                    continue
                create(server, 'Server')
                cd('Server/' + server)
                for param in self.SERVERS[server]:
                    set(param, self.SERVERS[server][param])
    
            setOption('OverwriteDomain', 'true')
            domainHome = self.domainParentDir + '/' + name
    
            print 'Writing base domain...'
            writeDomain(domainHome)
            closeTemplate()
            print 'Base domain created at ' + domainHome
            return domainHome
    
    
        def extendDomain(self, domainHome, db, dbPrefix, dbPassword):
            print 'Extending domain at ' + domainHome
            readDomain(domainHome)
            setOption('AppDir', self.domainParentDir + '/applications')
    
            print 'Applying JRF templates...'
            for extensionTemplate in self.JRF_12213_TEMPLATES['extensionTemplates']:
                addTemplate(self.replaceTokens(extensionTemplate))
    
            print 'Applying SOA templates...'
            for extensionTemplate in self.SOA_12213_TEMPLATES['extensionTemplates']:
                addTemplate(self.replaceTokens(extensionTemplate))
    
            print 'Extension Templates added'
    
            print 'Configuring the Service Table DataSource...'
            fmwDb = 'jdbc:oracle:thin:@' + db
            cd('/JDBCSystemResource/LocalSvcTblDataSource/JdbcResource/LocalSvcTblDataSource')
            cd('JDBCDriverParams/NO_NAME_0')
            set('DriverName', 'oracle.jdbc.OracleDriver')
            set('URL', fmwDb)
            set('PasswordEncrypted', dbPassword)
    
            stbUser = dbPrefix + '_STB'
            cd('Properties/NO_NAME_0/Property/user')
            set('Value', stbUser)
    
            print 'Getting Database Defaults...'
            getDatabaseDefaults()
    
            print 'Targeting Server Groups...'
            serverGroupsToTarget = list(self.JRF_12213_TEMPLATES['serverGroupsToTarget'])
            serverGroupsToTarget.extend(self.SOA_12213_TEMPLATES['serverGroupsToTarget'])
            cd('/')
            for server in self.SERVERS:
                if not server == 'AdminServer':
                    setServerGroups(server, serverGroupsToTarget)
                    print "Set CoherenceClusterSystemResource to defaultCoherenceCluster for server:" + server
                    cd('/Servers/' + server)
                    set('CoherenceClusterSystemResource', 'defaultCoherenceCluster')
    
            cd('/')
            for cluster in self.CLUSTERS:
                print "Set CoherenceClusterSystemResource to defaultCoherenceCluster for cluster:" + cluster
                cd('/Cluster/' + cluster)
                set('CoherenceClusterSystemResource', 'defaultCoherenceCluster')
            
            print "Set WLS clusters as target of defaultCoherenceCluster:[" + ",".join(self.CLUSTERS) + "]"
            cd('/CoherenceClusterSystemResource/defaultCoherenceCluster')
            set('Target', ",".join(self.CLUSTERS))
    		 
            print 'Preparing to update domain...'
            updateDomain()
            print 'Domain updated successfully'
            closeDomain()
            return
    
    
        ###########################################################################
        # Helper Methods                                                          #
        ###########################################################################
    
        def validateDirectory(self, dirName, create=False):
            directory = os.path.realpath(dirName)
            if not os.path.exists(directory):
                if create:
                    os.makedirs(directory)
                else:
                    message = 'Directory ' + directory + ' does not exist'
                    raise WLSTException(message)
            elif not os.path.isdir(directory):
                message = 'Directory ' + directory + ' is not a directory'
                raise WLSTException(message)
            return self.fixupPath(directory)
    
    
        def fixupPath(self, path):
            result = path
            if path is not None:
                result = path.replace('\\', '/')
            return result
    
    
        def replaceTokens(self, path):
            result = path
            if path is not None:
                result = path.replace('@@ORACLE_HOME@@', oracleHome)
            return result
    
    
    #############################
    # Entry point to the script #
    #############################
    
    def usage():
        print sys.argv[0] + ' -oh <oracle_home> -jh <java_home> -parent <domain_parent_dir> [-name <domain-name>] ' + \
              '[-user <domain-user>] [-password <domain-password>] ' + \
              '-rcuDb <rcu-database> [-rcuPrefix <rcu-prefix>] [-rcuSchemaPwd <rcu-schema-password>]'
        sys.exit(0)
    
    
    print str(sys.argv[0]) + " called with the following sys.argv array:"
    for index, arg in enumerate(sys.argv):
        print "sys.argv[" + str(index) + "] = " + str(sys.argv[index])
    
    if len(sys.argv) <  6:
        usage()
    
    #oracleHome will be passed by command line parameter -oh.
    oracleHome = None
    #javaHome will be passed by command line parameter -jh.
    javaHome = None
    #domainParentDir will be passed by command line parameter -parent.
    domainParentDir = None
    #domainName is hard-coded to soa_domain. You can change to other name of your choice. Command line parameter -name.
    domainName = 'soa_domain'
    #domainUser is hard-coded to weblogic. You can change to other name of your choice. Command line paramter -user.
    domainUser = 'weblogic'
    #domainPassword is hard-coded to welcome1. You can change to other password of your choice. Command line parameter -password.
    domainPassword = 'welcome1'
    #rcuDb will be passed by command line parameter -rcuDb.
    rcuDb = None
    #change rcuSchemaPrefix to your soainfra schema prefix. Command line parameter -rcuPrefix.
    rcuSchemaPrefix = 'DEV12'
    #change rcuSchemaPassword to your soainfra schema password. Command line parameter -rcuSchemaPwd.
    rcuSchemaPassword = 'welcome1'
    
    i = 1
    while i < len(sys.argv):
        if sys.argv[i] == '-oh':
            oracleHome = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-jh':
            javaHome = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-parent':
            domainParentDir = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-name':
            domainName = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-user':
            domainUser = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-password':
            domainPassword = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-rcuDb':
            rcuDb = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-rcuPrefix':
            rcuSchemaPrefix = sys.argv[i + 1]
            i += 2
        elif sys.argv[i] == '-rcuSchemaPwd':
            rcuSchemaPassword = sys.argv[i + 1]
            i += 2
        else:
            print 'Unexpected argument switch at position ' + str(i) + ': ' + str(sys.argv[i])
            usage()
            sys.exit(1)
    
    provisioner = SOA12213Provisioner(oracleHome, javaHome, domainParentDir)
    provisioner.createSoaDomain(domainName, domainUser, domainPassword, rcuDb, rcuSchemaPrefix, rcuSchemaPassword)
    
  2. スクリプトを開き、次の値を変更します。
    1. ListenAdress: これは、SOAドメインを作成するマシンのIPアドレスです。
    2. RCUスキーマの接頭辞: これはDEV12にハードコードされ、この値を特定の接頭辞に変更します。たとえば、RCUスキーマの名前がSAMPLE_SOAINFRAである場合、rcuSchemaPrefixの値はSAMPLEです。
    3. RCUスキーマ・パスワード: これはwelcome1にハードコードされます。この値をスキーマ固有のパスワードに変更します。
  3. FMW_HOME/oracle_common/common/bin/に移動します
  4. ./wlst.sh <script_location>/createSoaDomain.py -oh "<FMW_HOME>"  -jh "<JAVA_HOME>" -parent "<new domain creation location>" -rcuDb  "<hostname of the database>:<database port>/<service id>"を入力します
    次は、必要なパラメータを使用したコマンドの例です。
    Type cd $MW_HOME/oracle_common/common/bin
    Type ./wlst.sh <script_name with absolute path> -oh "<oracle middleware home>" -jh  "<java home>" -parent "<domain parent directory with absolute path>" -name  "<domain_name>" -user "<domain user>" -password "domain password" -rcuDb  "<hostname>:<port>/<service>" -rcuPrefix "<soa_infra schema prefix>"  -rcuSchemaPwd "<soainfra schema password>"
    • -oh — Middlewareホームのパス。デフォルトはnoneです。値を設定してください。

    • -jh — Javaホームのパス。デフォルトはnoneです。値を設定してください。

    • -parent — 絶対パスを使用したドメイン親ディレクトリ名。デフォルトはnoneです。値を設定してください。

    • (オプション) -name — ドメイン名。デフォルトはsoa_domainです。値が設定されない場合は、デフォルトの値が使用されます。

    • (オプション) -user — ドメイン・ユーザー。デフォルトはweblogicです。値が設定されない場合は、デフォルトの値が使用されます。

    • (オプション) -password — ドメイン・パスワード。デフォルトはwelcome1です。値が設定されない場合は、デフォルトの値が使用されます。

    • -rcuDb — RCUデータベース詳細。デフォルトはnoneです。値を設定してください。

    • -rcuPrefix — soainfraスキーマの接頭辞。デフォルトはDEV12です。soainfraの接頭辞を確認して、この値を適宜設定してください。

    • -rcuSchemaPwd -soainfraスキーマ・パスワード。デフォルトはwelcome1です。soainfraのスキーマ・パスワードを確認して、この値を適宜設定してください。