Database Support Blog

  • Oracle Database
  • その他
2023.03.03

【WebLogic Server】WebLogic Deploy Tooling(WDT) でドメイン/アプリケーション/データソースの移行をしよう

【WebLogic Server】WebLogic Deploy Tooling(WDT) でドメイン/アプリケーション/データソースの移行をしよう

Oracle WebLogic Server でのドメインの移行方法としては pack/unpack コマンドが提供されています。

新たにリリースされた WebLogic Deploy Tooling (WDT) では、ドメインの移行(新規作成)だけでなく、既存のドメインに対してアプリケーションや JDBC データソースのみを移行することも可能です。

本記事では WDT の基本的な使用方法をご紹介します。


Index

WebLogic Deploy Tooling(WDT) とは

WDT はシェルスクリプトとして提供されているツールであり、内部的には WebLogic Scripting Tool (WLST) が使用されています。

WDT を使用することで、対象の環境に存在するドメインの構成情報を YAML または JSON 形式のメタデータとして抽出し、アプリケーションをアーカイブファイルとして抽出します。抽出したメタデータ情報は「モデル」と呼ばれます。

抽出したモデルやアーカイブファイルを使用して、異なる WebLogic Server 環境にドメインの構成を移行することが可能です。

以下が WDT でできる主な内容です。

  • ドメインの構成情報を、モデルとアーカイブログとして抽出
  • モデルを使用した、ドメインの移行(新規作成)
  • モデルを使用した、ドメインの設定を移行(既存ドメインの更新)
  • モデルとアーカイブファイルを使用した、アプリケーションの移行

WDT は WebLogic Server 10.3.6 以降で使用可能です。
移行元と移行先の WebLogic Server のバージョンが異なっていても、モデルやアーカイブファイルの移行が可能です。

また、WDT は GitHub にて公開されているオープンソースツールであり、追加ライセンス無しで利用できます。


pack/unpack コマンドとの違い

Oracle WebLogic Server でのドメインの移行方法としては pack/unpack コマンドが提供されています。


pack/unpack では行えず、WDTでのみできること

pack/unpack コマンドは、ドメインのテンプレートを作成して別環境に移行するという点は WDT と類似していますが、pack/unpack コマンドでは一部設定を変更して移行するといったことはできません。

また、pack/unpack コマンドでは既存のドメインに対して変更を行うことはできません。


WDT では行えず、pack/unpack でのみできること

現行の WDT では、複数ノードでドメインを構成するために管理対象サーバ用のテンプレートを作成するといった方法が用意されていません。

そのため、複数ノードでドメインを構成する際には従来どおり pack/unpack コマンドを使用する必要があります。


pack/unpack コマンドと WDT の違い まとめ

以下は pack/unpack コマンドと WDT の違いをまとめた表です。

行えることに違いがある項目 pack/unpack WDT
 一部設定を変更して移行する
 既存のドメインに対して変更を反映させる
 複数ノードにまたがるドメインを移行(新規作成)する

WDT のインストール方法

WDTを利用するには、移行元環境と移行先環境のそれぞれで、GitHub からファイルをダウンロードし、WebLogic Server のインストールユーザーがアクセス可能な任意のディレクトリに展開します。

  ▶GitHub の WDT ダウンロードページのURL
   https://github.com/oracle/weblogic-deploy-tooling/releases/

ダウンロードするバージョンの「Assets」から「weblogic-deploy.tar.gz」または「weblogic-deploy.zip」をクリックするとダウンロードできます。
最新バージョンの使用を推奨します。(※執筆時点の2022年12月では2.4.2を利用しました)

サポートされる WebLogic Server のバージョン、および JDK の組み合わせについてはユーザーガイドの以下ページをご確認ください。

  ▶INSTALL WDT
   Supported WLS versions
   https://oracle.github.io/weblogic-deploy-tooling/userguide/install/


WDT を使用した、ドメインの移行(新規作成)方法

