移行ユーティリティを使用したクラシックからマイクロサービス・アーキテクチャへの移行
Oracle GoldenGate ClassicからMicroservicesへの移行ユーティリティは、Oracle GoldenGate Classic ArchitectureインストールからMicroservicesデプロイメントに移行するために使用されます。このユーティリティは、Classic ArchitectureインストールからMicroservicesデプロイメントにExtractおよびReplicatを移行し、ポンプExtractを分散パスに変換する対話型ユーティリティです。また、証跡ファイル、チェックポイントおよびその他の関連するアーティファクトも移行します。
移行ユーティリティは、My Oracle Support (MOS)ポータルで、パッチ37274898として入手できます。
パッチの更新は、必要に応じてリリースされます。パッチの説明には、最新のビルド番号の詳細が含まれます。
Migration Utility使用の前提条件
移行ユーティリティを使用するための前提条件は次のとおりです。
-
バンドル・パッチ200714以降を使用したOracle GoldenGate 19c以降。これは、ソースClassic Architectureインストールの最小バージョンです。
ノート:基礎となるデータベース/システムが以前のバージョン(Oracle GoldenGate for DAAなど)ですでにOracle GoldenGate Microservices Architectureをサポートしている場合は、移行ユーティリティをOracle GoldenGate 21cとともに使用することもできます。基礎となるデータベースがMicroservices Architectureをサポートしていない場合は、Oracle GoldenGate 26aiを異種データベースに使用できます。
-
Javaバージョン1.8 JRE以降(Oracle GoldenGateで提供されるものと同じ)。
-
Microservices Architectureを使用して作成した新しいデプロイメントは、Classic Architectureインストールに対してローカルにするか、Classic Architectureホーム・ファイル・システムを同じホストで使用可能にする必要があります。
-
新しいMicroservices Architectureデプロイメントが作成され、すべてのサービスが実行されています。
-
Classic Architectureのインストールは、移行中に停止する必要があります。サーバー・コレクタ(存在する場合)も停止していることを確認します。異常終了したプロセスは再起動し、正常にシャットダウンする必要があります。
-
移行ユーティリティは、Microservices Architectureデプロイメントに対して環境変数が設定されているシェル/コマンド・プロンプトから実行する必要があります。
OGG_HOMEの環境変数は、Oracle GoldenGate Microservicesソフトウェア・ディレクトリの場所に設定する必要があります。Microsoft Windowsでは、
PATH変数がOGG_HOME\libを指している必要があります。UNIXおよびLinuxプラットフォームでは、
LD_LIBRARY_PATHはOGG_HOME/libを指す必要があります。
移行ユーティリティの制限事項
移行ユーティリティでは、次の設定を持つプロセスは移行できません。
-
変換を実行する、または
DBLOGINを持つポンプExtractプロセス。 -
クラシックExtract (Oracle GoldenGate 19cでは非推奨であり、19.1を超えるターゲットMAのバージョン21cではサポートが終了しました。)
-
次のパラメータを使用するプロセス:
-
MACRO -
OBEY -
MACROCHAR
-
-
リモート証跡ファイル、リモート・タスクまたは初期ロードの使用。
-
証跡ファイルの絶対パス名。クラシック証跡ファイルは、
./dirdat(またはその中のサブディレクトリ)に存在する必要があります。証跡ファイルが別のディレクトリにある場合は、./dirdatに移動し、Extractのconvchkユーティリティを使用してチェックポイントを変更できます。次に、影響を受けるReplicatのパラメータを変更します。Oracle GoldenGate 26aiのOracle GoldenGateパラメータおよび機能リファレンスのconvchkを参照してください。 -
INCLUDEの制限事項:
-
ネストされたINCLUDES
-
ExtractおよびReplicatのみで、Extractポンプでは使用できません。
-
-
Oracle GoldenGate for DAA (Only): ExtractおよびReplicatグループごとに、対応する
.propertiesファイルで、クラシック・ファイル・システム内のファイルを参照する値を持つプロパティを手動で検査する必要があります。これらのプロパティーごとに、次の手動移行手順を実行します。-
参照ファイルをMicroservicesデプロイメント・ファイル・システムにコピーします。
-
Microservicesデプロイメント・ファイル・システムの新しいファイル・パスを参照するようにプロパティ値を変更します。
-
移行ユーティリティの実行
この項のタスクを開始する前に、「移行ユーティリティを使用するための前提条件」に記載されているステップを完了していることを確認してください。
コマンド・プロンプトで次のステップを使用して、移行ユーティリティを実行します。
-
次のコマンドを実行して、移行ユーティリティを起動します。
java -jar ogg-migration-package-23.4.0.0.0.jar -classicHome /scratch/ogg/home -dryrunjava -jar ogg-migration-package-23.4.0.0.0.jar -debugjava -jar ogg-migration-package-23.4.0.0.0.jar -helpこのコマンドで使用可能なオプションは次のとおりです。
-
-classicHome path: (必須) Oracle GoldenGate Classicソフトウェア・ディレクトリの場所を指す必要があります。 -
-dryrun: (オプション)移行がシミュレートされ(ドライ・ランを実行)、発生する可能性がある問題をチェックすることを示します。 -
-debug: このオプションはオプションですが、ユーティリティでこのオプションを使用することをお薦めします。デバッグ・レベルのロギングおよび診断を有効にします。より詳細なログ・データを提供し、移行が失敗した場合にクラシックとMAの両方のアーティファクトを含むZipファイルを生成します。 -
-skipPumpURI: ポンプ移行時のデフォルトURIの受入れを指定します -
-dbtype: データベースの名前を指定します。有効な値は'ORACLE'、'MYSQL'、'MSSQL'、'POSTGRESQL'、'SYBASE'、'DB2400'、'DB2ZOS'、'DB2LUW'、'TERADATA'、'TIMESTEN'です -
-help: 使用状況を表示します。
-
-
このユーティリティでは、MAデプロイメントのサービス・マネージャのユーザー資格証明の入力を求められます。
*************************************************************************** ** Oracle GoldenGate Classic to Microservices Migration Utility ** ** Version 23.4.0.0.0 Build 66 at Fri Jan 22 17:24:41 UTC 2024 ** ** Copyright (C) 1995, 2024, Oracle and/or its affiliates. All rights reserved. ** ** ** ** Operating system character set identified as UTF-8. ** ******************************************************************************* Command Entered: -classicHome /ogg/payroll -debug Log File for this session is /ogg/payroll/./Migration081321105419.log. Debug Mode is Enabled. Enter Service Manager Credentials: User Id: dba Password: -
ユーティリティは、ホスト上のサービス・マネージャをスキャンし、複数のデプロイメントがある場合に移行するデプロイメントの選択肢を提供して、続行するよう要求します。
Scanning for Microservices Deployments... Using Deployment payroll [cf4c7c93-3a1c-4cbc-b1ab-bc942bab7645] The following processes will be migrated to deployment payroll: Extracts: EXTE Replicats: REPW Pumps: DPE Do you wish to continue? (yes/no):>yesと入力して続行します。 -
このユーティリティは、クラシック・デプロイメントからターゲットのMicroservicesデプロイメントにデータベース資格証明を移行し、クラシック・デプロイメント内のすべての証跡ファイルをコピーして、すべてのExtractおよびReplicatプロセスを移行します。
Migrating Credentials from /ogg/payroll/./dircrd Migrating Credentials for Domain Payroll with an alias of ogg. Migrating Credentials for Domain Payroll with an alias of user. Copying Trail Files from /ogg/payroll/dirdat to /ogg/Microservices/payroll/var/lib/data. 235 trail files copied. Migrating EXTRACT EXTE to http://10.20.0.221:9901. Checkpoint File(s) Copied and Converted Successfully. Parameter File EXTE.prm Saved Successfully. Migration of Extract EXTE Completed Successfully. Migrating REPLICAT REPW to http://10.20.0.221:9901. Parameter File REPW.prm Saved Successfully. Checkpoint File(s) Copied and Converted Successfully. Migration of Replicat REPW Completed Successfully. -
その後、ユーティリティによってすべてのExtractポンプ・プロセスが移行され、それぞれに対するターゲット・レシーバ・サービスのURLの入力が求められます。デフォルト値を受け入れるには、Enterキーを押します。
別のターゲットを使用している場合は、URLを入力します。デフォルトでは、このユーティリティは、クラシック・ポンプが別のクラシック・デプロイメント・サーバー・プロセスに送信されていることを前提としています。デフォルトのURLを使用すると、分散サービスはクラシック・ターゲットにリンクできます。後でターゲットのクラシック・デプロイメントも移行する予定の場合は、新しく作成した分散パスを同時に変更する必要があります。詳細は、移行の異なるユース・ケースを参照してください。
ノート:ループバック・ポンプは、クラシック・ポンプが同じデプロイメントの同じManagerに送信されるテスト環境で共通です。このループバック・ポンプは、移行されたMAデプロイメントのReceiver Serviceに自動的にルーティングされます。
Migrating PUMP PMPW2E to http:// 10.20.0.221:9902. Use Default Pump Target URI of ogg://ushost1:9903/services/v2/targets?trail=./bb? Press Enter to Accept or type Alternate URI:> Creating Distribution Path for Pump PMPW2E. Distribution Path Created Successfully. Setting trail sequence to 235 with an RBA of 1319472691. Migration of Pump PMPW2E Completed Successfully. Migrating Manager tasks to http://10.20.0.221:9901. Creating Task for Parameter PurgeTrail-aa. Task Created Successfully. Creating Task for Parameter Purge-Extract. Task Created Successfully. 2 Tasks were migrated, 2 Successfully, 0 with errors. Migrating Lag Report. Creating Task for Parameter LagReport. Task Created Successfully. Migration pf Manager Tasks Completed Successfully. -
次に、ユーティリティはGLOBALS構成ファイルのパラメータを移行し、発生した問題を報告するかどうかを尋ねます。
Do you wish to migrate your GLOBALS parameters? (yes/no):> y GLOBAL parameters successfully migrated, 3 parameters merged. -
このユーティリティは、既存のウォレット・エントリが存在する場合はコピーするように要求し、ターゲット・ウォレットにエントリが存在する場合は警告を発行します。これらのターゲット・ウォレット・エントリは上書きされます。このタスクが完了すると、ユーティリティーは終了します。
Your Classic Deployment has existing wallet entries. Do you wish to copy them? (yes/no):> y Copying Oracle Wallet Entries. WARNING: Target deployment has existing wallet entries and will be overwritten! Do you wish to continue? (yes/no):> y Wallet entries successfully copied. Migration Processing Complete, 3 processes were migrated successfully.移行が成功した場合は、
.migratedを名前に追加することで、クラシックdirchkディレクトリ内のチェックポイント・ファイルの名前が変更されます。これにより、クラシック・デプロイメント・プロセスが誤って起動されるのを防ぎます。ユーティリティで問題が発生し、移行プロセスを完了できない場合、ユーティリティは実行したすべての作業のロールバックを実行し、クラシック・デプロイメントを元の状態にリストアします。問題の診断に役立つログ・ファイル
classic configurationおよびtarget configurationを含む診断Zipファイルが生成されます。
移行の様々なユース・ケース
Oracle GoldenGate Classic Architectureデプロイメントは通常、自己完結型ではありません。デプロイメントは通常、非常に複雑な相互接続トポロジを持つポンプ・プロセスを使用して、証跡データを他のデプロイメントに送信します。デプロイメントをマイクロサービスに移行しても、別のクラシック・デプロイメントまたはマイクロサービス・デプロイメントに証跡データを送信している場合があります。Microservices Architectureの主な機能は、TLS/SSLやセキュアなWebソケットなどの確立されたセキュリティ・プロトコルを使用してデプロイメントを保護する機能です。
デプロイメントを移行する場合は、よく考えられたアプローチを使用する必要があります。通常、ソース・デプロイメントとターゲット・デプロイメントは、一度にすべてではなく個別に移行することをお薦めします。移行ユーティリティでは、デプロイメントを1つずつ移行できます。ソース・デプロイメントでは、セキュアでないプロトコルを使用してClassic Server/CollectorまたはReceiver Serviceと通信するため、移行された分散パスでは、パス内のレガシーoggプロトコルが使用されます。これは機能しますが、完全にセキュアなデプロイメントを作成する際にMicroservices Architectureのセキュリティ機能を利用することはありません。
移行ユーティリティによって生成された分散パスは、すべてのデプロイメントがMicroservices Architectureに移行された後、またはソース・デプロイメントとターゲット・デプロイメントが移行されるたびに、wssまたはwsプロトコルを使用する分散パスに置き換えることをお薦めします。
デプロイメントおよびプロセスをマイクロサービス・アーキテクチャに段階的に移行できるように、ソースおよびターゲットのClassic Architectureデプロイメントを個別に移行できます。
次に、分散パスの設定時に使用される様々なユースケースおよび関連する分散プロトコルを示します。
| ソース | ターゲット | 配布プロトコル | 摘要 |
|---|---|---|---|
ハブ・アーキテクチャ(配布証跡なし) クラシックからマイクロサービスへの移行 |
該当なし | 該当なし | 該当なし |
| クラシックからマイクロサービスへの移行 | クラシック・デプロイメント | oggプロトコルによるクラシック配備のターゲット指定 | - |
| クラシックからマイクロサービスへの移行 | マイクロサービス・デプロイメント | oggプロトコル | オプションで、DISTPATHを削除して再作成し、wsまたはwssプロトコルを使用します(ターゲットがリバース・プロキシで保護されている場合)。 |
| クラシック・デプロイメント | クラシックからマイクロサービスへの移行 | 受信サービスをターゲットにするためのポンプ | ソース・ポンプを変更する必要があります。 受信側サービスポートおよびリモート証跡 |
| マイクロサービスの導入 | クラシックからマイクロサービスへの移行 | oggプロトコル | DISTPATHを削除して再作成し、wsまたはwssプロトコルを使用します(ターゲットがリバース・プロキシで保護されている場合)。 |
ターゲットがマイクロサービスであるクラシックからマイクロサービスへのソースの移行
このユース・ケースでは、順序番号(seqno)およびRBA値を指定することで、wsまたはwssプロトコル(ターゲットがリバース・プロキシで保護されている場合)を使用するための分散パスを削除して再作成できます。ターゲット・デプロイメントがMicroservices Architectureを使用しているため、これはオプションです。
管理クライアントを実行し、ソース・デプロイメントに接続してSEQNOおよびRBAの値を取得します:
OGG (http://north:9001)> INFO DISTPATH dpe, DETAIL
Path Name: dpe Status: running
Source: trail://north:9002/services/v2/sources?trail=ea
Target: ogg://south:9003/services/v2/targets?trail=ra
Authentication Method: USERIDALIAS ggsca domain OracleGoldenGate
[...]
Checkpoints:
Input Checkpoint:
Current:
Name: ea
Sequence: 14
Offset: 2579
Path: /u01/ogg_deployments/depl_north/var/lib/data/
[...]
移行ユーティリティによって作成された分散パスを再作成して再配置することで、分散パスをwsまたはwssプロトコルに変換します。
OGG (http://south:9001)> DELETE DISTPATH dpe, DETAIL
## If using Secure Web Socket Protocol (wss)
OGG (http://south:9001)> ADD DISTPATH dpm
SOURCE trail://src_host:9002/services/v2/sources?trail=ea
TARGET wss://trg_host:9003/services/v2/targets?trail=ra
AUTHENTICATION CERTIFICATE default
## If using Web Socket Protocol (ws)
OGG (http://south:9001)> ADD DISTPATH dpm
SOURCE trail://src_host:9002/services/v2/sources?trail=ea
TARGET ws://trg_host:9003/services/v2/targets?trail=ra
AUTHENTICATION USERIDALIAS ggsca DOMAIN OracleGoldenGate
OGG (http://south:9001)> ALTER DISTPATH dpm, BEGIN SEQNO 14, RBA 2579
OGG (http://south:9001)> START DISTPATH dpm
ソースがマイクロサービスであるクラシックからマイクロサービスへのターゲットの移行
このユース・ケースでは、ターゲットがリバース・プロキシで保護されている場合、wsまたはwssプロトコルを使用するように分散パスを削除して再作成する必要があります。「マイクロサービスとしてターゲットを使用するクラシックからマイクロサービスへのソースの移行」のステップに従って、ターゲット・デプロイメントで分散パスを削除して再作成します。
ソースがクラシックであるクラシックからマイクロサービスへのターゲットの移行
ソース・デプロイメントがClassic Architectureにあるときにターゲット・デプロイメントをMicroservices Architectureに移行する場合は、次の追加ステップを実行する必要があります。
-
ソース・ルーティングのPumpポートをターゲット・レシーバ・サービスに変更します。
-
dirdatディレクトリは、ターゲットのMicroservicesファイル階層では必要ありません。次の例に示すように、Extractポンプ・パラメータ・ファイルでRMTTRAILファイルを./dirdat/raから./raに変更します。
次の例に示すように、ターゲット・マネージャのポート番号が受信サービス・ポート番号9903に変更され、RMTTRAILファイルのパスがExtractポンプ・パラメータ・ファイルで変更されています。
GGSCI> STOP EXTRACT PMPW2E
GGSCI> EDIT PARAMS PMPW2E
Extractポンプ・パラメータ・ファイルは次のとおりです。
EXTRACT PMPW2E
USERIDALIAS ggeast,
target uri: host1:9903/services/v2/targets?trail=./bb? ENCRYPT AES192,
RMTTRAIL ./rt SEQUENCE hr.employees_seq; TABLE hr.*;
変更の完了後にExtractポンプを再起動します。
GGSCI> START EXTRACT PMPW2E
ノート:ターゲットに証跡ファイルは配信されません。
移行を開始する前に、ソースのすべてのプロセスを正常に停止します。