オンプレミスおよびOCI構成の設定

オンプレミスからクラウドへのフェイルオーバー用にオンプレミスおよびOracle Cloud Infrastructure (OCI)インスタンスを構成します。

プライマリ・データベース構成の検証

Oracle Cloud Infrastructure (OCI)でスタンバイ・データベースをインスタンス化するには、次の前提条件を満たす必要があります。

  1. OCI VM DBシステムの名前解決を構成します。
    /etc/hostsなどの静的ファイルを使用するか、オンプレミスDNSを構成してOCIインスタンスのパブリックIPアドレスを適切に解決します。
  2. オンプレミス・ファイアウォールを構成して、オンプレミス・システムからVM DBシステムへのSSHおよびOracle Netアクセスを許可します。
  3. ネットワーク・セキュリティ・ポリシーに従って、iptablesなどの機能を使用して、クラウドIPアドレスからの制限付きアクセスでオープンするようにプライマリ・データベースのリスナー・ポートを構成します。
    DR状況のOracle Data Guardではクラウド・インスタンスからオンプレミス・データベースへのアクセスが必要であるため、クラウドIPアドレスからの制限付きアクセスでプライマリ・データベース・リスナー・ポートを開く必要があります。ネットワーク管理者は、クラウド側のネットワーク構成と同様の操作を実行する必要があります。
  4. スタンバイ・データベースからオンプレミス・マシンにプロンプトレスSSHが構成されていることを確認します。
    これは、プロビジョニング・プロセス中にオンプレミスからクラウド、およびクラウドからオンプレミスの両方に対して構成されます。
  5. VM DBからオンプレミス・マシンへのインバウンドSSH接続を許可するようにオンプレミス・ファイアウォールを構成します。
  6. オンプレミス・データベースのOracleホームは、スタンバイ・データベースと同じOracleパッチ・セットである必要があります。
    OCI環境が異なるバンドル・パッチ・レベルにあり、オンプレミス・データベースが異なるバンドル・パッチまたはPSUにある場合は、ソース環境にクラウド環境のデータベース・ホームと同じデータベース・バンドル・パッチ・レベルにパッチを適用することをお薦めします。
    コマンド$ORACLE_HOME/OPatch/opatch lspatchesを使用して、オンプレミス環境とOCI環境の両方にインストールされている個別パッチを確認します。
  7. オンプレミス・プライマリ・データベースは、まだ既存Oracle Data Guard Broker構成に含まれていません。
    オンプレミス・データベースに既存のブローカ構成がある場合は、既存のブローカ構成に新しいスタンバイ・データベースを追加します。
    SQL> select decode(count(1),0,'NOCONFIG') from v$DG_BROKER_CONFIG;
    NOCONFIG以外の値の出力は、既存のブローカ構成があることを意味します。

オンプレミスとOCI間の接続性のテスト

Oracle Cloud Infrastructure (OCI)でオンプレミス・データベースとVM DBシステム間の接続をテストします。

  1. オンプレミス・インスタンスで開いているポートをリストします。ポート1521が開いていない場合は、リストにポートを追加します。
    # firewall-cmd --list-ports
    ポートが追加された場合、出力は次のようになります:
    1521/tcp
  2. ポート1521がリストにない場合は、rootとしてログインし、ポート1521を追加します。ファイアウォールを再起動し、ステータスを確認してから、ポートを再度リストします。
    [root@bastion tmp]# firewall-cmd --add-port=1521/tcp --permanent
    
    [root@bastion tmp]# systemctl restart firewalld
    [root@bastion tmp]# systemctl status firewalld
    
    [root@bastion tmp]# firewall-cmd --list-ports --permanent
  3. オンプレミス・システムから、リスナーがLISTENERという名前のデフォルト・リスナーであることを確認します。
    $lsnrctl show current_listener | grep Current Listener
    出力はOutput: Current Listener is LISTENERのようになります。
  4. オンプレミス・システムから、リスナー・ポートが1521であることを確認します。
    $lsnrctl status| grep 'Connecting to'  
    Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=(1521)))
  5. オンプレミス・システムから、ポート1521を使用してスタンバイ・データベース・インスタンスにtelnetします。
    [root@onpremise1 ~]# telnet standby_database_IP_address 1521
  6. オンプレミス・システムから、TNS Pingユーティリティを使用してスタンバイ・データベース・インスタンスにpingを実行します。
    [oracle@bastion dbhome_1]$ tnsping standby_database_host_IP_address
    
  7. オンプレミス・システムから、スタンバイ・データベース・インスタンスにpingを実行します。
    [oracle@bastion dbhome_1]$ ping standby_database_host_IP_address
  8. VM DBシステムから、ポート1521を使用してオンプレミス・データベース・インスタンスにtelnetします。
    [root@onpremise1 ~]# telnet on-premises_database_IP_address 1521
  9. クラウドのVM DBシステムからTNS Pingユーティリティを使用して、オンプレミス・データベース・インスタンスにpingを実行します。
    [oracle@drdb opc]$ tnsping on-premises database host IP address
  10. VM DBシステムから、オンプレミス・データベース・インスタンスにpingを実行します。
    [oracle@drdb opc]$ ping on-premises database host IP address
3つの接続方法はすべて、オンプレミスとクラウド内のVM DBシステムの間で機能します。