WDT を使用したドメインの移行(新規作成)の流れは以下のとおりです。

本記事では、WebLogic Server 12.2.1.4 に存在するドメインを、別サーバ上にインストールした WebLogic Server 14.1.1 に移行(新規作成)する例をご紹介します。


1) discoverDomain を実行し、モデルとアーカイブファイルを作成

移行元環境にて、環境変数の設定をした上で discoverDomain を実行して、モデルとアーカイブファイルを作成します。

 
 $ <WDT の展開先ディレクトリ>/bin/discoverDomain.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file <アーカイブファイル名> -model_file <モデル名> -domain_type <ドメインのタイプ>
 
※1行で記載します。
※Windows 環境で実行する場合は discoverDomain.cmd を実行します。
※-domain-type で指定する <ドメインタイプ> の値は以下のとおりです。
  スタンドアロンドメインの場合 :WLS
  Full-JRF ドメインの場合    :JRF
  Restricted-JRF ドメインの場合 :RestrictedJRF

(実行例)

 
 $ JAVA_HOME=/home/wls1221/jdk8
 $ MW_HOME=/home/wls1221/Oracle/Middleware/Oracle_Home
 $ DOMAIN_HOME=/home/wls1221/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain
 $ export JAVA_HOME
 $ export MW_HOME
 $ export DOMAIN_HOME
  
 $ /home/wls1221/work/weblogic-deploy/bin/discoverDomain.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file kka1221.zip -model_file kka1221.yaml -domain_type WLS
 JDK version is 1.8.0_311-b11
 JAVA_HOME = /home/wls1221/jdk8
 WLST_EXT_CLASSPATH = /home/wls1221/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 CLASSPATH = /home/wls1221/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 WLST_PROPERTIES = -Dcom.oracle.cie.script.throwException=true -Djava.util.logging.config.class=oracle.weblogic.deploy.logging.WLSDeployLoggingConfig
 /home/wls1221/Oracle/Middleware/Oracle_Home/oracle_common/common/bin/wlst.sh /home/wls1221/work/weblogic-deploy/lib/python/discover.py -oracle_home /home/wls1221/Oracle/Middleware/Oracle_Home -domain_home /home/wls1221/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain -archive_file kka1221.zip -model_file kka1221.yaml -domain_type WLS
 
 WebLogic Scripting Tool(WLST)を初期化しています...
  
 WebLogic Server Administration Scripting Shellへようこそ
  
 使用可能なコマンドに関するヘルプを表示するには、help()と入力してください
  
 ####<2022/12/19 18:02:53> <情報> <WebLogicDeployToolingVersion> <logVersionInfo> <WLSDPLY-01750> <The WebLogic Deploy Tooling discoverDomain version is 2.4.2:.53376e2:Nov 10, 2022 20:59 UTC>
 ####<2022/12/19 18:02:53> <情報> <WLSDeployLoggingConfig> <logLoggingDirectory> <WLSDPLY-01755> <The discoverDomain program will write its log to directory /home/wls1221/work/weblogic-deploy/logs>
 ####<2022/12/19 18:02:53> <情報> <ModelContext> <__copy_from_args> <WLSDPLY-01050> <WebLogic version for aliases is 12.2.1.4.0>
  
  :
  
 ###<2022/12/19 18:02:59> <情報> <filter_helper> <apply_filters> <WLSDPLY-20016> <No filters of type discover found in filter configuration file /home/wls1221/work/weblogic-deploy/lib/model_filters.json>
 ####<2022/12/19 18:02:59> <情報> <variable_injector> <inject_variables_keyword_file> <WLSDPLY-19519> <No variables were inserted into the model during variable replacement>
  
 Issue Log for discoverDomain version 2.4.2 running WebLogic version 12.2.1.4.0 offline mode:
 
 Total:       WARNING :     0    SEVERE :     0
  
 discoverDomain.sh completed successfully (exit code = 0)
 $
 $ ls -la
 合計 12
 drwxrwxr-x. 2 wls1221 wls1221   45 12月 19 18:02 .
 drwxrwxr-x. 8 wls1221 wls1221 4096 12月 19 17:39 ..
 -rw-r-----. 1 wls1221 wls1221 1337 12月 19 18:02 kka1221.yaml
 -rw-r-----. 1 wls1221 wls1221 2202 12月 19 18:02 kka1221.zip
 $
 

