2 Zero Downtime Migrationソフトウェアの設定

Zero Downtime Migrationソフトウェアをインストールするときは、最後にインストールを実行してから変更が加えられている可能性があるため、この項をよくお読みください。

Zero Downtime Migrationソフトウェア・キットでは、物理移行と論理移行の両方がサポートされています。1つのキットのみをインストールして、すべての機能を取得できます。

既知の問題の最新情報は、必ずZero Downtime Migrationリリース・ノートを参照してください。また、ソフトウェアのインストールおよび更新の詳細は、ダウンロードしたZero Downtime Migrationソフトウェアに同梱されているREADMEファイルを参照してください。

Zero Downtime Migrationソフトウェアがすでにホストにインストールされている場合は、それが利用可能な最新のリリースであることを常に確認する必要があります。Zero Downtime Migrationソフトウェアの更新では、既存のジョブ情報、メタデータおよびログ・ファイルを保持しながら、最新の機能と修正が提供されます。常にバージョンを確認し、ダウンロード・ページで入手できるものと比較して最新かどうかを判断してください。

既存のソフトウェアの最新リリースへの更新、ソフトウェアの削除およびZero Downtime Migrationサービスの起動と停止の詳細は、Zero Downtime Migrationサービスの管理を参照してください。

2.1 Zero Downtime Migrationソフトウェアのインストールのためのホストの準備

ホストにZero Downtime Migrationソフトウェアがまだインストールされていない場合は、要件に準拠していることを確認し、インストール前タスクを実行してから、ソフトウェアをダウンロードしてインストールします。ソフトウェアがにインストールされると、ホストはZero Downtime Migrationサービス・ホストと呼ばれます。

次の前提条件でホストをプロビジョニングし、次のインストール前タスクを完了してから、Zero Downtime Migrationソフトウェアをインストールします。

  • Zero Downtime Migrationサービス・ホストは、専用システムである必要がありますが、他の目的で共有できます。

    ただし、RHPサーバーがデプロイされている同じホストにZero Downtime Migrationサービスがインストールされている場合の詳細は、同じホストでのRHPおよびZero Downtime Migrationサービスの実行に関する項を参照してください。

  • Zero Downtime Migrationソフトウェアでは、次のいずれかのプラットフォームで実行されているスタンドアロンLinuxホストが必要です:

    Oracle Linux 7、Oracle Linux 8またはRed Hat Enterprise Linux 8。

  • Zero Downtime Migrationサービス・ホストは、ソースおよびターゲットのデータベース・サーバーに接続できる必要があります。

  • Linuxホストに100 GBの空き格納領域があることを確認します。

  • 既存のユーザーを使用するか、Zero Downtime Migrationサービス・ホストでrootユーザーとして、zdmグループを作成し、zdmuserユーザーをグループに追加します。

    たとえば、

    root> groupadd zdm
    root> useradd –g zdm zdmuser
  • glibc-develおよびexpectパッケージがインストールされていることを確認します。

    ベース環境"最小インストール"を使用したOracle Linux 8またはRed Hat Enterprise Linux 8インストールの場合は、unzip libaio oraclelinux-developer-release-el7 libnslおよびncurses-compat-libsパッケージもインストールする必要があります。
    - Minimum OS version Oracle Linux 7
     - Ensure Packages 'glibc-devel' and 'expect' are installed
     - For higher versions such as Oracle Linux 8:
     - Ensure Packages 'libnsl' and 'ncurses-compat-libs' are also installed
     - glibc-devel' and 'expect are a must for either versions
     - unzip libaio oraclelinux-developer-release-el7 libnsl and ncurses-compat-libs are required for Oracle Linux 8 and Red Hat Enterprise Linux 8
  • ホスト名およびIPアドレスの/etc/hostsエントリが想定どおりに構成されていることを確認し、Zero Downtime Migrationソフトウェアのインストールに選択されているホストで正しいIPアドレスに解決され、IPアドレスがpingで到達可能となるようにします。

  • インストール時に、カーネル・パラメータに適切な値を設定するために、欠落しているパッケージおよび指示がスクリプトからレポートされる場合があります。Zero Downtime Migrationソフトウェアをインストールする前に、必ず欠落しているパッケージをインストールしてカーネル・パラメータを設定します。

  • オプションで、ZDM_HOME環境変数をZero Downtime Migrationソフトウェアがインストールされるディレクトリの絶対パスに設定します。このマニュアルでは、すべての例で$ZDM_HOMEを使用します。

    zdmuser> export ZDM_HOME=absolute_path_to_zdm_home

2.2 Zero Downtime Migrationソフトウェアのインストール

