プライマリ・コンテンツに移動
Oracle® Fusion Middleware WebLogic Server Multitenantの使用
12c (12.2.1)
E67376-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

19 ドメイン・パーティションへのWebLogic Serverドメインの移行

この章では、WebLogic Serverドメインをドメイン・パーティションに移行する方法について説明します。Domain to Partition Conversion Tool (D-PCT)で、既存のアプリケーションおよびリソースを非マルチテナント・ドメインからマルチテナント・ドメイン・パーティションに移行できます。

この章の内容は次のとおりです。

ドメイン・パーティションへのWebLogic Serverドメインの移行: 概要

WebLogic Server Multitenant (MT)では、1つのWebLogic Serverドメイン内において複数の独立したパーティションがサポートされます。パーティションによってアプリケーション、リソース、セキュリティなどを同じドメイン内の他のパーティションから分離できます。WebLogic Server MTの構成の詳細は、「WebLogic Server Multitenant (MT)の構成: 全体像」を参照してください。

Domain to Partition Conversion Tool (D-PCT)で、既存のWebLogic Server 10.3.6、12.1.2、12.1.3または12.2.1ドメインをWebLogic Server 12.2.1ドメインのパーティションに移行できます。このツールは、エクスポート・ツールとインポート・ツールの2つのコンポーネントで構成されています。エクスポート・ツールはソース・ドメインをホストするWebLogic Serverインストールで使用され、インポート・ツールはターゲットWebLogic Server 12.2.1インストールで使用されます。

このツールを使用して、パーティション、リソース・グループおよびリソース・グループ・テンプレートを作成および構成できます。デフォルトでは、このツールですべてのアプリケーション、ライブラリおよびリソースが新規パーティションに移動されます。オプションで、個々のアプリケーション、ライブラリおよびリソースを選択するメカニズムも提供されます。


注意:

ドメインのクラスタおよびサーバーの構成はパーティションに適用されません。したがって、新規12.2.1パーティションにマップされません。

ドメイン・パーティションへのWebLogic Serverドメインの移行: 前提条件