実行結果の以下の箇所で、正常に完了しているかが確認可能です。

 
 Total:       WARNING :     0    SEVERE :     0
 discoverDomain.sh completed successfully (exit code = 0)  

2) 作成したモデルとアーカイブファイルを移行先環境に転送

手順 1) で作成したモデルとアーカイブファイルを、SCP などを使用して移行先環境に転送します。


3) モデルを編集

モデルにはドメインの構成情報が記載されていますが、管理ユーザーやパスワード、JDBC データソースの接続先 DB ユーザーのパスワードなどについては記載されていません。

そのため、移行先環境に転送したモデルをテキストエディタで開き、管理ユーザーやパスワード、JDBC データソースの接続先 DB ユーザーのパスワード、ノードマネージャのパスワードを記載します。

また、移行先環境でドメイン名や管理対象サーバ名、ポート番号などを変更したい場合はあわせて変更後の名称を記載します。以下の例では「base_domain」というドメイン名から「test_domain」というドメイン名に変更しています。


(変更前の例)

 
 $ vi kka1221.yaml
 
 domainInfo:
     AdminUserName: --FIX ME--
     AdminPassword: --FIX ME--
 topology:
     Name: base_domain
     DomainVersion: 12.2.1.4.0
     NMProperties:
         JavaHome: /home/wls1221/jdk8
 
  :
  
 resources:
     JDBCSystemResource:
         JDBC Data Source-test:
             Target: Server1
             JdbcResource:
                 DatasourceType: GENERIC
                 JDBCConnectionPoolParams:
                     TestTableName: SQL ISVALID
                 JDBCDriverParams:
                     URL: jdbc:oracle:thin:@//weboel8:1521/v19
                     PasswordEncrypted: --FIX ME--
                     DriverName: oracle.jdbc.OracleDriver
                     Properties:
                         user:
                             Value: kka
 
  :
 

(変更後の例)

 
 domainInfo:
     AdminUserName: 'weblogic'
     AdminPassword: 'welcome1'
 topology:
     Name: test_domain
     DomainVersion: 12.2.1.4.0
     NMProperties:
         JavaHome: /home/wls1221/jdk8
  
  :
  
 resources:
     JDBCSystemResource:
         JDBC Data Source-test:
             Target: Server1
             JdbcResource:
                 DatasourceType: GENERIC
                 JDBCConnectionPoolParams:
                     TestTableName: SQL ISVALID
                 JDBCDriverParams:
                     URL: jdbc:oracle:thin:@//weboel8:1521/v19
                     PasswordEncrypted: 'welcome2'
                     DriverName: oracle.jdbc.OracleDriver
                     Properties:
                         user:
                             Value: kka
  
 :
 

なお、モデル内の「DomainVersion」に記載されている WebLogic Server のバージョン、「JavaHome」に記載されている JAVA_HOME のパスについては、変更は不要です。

4) createDomain を実行し、ドメインを作成

移行先環境にて環境変数の設定をした上で createDomain を実行し、ドメインを移行(新規作成)します。

 
 $ <WDT の展開先ディレクトリ>/bin/createDomain.sh -oracle_home $MW_HOME -domain_parent <DOMAIN_HOMEの1つ上の階層のパス> -archive_file <アーカイブファイル名> -model_file <モデル名>
 
※1行で記載します。
※Windows 環境で実行する場合は createDomain.cmd を実行します。
※「-domain_parent」で指定したディレクトリが存在していない場合は、あらかじめ作成しておく必要があります。