コマンドはすべて、zdmuserとして実行されます。

  1. Zero Downtime Migrationソフトウェア・キットをhttps://www.oracle.com/database/technologies/rac/zdm-downloads.htmlからZero Downtime Migrationサービス・ホストにダウンロードします。

    ノート:

    必要に応じて、パッチ33509650: ZDM PATCH USING MOSを詳しく調べて、新しいパッチを検討します。
  2. ホーム・ディレクトリとベース・ディレクトリを作成します。

    ホーム・ディレクトリは、Zero Downtime Migrationソフトウェアがインストールされる場所です。

    ベース・ディレクトリは、Zero Downtime Migrationの構成ファイル、ログおよびその他のアーティファクトすべてが格納される場所です。

    たとえば:

    /u01/app/zdmhome

    /u01/app/zdmbase

  3. Zero Downtime Migrationソフトウェアをroot以外のユーザーとしてインストールします。

    この例では、インストール・ユーザーはzdmuserです。

    1. Zero Downtime Migrationソフトウェアがダウンロードされるディレクトリに移動し、ソフトウェアを解凍します。
      zdmuser> cd zdm_download_directory
      zdmuser> unzip zdmversion.zip 
    2. Zero Downtime Migrationのインストール・スクリプトを実行します。
      zdmuser>./zdminstall.sh setup oraclehome=zdm_oracle_home oraclebase=zdm_base_directory
              ziploc=zdm_software_location
      • zmdinstall.shは、インストール・スクリプトです。
      • oraclehomeは、Zero Downtime MigrationソフトウェアがインストールされるOracleホーム・ディレクトリの絶対パスです
      • oraclebaseは、Zero Downtime Migrationのすべての構成ファイル、ログおよびその他のアーティファクトが格納されるベース・ディレクトリの絶対パスです
      • ziplocは、Zero Downtime Migrationキットに含まれる圧縮ソフトウェア・ファイル(zip)の場所です

      たとえば、

      zdmuser>./zdminstall.sh setup oraclehome=/u01/app/zdmhome
              oraclebase=/u01/app/zdmbase ziploc=/u01/app/oracle/zdm/shiphome/zdm_home.zip
              

    Zero Downtime Migrationサービス・ホストでは、インストール・スクリプトを実行するためにPERLが必要になる点に注意してください。

    今後、oraclehome値はZDM_HOMEと呼び、oraclebase値はZDM_BASEと呼びます。

    インストールの最後に端末に表示される次のメッセージは無視します。これらのスクリプトを実行する必要はありません。

    As a root user, execute the following script(s):
            1. $ZDM_HOME/inventory/orainstRoot.sh
            2. $ZDM_HOME/root.sh
    
  4. Zero Downtime Migrationサービスをユーザーzdmuserとして開始します。
    zdmuser> $ZDM_HOME/bin/zdmservice start
    

    Zero Downtime Migrationを使用してデータベースを移行するには、zdmserviceを開始する必要があります。

    Zero Downtime Migrationサービスを停止する必要がある場合は、次のコマンドを実行します。

    zdmuser> $ZDM_HOME/bin/zdmservice stop
  5. Zero Downtime Migrationサービスのインストールが正常に終了したことを確認します。
    次のコマンドを実行すると、出力は次に示すようなものになります。
    zdmuser> $ZDM_HOME/bin/zdmservice status
    ---------------------------------------
            Service Status
    ---------------------------------------
    Running:       true
    Tranferport:   5000-7000
    Conn String:   jdbc:mysql://localhost:8899/
    RMI port:      8897
    HTTP port:     8898
    Wallet path:   /u01/app/zdmbase/crsdata/fopds/security
  6. 必要に応じて、デフォルトのMySQLポートを変更します。

    Zero Downtime Migrationでは、MySQLが内部的に使用され、前述のzdmservice statusの出力例に示すように、デフォルトでポート8897に構成されます。このポート番号を変更する場合は、MySQLポートの設定を参照してください。

2.3 Oracle Cloud InfrastructureのVMへのZero Downtime Migrationのインストール

次のステップを実行して、OCIのVMにZDMをインストールできます:

2.3.1 OCIのVMにZero Downtime Migrationをインストールする方法

  1. OCIでVMインスタンスを作成し、秘密キーと公開キーをダウンロードします。
  2. ダウンロードした秘密キーを使用して、SSHを介してVMインスタンスに接続します。
  3. Oracle Zero Downtime MigrationからZDMイメージをダウンロードします。
  4. ZDM用に次のソフトウェアをインストールします:
    • expect
    • glibc-devel
    • ncurses-compat-libs
    • libnsl
  5. 次のコマンドを実行します。
    sudo yum install oraclelinux-developer-release-el8 libnsl perl unzip glibc-devel expect libaio ncurses-compat-libs ncurses-devel numactl-libs openssl mlocate bind-utils
  6. ZDMホームおよびベースを格納するディレクトリを作成します。
    例: mkdir /home/opc/zdm
  7. ZDMイメージを解凍します。
    例: [opc@zdminstance20230201 zdm]$ unzip ZDMKIT.zip
  8. ZDMインストーラを実行します:
    [opc@zdminstance20230201 zdm]$ /home/opc/zdm/zdmkit/zdminstall.sh setup oraclehome=/home/opc/zdm/home oraclebase=/home/opc/zdm/base ziploc=/home/opc/zdm/zdmkit/zdm_home.zip
  9. ZDMサービスを開始します:
    [opc@zdminstance20230201 zdm]$ home/bin/zdmservice start
  10. インストールされているバージョンを確認します。
    次に例を示します:
    
    [opc@zdminstance20230201 zdm]$ home/bin/zdmcli -build 
    version: 21.0.0.0.0 
    full version: 21.4.0.0.0 
    patch version: N/A 
    label date: 221207.1 
    ZDM kit build date: Dec 16 2022 23:20:28 PST 
    CPAT build version: 22.10.0 
  11. ZDMがOCIのプロビジョニングされたコンピュートVM上に構成されている場合、ソース・データベース・システムまたはターゲット・データベース・システム(あるいはその両方)を解決するために/etc/hostsの更新が必要になる場合があります。なんらかの理由でZDMコンピュートVMが再起動された場合、/etc/hostsのカスタム・エントリは保存されません。このようなカスタム・エントリを保存するには、/etc/oci-hostname.confを次のように編集します:
    # This configuration file controls the hostname persistence behavior for Oracle Linux 
    
    # compute instance on Oracle Cloud Infrastructure (formerly Baremetal Cloud Services) 
    
    # Set PRESERVE_HOSTINFO to one of the following values 
    
    #   0 -- default behavior to update hostname, /etc/hosts and /etc/resolv.conf to 
    
    #        reflect the hostname set during instance creation from the metadata service 
    
    #   1 -- preserve user configured hostname across reboots; update /etc/hosts and 
    
    #           /etc/resolv.conf from the metadata service 
    
    #   2 -- preserve user configured hostname across instance reboots; no custom 
    
    #        changes to /etc/hosts and /etc/resolv.conf from the metadata service, 
    
    #        but dhclient will still overwrite /etc/resolv.conf 
    
    #   3 -- preserve hostname and /etc/hosts entries across instance reboots; 
    
    #        update /etc/resolv.conf from instance metadata service 
    
    PRESERVE_HOSTINFO=2      ==> Set this to at least 2.  
    /etc/hostsのエントリは、OCIのプロビジョニングされたコンピュート・インスタンスまたはVMで実行されているZDMのインスタンスを再起動しても保存されるようになりました。

2.4 Oracle Cloud InfrastructureインスタンスでのRed Hat Enterprise Linux 8へのZero Downtime Migrationのインストール

OCIインスタンスのRed Hat Enterprise Linux 8にZDMをインストールするには、次のステップを実行します:

2.4.1 Red Hat Enterprise Linux 8にZero Downtime Migrationをインストールするには

  1. ここからRed Hat Enterprise Linux 8.8 KVMゲスト・イメージを入手します。
  2. イメージを新しいOCIバケットにアップロードします。
  3. イメージをカスタム・イメージとしてインポートします。
  4. イメージからインスタンスを作成します。
  5. 新しいSSHキーを生成します。
  6. RHEL8 OCIインスタンスに接続します。
次のステップを実行します。
  1. 次のコマンドを実行して、yumリポジトリを構成します:
    $ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
    $ sudo yum-config-manager --add-repo http://yum.oracle.com/repo/OracleLinux/OL8/baseos/latest/x86_64
    $ sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    $ sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
    $ sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta
  2. 次のコマンドを実行して、swapを有効にします:
    $ sudo swapon --show
    $ sudo fallocate -l 1G /swapfile
    $ sudo chmod 600 /swapfile
    $ sudo mkswap /swapfile
    $ sudo swapon /swapfile
    $ sudo swapon --show
  3. 次のように、必要なRed Hat Enterprise Linux 8パッケージをインストールします:
    $ sudo yum install zip.x86_64 --nogpgcheck 
    $ sudo yum install expect.x86_64 --nogpgcheck 
    $ sudo yum install glibc-devel.x86_64 --allowerasing --nogpgcheck
    $ sudo yum install libnsl.x86_64 --allowerasing --nogpgcheck
    $ sudo yum install ncurses-compat-libs.x86_64 --allowerasing --nogpgcheck
    $ sudo yum install libaio.x86_64 --allowerasing --nogpgcheck
  4. Zero Downtime Migrationをインストールします。