このツールを構成する前に、次の前提条件を満たす必要があります。

  • ターゲット・ドメインはWebLogic Server 12.2.1インストールで構成されている必要があります。

  • JDK 8をダウンロードし、ソース・ドメインのホスト・マシンにインストールする必要があります。これは、WebLogic Server 10.3.6でエクスポート・ツールを実行するために必要です。

  • パッチ22644507をダウンロードし、ターゲットWebLogic Server 12.2.1インストールにインストールします。このパッチによってパーティションのインポート機能が正しく動作します。このパッチは、My Oracle Support (http://support.oracle.com)でパッチIDを指定してダウンロードできます。

    OPatchを使用してこのパッチをインストールすることをお薦めします。詳細は、OPatchを使用したパッチ適用の「OPatchについて」を参照してください。

  • ターゲットWebLogic Server 12.2.1ドメインが稼働している必要があります。

  • ドメインからパーティションに直接変換し、JSONファイルに基づいた仮想ターゲットの作成がインポート・ツールで正しく行えるようにするには、ターゲット・ドメインとソース・ドメインのクラスタ名とサーバー名が同一であることが重要です。

    デフォルトでは、インポート・ツールはJSONファイルで指定されている名前およびターゲットを使用して仮想ターゲットを作成します。ただし、インポート操作の前に仮想ターゲットを手動で構成することをお薦めします。インポートの前に仮想ターゲットを事前構成する場合、必ずJSONファイルのpartition属性を変更し、このパーティションで使用するターゲット・ドメインに作成した既存の仮想ターゲットの名前を指定する必要があります。

  • インポート操作を使用して新規パーティションを作成する前に、新規ドメインのサーバー、クラスタ、仮想ターゲットおよびセキュリティ・レルムをソース・ドメインと同じ構成にしていることを確認する必要があります。パーティションのインポートの詳細は、「パーティションのエクスポートおよびインポート」を参照してください。

ドメイン・パーティションへのWebLogic Serverドメインの移行: 主な手順

Domain to Partition Conversion Toolの構成の主な手順は次のとおりです。

WebLogic Serverドメイン・アプリケーション環境のエクスポートの準備

次のタスクを実行して、WebLogic Serverドメイン・アプリケーション環境のエクスポートを準備します。

  1. ドメイン・エクスポート・ツールzipディストリビューションを、ソースWebLogic Serverドメインが構成されているホスト・マシンにダウンロードします。ドメイン・エクスポート・ツールは、次の場所のOTNからダウンロードできます。

    http://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-for-dev-1703574.html

  2. ダウンロードしたwls1221_D-PCTx.zipファイルを解凍します。このファイルは、希望のディレクトリに解凍できます。エクスポート・ツール用に別途ディレクトリを作成することをお薦めします。エクスポート・ツールzipディストリビューションをこのディレクトリに解凍し、そこからエクスポート・ツール・スクリプトを実行する必要があります。

    zipディストリビューションは次のファイルで構成されています。

    • README.txt - Domain to Partition Conversion Toolのインストールおよび実行に関するドキュメントを含むファイル。

    • exportDomainForPartition.sh - ドメイン・アプリケーションをエクスポートするためにソースWebLogic Serverドメインで実行するスクリプト(UNIX)。

    • exportDomainForPartition.cmd - ドメイン・アプリケーションをエクスポートするためにソースWebLogic Serverドメインで実行するスクリプト(Windows)。

    • com.oracle.weblogic.management.tools.migration.jar - ドメイン・アーカイブ・ファイルへのソース・ドメインのエクスポートに使用されるPythonスクリプトおよびJavaクラスを含むJARファイル。


      注意:

      com.oracle.weblogic.management.tools.migration.jar内のクラスはJDK 8でビルドされています。したがって、WebLogic Server 10.3.6でエクスポート・ツールを実行する場合、エクスポート・スクリプトはJDK 8との組合せで実行する必要がありますが、これは、WebLogic Server 10.3.6インストールで通常使用されるJDKのバージョンではないことがあります。エクスポート・スクリプトを実行する前に、JAVA_HOME変数を適切に設定していることを確認します。

  3. パーティション・アーカイブ・ファイル内の属性を暗号化するための暗号化鍵として使用する文字列を含むキー・ファイルを作成します。パスは管理サーバーによってアクセス可能である必要があります。鍵の文字列のサイズは、1-32文字です。

WebLogic Serverドメイン・アプリケーション環境のエクスポート

WebLogic Serverドメイン・アプリケーションをエクスポートするには、ソースWebLogic Serverドメイン管理サーバーが存在するホスト・マシンでエクスポート・スクリプトを実行する必要があります。

  • UNIXでこのスクリプトに渡される引数の構文は、次のとおりです。

    exportDomainForPartition.sh ORACLE_HOME DOMAIN_HOME [keyFile] [TOOL_JAR] [app_name] [INCLUDE_APP_BITS={true|false}]
    
  • Windowsでこのスクリプトに渡される引数の構文は、次のとおりです。

    exportDomainForPartition.cmd ORACLE_HOME DOMAIN_HOME [keyFile] [TOOL_JAR] [app_name] [INCLUDE_APP_BITS={true|false}]
    

    Windowsでスクリプトを実行する前に、次のタスクを実行します。

    1. コマンド・シェルを開き、エクスポート・ツール・ディストリビューションを解凍したディレクトリに移動します。

    2. JAVA_HOME環境変数をJDK 8インストールのパスに設定します。次に例を示します。

      C:\> set JAVA_HOME=C:\jdk1.8.0
      

注意:

エクスポート操作時、ソース・ドメインで構成を変更しないことをお薦めします。

このスクリプトは、次の表に説明されている引数を受け入れます。

引数 説明
ORACLE_HOME
WebLogic ServerがインストールされているOracleホーム・ディレクトリの名前。

この引数は、name=valueのペアとして指定できます。たとえば、ORACLE_HOME=/Oracle/Middleware/Oracle_Homeです。

DOMAIN_HOME
ソースWebLogic Serverドメインのフルパス。

この引数は、name=valueのペアとして指定できます。たとえば、DOMAIN_HOME=/Oracle/Middleware /Oracle_Home/user_projects/domains/medrecです。

keyFile
オプション。パーティション・アーカイブ・ファイル内の属性を暗号化するための暗号化鍵として使用する文字列を含むファイルへのフルパス。パスは管理サーバーによってアクセス可能である必要があります。
TOOL_JAR
com.oracle.weblogic.management.tools.migration.jarファイルのパス。jarファイルがexportDomainForPartition.shスクリプトと同じディレクトリにある場合、この引数はオプションです。
app_name
オプション。エクスポートするアプリケーション名のリスト。指定しない場合、ドメイン内のすべてのアプリケーションがエクスポートされます。
INCLUDE_APP_BITS
オプション。アプリケーション・バイナリ・ファイルがアーカイブ・ファイルに含まれているかどうかを示すフラグ。この値のデフォルトはtrueで、バイナリ・ファイルが含まれていることを意味します。falseの場合は、除外されます。

WebLogic Serverドメイン・アプリケーションのエクスポート: 例

例19-1 UNIXでのドメインのエクスポート・スクリプトの実行

次の例では、UNIXでパス/Oracle_Home/user_projects/domains/base_domainからドメインをエクスポートします。引数/usr/myUserKeyFileは暗号化鍵ファイルのパスで、download/com.oracle.weblogic.management.tools.migration.jarはエクスポート・ツールjarファイルのパスです。

exportDomainForPartition.sh /Oracle_Home /Oracle_Home/user_projects/domains/base_domain /usr/myUserKeyFile  /download/com.oracle.weblogic.management.tools.migration.jar

例19-2 Windowsでのドメインのエクスポート・スクリプトの実行

次の例では、WindowsでパスOracle_Home\\user_projects\\domains\\base_domainからドメインをエクスポートします。引数myKeyfileは暗号化鍵ファイルで、oracle.weblogic.management.tools.migration.jarはエクスポート・ツールjarファイルです。

 exportDomainForPartition.cmd C:\\Oracle_Home C:\\Oracle_Home\\user_projects\\domains\\base_domain myKeyfile C:\\com.oracle.weblogic.management.tools.migration.jar

注意:

Windowsコマンド・シェルでドメインのエクスポート・スクリプトを実行する場合、パス区切りをエスケープする必要があります

JSONファイルを使用したインポート時のデフォルトのオーバーライド

WebLogic Serverドメイン・アプリケーションのエクスポート操作時、JSONテキスト・ファイルが生成され、アーカイブ・ファイルおよび編集および変更が可能な別ファイルとして格納されます。このファイルでは、インポート操作時に作成されるパーティションのデフォルト値が指定されます。ただし、JSONファイルを編集してデフォルト値をオーバーライドできます。たとえば、JSONファイルでデフォルト仮想ターゲット名を指定します。別の名前の仮想ターゲットを作成する場合、JSONファイルを編集してvirtual-targetセクションの値を変更します。

次の例に、エクスポート・ツールで生成されるサンプルJSONファイルを示します。この例では、JSONファイル・オブジェクトと属性の両方およびそのオーバーライド方法を示します。

 {
 "virtual-target" :
    [ { "name":"${PARTITION_NAME}-AdminServer-virtualTarget" , "target":"AdminServer" , "uri-prefix":"/${PARTITION_NAME}" } ]
 "app-deployment":
    [{"name":"testApp1","exclude-from-import":"false"}],
 "persistence-store":
    [{"name":"WseeSoapjmsFileStore_auto_1","exclude-from-import":"false"},{"name":"WseeSoapjmsFileStore_auto_2","exclude-from-import":"false"}],
 "jms-server":
    [{"name":"WseeSoapjmsJmsServer_auto_1","exclude-from-import":"false"},{"name":"WseeSoapjmsJmsServer_auto_2","exclude-from-import":"false"}],
 "jms-system-resource":
    [{"name":"testJMSModule", "exclude-from-import":"false",
             "sub-deployment":[{"name":"testJmsServer","exclude-from-import":"false"}]},
     {"name":"WseeSoapjmsJmsModule","exclude-from-import":"false",
             "sub-deployment":[{"name":"WseeSoapjmsJmsServer649564037","exclude-from-import":"false"}]}],
 
 "resource-group-template" : { "name":"${PARTITION_NAME}-RGTemplate"  },
 
 "partition" : {
          "default-target" : [ {"virtual-target":{ "name":"${PARTITION_NAME}-AdminServer-virtualTarget" }} ],
          "jdbc-system-resource-override" : [ { "name":"MedRecGlobalDataSourceXA" ,
                                                "url":"__EXISTING_VALUE__" ,
                                                "user" : "__EXISTING_VALUE__" ,
                                                "password-encrypted" : "__EXISTING_VALUE__" } ],
          "jms-system-resource-override":[
                                     {"name":"testJMSModule",
                                      "foreign-server-override":[
                                                 {"name":"ForeignServer1",
                                                  "foreign-destination-override":[
                                                           {"name":"ForeignDestination1",
                                                            "remote-jndi-name":"__EXISTING_VALUE__"},
                                                          {"name":"ForeignDestination2",
                                                           "remote-jndi-name":"__EXISTING_VALUE__"}],
                                      "foreign-connection-factory-override":[
                                                         {"name":"ForeignConnectionFactory1",
                                                          "remote-jndi-name":"__EXISTING_VALUE__",
                                                          "username":"__EXISTING_VALUE__" }]
                                                        }]
                                    }],
          "realm":"__EXISTING_VALUE__",
          "available-target":[ {"virtual-target":{ "name":"${PARTITION_NAME}-AdminServer-virtualTarget" }} ]
     }
 }

次の表では、JSONファイルで編集および変更できるオブジェクトと属性について説明します。

JSONファイルの編集可能なオブジェクトと属性 注意
ルート・レベル・オブジェクト"virtual-target" デフォルトでは、インポート・ツールはサンプル・ファイルに示しているように仮想ターゲットを作成します。インポート操作の前に仮想ターゲットを手動で構成することをお薦めします。仮想ターゲットの構成の詳細は、「仮想ターゲットの構成」を参照してください。

インポート操作時仮想ターゲットの自動作成をスキップするには、このオブジェクトと関連する値を必ず削除します。

オブジェクト"partition" このオブジェクトでは、パーティションの作成に必要な要素と値を指定します。

このパーティションの仮想ターゲットを手動ですでに作成している場合、"virtual-target"値("default-target"および"available-target"内)を既存の仮想ターゲットの名前に置き換えます。

オブジェクト"resource-group-template" : デフォルト・リソース・グループ・テンプレート名をオーバーライドするには、"name"値を編集します。
属性"exclude-from-import" この属性で特定のオブジェクトまたはリソースをパーティションへのインポートから除外するかどうかが決まります。パーティションでのJMSおよびJDBCリソース・ターゲット指定の制限事項については、「ドメイン・パーティションへのWebLogic Serverドメインの移行: 制限事項」を参照してください。

この値をtrueに設定すると、オブジェクトまたはリソースはパーティションにインポートされません。デフォルト値はfalseです。


ドメイン・パーティションへのアプリケーション・アーカイブのインポート

ドメイン・アプリケーション・アーカイブ・ファイルをインポートする前に、ターゲットWebLogic Server 12.2.1ドメインが稼働していることを確認します。

WebLogic Server 12.2.1ドメインに新規パーティションを作成し、アプリケーション・アーカイブ・ファイルを新たに作成したドメイン・パーティションにインポートするには、オンライン・モードでWLSTコマンドを使用して次の手順を実行します。

  1. 次の例に示すように、ドメイン・アーカイブ・ファイルをインポートするターゲットWebLogic Serverドメインに接続します。

    connect('user', 'mypassword', 't3://myserver:7001')
    
  2. 次の構文を使用してimportPartitionコマンドを実行します。

    importPartition( archiveFileName , partitionName , createRGT=true|false , userKeyFile )
    

    コマンドは非同期であり、ImportExportPartitionTaskMBeanを戻します。このコマンドを次のように使用して、インポート操作の結果を取得できます。

    result = importPartition( .... )
     
    

    print result.getState()を使用してインポートの結果の状態を取得したり、print result.getError()を使用してインポートが失敗した場合のエラー・メッセージを表示できます。このコマンドの詳細は、WebLogic Server WLSTコマンド・リファレンスを参照してください。

    次の表でimportPartitionコマンドに指定する必要のある引数について説明します。

    引数 説明
    archiveFileName
    
    インポートするドメイン・アーカイブ・ファイルのフルパス。

    このコマンドでは、ドメイン・アーカイブ・ファイルの指定された場所で<domain name>-attributes.jsonファイルを検索します。このファイルが指定された場所にすでに存在する場合、このファイル内の値はアーカイブ・ファイル内の値によって上書きされます。

    partitionName
    
    ターゲット・ドメインに作成されるパーティションの名前。
    createRGT
    
    アーカイブ・ファイル内のすべてのリソースに対してリソース・グループ・テンプレートを作成するかどうかを示すフラグ。

    リソース・グループ・テンプレートを作成する場合はtrueに設定し、すべてのリソースを新規パーティションのリソース・グループに直接追加する場合はfalseに設定します。

    userKeyFile
    
    エクスポート操作時に指定されたのと同じクリアテキスト・パスフレーズを含むユーザー・キー・ファイルの絶対パス。このファイルは、アーカイブ・ファイル内の属性の復号に使用されます。

ドメイン・パーティションへのアプリケーション・アーカイブのインポート: WLSTの例

次のWLSTコマンドでは、outDir/<domain>.zipアーカイブ・ファイルをtestPartitionという名前の新規パーティションにインポートします。リソース・グループ・テンプレートも作成され、/usr/myUserKeyFileが暗号化鍵として使用されます。

wls:/wsDomain/> importPartition( '/outDir/<domain>.zip', 'testPartition',  true,  '/usr/myUserKeyFile' )

ドメイン・パーティションへのWebLogic Serverドメインの移行: 制限事項

Domain to Partition Conversion Toolの構成の制限事項は次のとおりです。

  • ツールではWebLogic Server 12.2.1ドメインのWebLogic Server 12.2.1ドメイン・パーティションへの移行はサポートされますが、ソース・ドメイン内の既存のリソース・グループはスキップされ、含まれません。

  • ライブラリおよびリソースの新規リリースへのドメイン・アップグレードは、インポート時サポートされません。管理者およびユーザーは、アーカイブ・ファイルのエクスポートの前にソース・ドメインからの必要なドメイン・アップグレードを行う必要があります。

  • アプリケーションのランタイム状態もアプリケーションに固有のランタイム構成もアーカイブ・ファイルにエクスポートされません。たとえば、キュー内のJMSメッセージや組込みLDAPレルム内のユーザーはエクスポートされません。

  • 12.2.1より前のバージョンのWebLogic Serverでコンパイルされたリモート・クライアントは、パーティションにデプロイされているJNDIリソースをルックアップできません。WebLogic Serverバージョン12.2.1以上で再コンパイルする必要があります。

  • ソース・ドメイン内のクラスタまたは移行可能なターゲットにターゲット指定されたJMSおよびJDBCリソースをインポートする際の制限事項:

    • リソース・グループ内の複数のJMSリソースが複数の仮想ターゲットをターゲットとすることはできません。すべてのJMSファイル・ストアで同じ分散ポリシーを使用する必要があります。

    • JDBCでは、WebLogic Server Multitenantでのロギング・ラスト・リソース(LLR)機能の使用はサポートされません。このオプションを使用したデータ・ソースは代替設定を使用するよう変換する必要がありますが、この代替設定では十分ではない場合もあります。

    エラーが発生しないよう、これらの制限事項に該当するJMSおよびJDBCリソースは、JSONファイルでexclude-from-import属性を使用してインポートから除外する必要があります。このようなリソースは、アプリケーションでの必要に応じてパーティション内に手動で作成する必要があります。

ドメイン・パーティションへのWebLogic Serverドメインの移行: 事例

次の表は、パーティションへのWebLogic Serverドメインの移行でサポートされる事例およびサポートされない事例の一覧です。

表19-1 移行の事例

ソース ターゲット ステータス

JMSサーバーなしの単一サーバー

単一サーバーをターゲットとする仮想ターゲット

サポート対象

JMSサーバーが1つある単一サーバー

単一サーバーをターゲットとする仮想ターゲット

サポート対象

JMSサーバーなしの単一サーバー

クラスタをターゲットとする仮想ターゲット

サポート対象

JMSサーバーが1つある単一サーバー

クラスタをターゲットとする仮想ターゲット

サポート対象

JMSサーバーなしのクラスタ

単一サーバーをターゲットとする仮想ターゲット

サポート対象

(Windows)JMSサーバーなしのクラスタ

クラスタをターゲットとする仮想ターゲット

サポート対象

WindowsからLinuxへのクロス・プラットフォームのドメイン移行

単一サーバーをターゲットとする仮想ターゲット

サポート対象

JMSサーバーが複数あるクラスタ

単一サーバーをターゲットとする仮想ターゲット

サポート対象外

JMSサーバーが複数あるクラスタ

クラスタをターゲットとする仮想ターゲット

サポート対象外