(実行例)

 
 $ JAVA_HOME=/home/wls1411/jdk8
 $ MW_HOME=/home/wls1411/Oracle/Middleware/Oracle_Home
 $ export JAVA_HOME
 $ export MW_HOME
  
 $ /home/wls1411/work/weblogic-deploy/bin/createDomain.sh -oracle_home $MW_HOME -domain_parent /home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains -model_file /home/wls1411/work/kka_test/kka1221.yaml -archive_file /home/wls1411/work/kka_test/kka1221.zip
 JDK version is 1.8.0_311-b11
 JAVA_HOME = /home/wls1411/jdk8
 WLST_EXT_CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 WLST_PROPERTIES = -Dcom.oracle.cie.script.throwException=true
 -Djava.util.logging.config.class=oracle.weblogic.deploy.logging.WLSDeployLoggingConfig
 /home/wls1411/Oracle/Middleware/Oracle_Home/oracle_common/common/bin/wlst.sh
 /home/wls1411/work/weblogic-deploy/lib/python/create.py -oracle_home
 /home/wls1411/Oracle/Middleware/Oracle_Home -domain_parent 
 /home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains -model_file 
 /home/wls1411/work/kka_test/kka1221.yaml -archive_file /home/wls1411/work/kka_test/kka1221.zip
  
 WebLogic Scripting Tool(WLST)を初期化しています...
  
 WebLogic Server Administration Scripting Shellへようこそ
  
 使用可能なコマンドに関するヘルプを表示するには、help()と入力してください
  
 ####<2022/12/19 21:14:06> <情報> <WebLogicDeployToolingVersion> <logVersionInfo> <WLSDPLY-01750> <The WebLogic Deploy Tooling createDomain version is 2.4.2:.53376e2:Nov 10, 2022 20:59 UTC>
 ####<2022/12/19 21:14:06> <情報> <WLSDeployLoggingConfig> <logLoggingDirectory> <WLSDPLY-01755> <The createDomain program will write its log to directory /home/wls1411/work/weblogic-deploy/logs>
 ####<2022/12/19 21:14:06> <情報> <ModelContext> <__copy_from_args> <WLSDPLY-01050> <WebLogic version for aliases is 14.1.1.0.0>
  
  :
  
 ####<2022/12/19 21:14:14> <情報> <DatasourceDeployer> <_add_named_elements> <WLSDPLY-09606> <Adding Properties user to JDBCDriverParams>
 ####<2022/12/19 21:14:14> <情報> <ApplicationDeployer> <__add_applications> <WLSDPLY-09301> <Adding Application mywar to Domain test_domain>
  
 Issue Log for createDomain version 2.4.2 running WebLogic version 14.1.1.0.0 offline mode:
  
 Total:       WARNING :     0    SEVERE :     0
  
 createDomain.sh completed successfully (exit code = 0)
 $
 

完了後、管理サーバや管理対象サーバを起動して移行が完了しているかを確認します。


WDT を使用した、既存ドメインに対する管理サーバや管理対象サーバの設定移行方法

WDT を使用した既存ドメインへの設定移行は、以下の流れで行います。


1) discoverDomain を実行し、モデルとアーカイブファイルを作成

移行元環境にて、環境変数の設定をした上で discoverDomain を実行して、モデルとアーカイブファイルを作成します。

手順は「WDT を使用した、ドメインの移行(新規作成)方法」をご参照ください。

今回は「WDT を使用した、ドメインの移行(新規作成)方法」で作成したモデルとアーカイブファイルを使用します。


2) 作成したモデルとアーカイブファイルを移行先環境に転送

手順 1) で作成したモデルとアーカイブファイルを、SCP などを使用して移行先環境に転送します。


3) モデルを編集

移行先環境に転送したモデルをテキストエディタで開き、管理対象サーバ名、ポート番号など、移行先環境で変更したい項目や追加したい項目を変更、追記します。

また、あわせて JDBC データソースの移行を行う場合は、JDBC データソースの接続先 DB ユーザーのパスワードを記載します。

以下の例では、既存の管理対象サーバ(Server1)のポート番号の変更と、新たに管理対象サーバ(Server2)の追加を行い、それらの管理対象サーバに対して既存の JDBC データソースやアプリケーションをデプロイします。

なお、「domainInfo」や「topology」などで変更不要な項目は削除しても問題ありません。

(変更例)

  
 $ vi kka1221.yaml
  
 topology:
     Server:
         Server1:
             ListenPort: 7003
         Server2:
             ListenPort: 7005
             WebServer:
                 WebServerLog:
                     NumberOfFilesLimited: false
 resources:
     JDBCSystemResource:
         JDBC Data Source-test:
             Target: Server1,Server2
             JdbcResource:
                 DatasourceType: GENERIC
                 JDBCConnectionPoolParams:
                     TestTableName: SQL ISVALID
                 JDBCDriverParams:
                     URL: jdbc:oracle:thin:@//weboel8:1521/v19
                     PasswordEncrypted: 'welcome2'
                     DriverName: oracle.jdbc.OracleDriver
                     Properties:
                         user:
                             Value: kka
 appDeployments:
     Application:
         mywar:
             SourcePath: wlsdeploy/applications/mywar.war
             ModuleType: war
             SecurityDDModel: DDOnly
             Target: Server1,Server2
 


4) updateDomain を実行し、管理サーバや管理対象サーバの設定を移行

移行先環境にて、環境変数の設定をした上で updateDomain を実行して、管理サーバや管理対象サーバの設定を移行します。

 
 $ <WDT の展開先ディレクトリ>/bin/updateDomain.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file <アーカイブファイル名> -model_file <モデル名>
 
※1行で記載します。
※Windows 環境で実行する場合は discoverDomain.cmd を実行します。

(実行例)

 
 $ JAVA_HOME=/home/wls1411/jdk8
 $ MW_HOME=/home/wls1411/Oracle/Middleware/Oracle_Home
 $ DOMAIN_HOME=/home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains/test_domain
 $ export JAVA_HOME
 $ export MW_HOME
 $ export DOMAIN_HOME
  
 $ /home/wls1411/work/weblogic-deploy/bin/updateDomain.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file /home/wls1411/work/kka_test/kka1221.zip -model_file /home/wls1411/work/kka_test/kka1221.yaml
 JDK version is 1.8.0_311-b11
 JAVA_HOME = /home/wls1411/jdk8
 WLST_EXT_CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 WLST_PROPERTIES = -Dcom.oracle.cie.script.throwException=true -Djava.util.logging.config.class=oracle.weblogic.deploy.logging.WLSDeployLoggingConfig
 /home/wls1411/Oracle/Middleware/Oracle_Home/oracle_common/common/bin/wlst.sh /home/wls1411/work/weblogic-deploy/lib/python/update.py -oracle_home /home/wls1411/Oracle/Middleware/Oracle_Home -domain_home /home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains/test_domain -archive_file /home/wls1411/work/kka_test/kka1221.zip -model_file /home/wls1411/work/kka_test/kka1221.yaml
 
 WebLogic Scripting Tool(WLST)を初期化しています...
  
 WebLogic Server Administration Scripting Shellへようこそ
  
 使用可能なコマンドに関するヘルプを表示するには、help()と入力してください
  
 ####<2022/12/20 0:00:19> <情報> <WebLogicDeployToolingVersion> <logVersionInfo> <WLSDPLY-01750> <The WebLogic Deploy Tooling updateDomain version is 2.4.2:.53376e2:Nov 10, 2022 20:59 UTC>
 ####<2022/12/20 0:00:19> <情報> <WLSDeployLoggingConfig> <logLoggingDirectory> <WLSDPLY-01755> <The updateDomain program will write its log to directory /home/wls1411/work/weblogic-deploy/logs>
 ####<2022/12/20 0:00:19> <情報> <ModelContext> <__copy_from_args> <WLSDPLY-01050> <WebLogic version for aliases is 14.1.1.0.0>
 
  :
 
 ####<2022/12/20 0:00:25> <情報> <DatasourceDeployer> <_add_named_elements> <WLSDPLY-09609> <Updating Properties user in JDBCDriverParams>
 ####<2022/12/20 0:00:25> <情報> <ApplicationDeployer> <__add_applications> <WLSDPLY-09301> <Adding Application mywar to Domain test_domain>
 
 Issue Log for updateDomain version 2.4.2 running WebLogic version 14.1.1.0.0 offline mode:
 
 Total:       WARNING :     0    SEVERE :     0
 
 updateDomain.sh completed successfully (exit code = 0)
 $
 

完了後、管理サーバや管理対象サーバを起動して変更が反映されているかを確認します。


WDT を使用した、既存ドメインに対するアプリケーションや JDBC データソースの移行方法

既存ドメインへのアプリケーションや JDBC データソースの移行は、前述の updateDomain を使用することでも実施が可能です。

ただし、updateDomain を使用する方法の場合は誤って管理サーバや管理対象サーバの設定を変更してしまうリスクがあることに留意してください。アプリケーションや JDBC データソースの移行のみを行いたいといったケースでは、updateDomain ではなく deployApps を実行します。


1) discoverDomain を実行し、モデルとアーカイブファイルを作成

移行元環境にて、環境変数の設定をした上で discoverDomain を実行して、モデルとアーカイブファイルを作成します。

手順は、前述の「WDT を使用した、ドメインの移行(新規作成)方法」項をご参照ください。

ここからは「WDT を使用した、ドメインの移行(新規作成)方法」で作成したモデルとアーカイブファイルを使用します。


2) 作成したモデルとアーカイブファイルを移行先環境に転送

手順 1) で作成したモデルとアーカイブファイルを、SCP などを使用して移行先環境に転送します。


3) モデルを編集

移行先環境に転送したモデルをテキストエディタで開き、移行先環境に移行してデプロイするアプリケーションの情報、JDBC データソースのパスワードなどを記載します。

(変更例)

 
 $ vi kka1221.yaml
 
 resources:
     JDBCSystemResource:
         JDBC Data Source-test:
             Target: Server_1,Server_2
             JdbcResource:
                 DatasourceType: GENERIC
                 JDBCConnectionPoolParams:
                     TestTableName: SQL ISVALID
                 JDBCDriverParams:
                     URL: jdbc:oracle:thin:@//weboel8:1521/v19
                     PasswordEncrypted: 'welcome2'
                     DriverName: oracle.jdbc.OracleDriver
                     Properties:
                         user:
                             Value: kka
 appDeployments:
     Application:
         mywar:
             SourcePath: wlsdeploy/applications/mywar.war
             ModuleType: war
             SecurityDDModel: DDOnly
             Target: Server_1,Server_2
 

※モデル内で管理サーバや管理対象サーバへの変更内容を記載していたとしても、deployApps を実行する際には、管理サーバや管理対象サーバへの変更内容は無視されます。


4) deployApps を実行し、アプリケーションや JDBC データソースを移行

移行先環境にて、環境変数の設定をした上で deployApps を実行して、アプリケーションや JDBC データソースを移行します。

今回は移行先環境に同名のアプリケーションや JDBC データソースが既に存在しているため、あらかじめ管理コンソールからアプリケーションと JDBC データソースを削除した上で検証を実施します。

 
 $ <WDT の展開先ディレクトリ>/bin/deployApps.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file <アーカイブファイル名> -model_file <モデル名>
 

(実行例)

 
 $ JAVA_HOME=/home/wls1411/jdk8
 $ MW_HOME=/home/wls1411/Oracle/Middleware/Oracle_Home
 $ DOMAIN_HOME=/home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains/test_domain
 $ export JAVA_HOME
 $ export MW_HOME
 $ export DOMAIN_HOME
 
 $ /home/wls1411/work/weblogic-deploy/bin/deployApps.sh -oracle_home $MW_HOME -domain_home $DOMAIN_HOME -archive_file /home/wls1411/work/kka_test/kka1221.zip -model_file /home/wls1411/work/kka_test/kka1221.yaml
 JDK version is 1.8.0_311-b11
 JAVA_HOME = /home/wls1411/jdk8
 WLST_EXT_CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 CLASSPATH = /home/wls1411/work/weblogic-deploy/lib/weblogic-deploy-core.jar
 WLST_PROPERTIES = -Dcom.oracle.cie.script.throwException=true -Djava.util.logging.config.class=oracle.weblogic.deploy.logging.WLSDeployLoggingConfig
 /home/wls1411/Oracle/Middleware/Oracle_Home/oracle_common/common/bin/wlst.sh /home/wls1411/work/weblogic-deploy/lib/python/deploy.py -oracle_home /home/wls1411/Oracle/Middleware/Oracle_Home -domain_home /home/wls1411/Oracle/Middleware/Oracle_Home/user_projects/domains/test_domain -archive_file /home/wls1411/work/kka_test/kka1221.zip -model_file /home/wls1411/work/kka_test/kka1221.yaml
 
 WebLogic Scripting Tool(WLST)を初期化しています...
 
 WebLogic Server Administration Scripting Shellへようこそ
 
 使用可能なコマンドに関するヘルプを表示するには、help()と入力してください
 
 ####<2022/12/20 1:08:40> <情報> <WebLogicDeployToolingVersion> <logVersionInfo> <WLSDPLY-01750> <The WebLogic Deploy Tooling deployApps version is 2.4.2:.53376e2:Nov 10, 2022 20:59 UTC>
 ####<2022/12/20 1:08:40> <情報> <WLSDeployLoggingConfig> <logLoggingDirectory> <WLSDPLY-01755> <The deployApps program will write its log to directory /home/w ls1411/work/weblogic-deploy/logs>
 ####<2022/12/20 1:08:40> <情報> <ModelContext> <__copy_from_args> <WLSDPLY-01050> <WebLogic version for aliases is 14.1.1.0.0>
 
 :
 
 ####<2022/12/20 1:08:44> <情報> <DatasourceDeployer> <_add_named_elements> <WLSDPLY-09606> <Adding Properties user to JDBCDriverParams>
 ####<2022/12/20 1:08:44> <情報> <ApplicationDeployer> <__add_applications> <WLSDPLY-09301> <Adding Application mywar to Domain test_domain>
 
 Issue Log for deployApps version 2.4.2 running WebLogic version 14.1.1.0.0 offline mode:
 
 Total:       WARNING :     0    SEVERE :     0
  
 deployApps.sh completed successfully (exit code = 0)
 $
 

完了後、管理サーバや管理対象サーバを起動して、アプリケーションや JDBC データソースの移行が反映されているか確認します。


WDT を使用する際の注意点

アプリケーションの配置場所によっては discoverDomain で 抽出ができない

discoverDomain を実行してドメイン情報やアプリケーションを抽出しますが、仕様上、 ORACLE_HOME 配下のファイルは取得されません。

移行元環境にて ORACLE_HOME 配下にアプリケーションを配置している場合、アプリケーションが抽出されないため、移行先環境に別途アプリケーションファイルを転送して手動でデプロイするといった対応が必要です。


オンライン(稼働中)での実行について

discoverDomain、updateDomain については、-admin_url オプションと -admin_user オプション を引数に指定することで、オンライン(稼働中)での実行が可能ですが、いくつか注意点があります。


オンライン実行時にはパスワード入力が要求される

discoverDomain、updateDomain をオンラインで実行する際には、ドメインの管理者ユーザーの(-admin_user オプションで指定したユーザー)のパスワードの入力が求められます。


updateDomain をオンラインで実行した場合の反映について

updateDomain をオンラインで実行した場合、変更内容によってはドメイン全体の再起動が必要となる場合があります。

実行完了時の終了コードが 「103」 の場合はドメイン全体の再起動が必要です。


deployApps のオンライン実行の可否

ユーザーガイドには deployApps についてもオンライン実行が可能である旨が記載されていますが、現行バージョン(2022年12月時点では 2.4.2) では、不具合により deployApps のオンライン実行が失敗することがオラクル社への確認で判明しています。


WDT 使用時のトラブルシューティング

WDT 使用時に何らかの問題が発生した場合は、以下の情報を取得の上、サポートセンターにお問い合わせください。(弊社とのプロダクトサポート契約が必要です)

  • WDT のログ
      UNIX:<WDT の展開先ディレクトリ>/logs/ 配下
      Windows:<WDT の展開先ディレクトリ>\logs\ 配下
  • 事象発生時の実行コマンド
  • 事象発生時の標準出力の内容
  • 移行元環境と移行先環境、それぞれの管理サーバ、管理対象サーバのサーバログ
     (デフォルトのパス)
      UNIX:$DOMAIN_HOME/servers/<該当のサーバ名>/logs/ 配下
      Windows:%DOMAIN_HOME%\servers\<該当のサーバ名>\logs\ 配下
  • 移行元環境と移行先環境、それぞれの設定ファイル一式
      UNIX:$DOMAIN_HOME/config/ 配下
      Windows:%DOMAIN_HOME%\config\ 配下
※これらの情報は初動調査に必要な情報のため、追加で別の情報の取得を依頼させていただく可能性がありますことをあらかじめご了承ください。

まとめ

WebLogic Server の新たな移行方法として WDT がリリースされました。
ドメインの移行やアプリケーションの移行(デプロイ)などにおいて、本記事がお役に立てれば幸いです。


執筆者情報

こばやしけんた プロフィール画像

2008年度アシストに入社後、Oracle WebLogic Server や Oracle HTTP Server を中心にサポートエンジニアとして活動しており、これまでに4000件以上の問い合わせを対応。



■本記事の内容について
 本記事に示した定義及び条件は変更される場合があります。あらかじめご了承ください。

■商標に関して
 ・Oracle®、Java、MySQL及びNetSuiteは、Oracle、その子会社及び関連会社の米国及びその他の国における登録商標です。
 ・Amazon Web Services、AWS、Powered by AWS ロゴ、[およびかかる資料で使用されるその他の AWS 商標] は、Amazon.com, Inc. またはその関連会社の商標です。
  文中の社名、商品名等は各社の商標または登録商標である場合があります。

関連している記事

  • Oracle Database
  • Oracle Cloud
2024.11.05

Oracle Database 23ai新機能!メモリーを有効活用する統合メモリー管理

2024年5月にOracle Cloud環境にて、先行してOracle DB 23aiがリリースされました。 Oracle Base Database ServiceにおけるOracle Database 23aiの検証結果を報告します。 今回は「統合メモリー管理」をテーマにお伝えします。

  • Exadata
  • Oracle Database
2024.10.23

Exadata X10Mの処理性能を徹底検証:X8M-2との比較で明らかに!

Oracle Exadata X10MではAMD社製のCPUが採用されたことで、DB Server、Storage ServerともにCPUの性能自体が向上しています。本記事をご覧の皆さんに、当社で実施したExadata X10Mの処理性能検証結果を共有します。

  • Oracle Cloud
  • Oracle Database
2024.10.21

【OCI】生成AIにGPUが適している理由

昨今のIT業界では生成AIとGPUが話題になっています。 もちろん、Oracle Cloud Infrastructure(OCI)でも生成AIサービスやGPUインスタンスが提供されています。 改めて、なぜGPUは生成AIに適しているのでしょうか。 その理由をCPUと比較しながらご紹介します。

ページの先頭へ戻る