部署

Learn about best practices for deploying and configuring Oracle RAC with CMAN and Oracle Notification Server proxy.CMAN 是資料庫的一部分。如果您執行 Enterprise Edition 或更新版本,則免費。Oracle Notification Server 代理主機也是免費的。

在 OCI Compute 虛擬機器上部署 CMAN

請依照下列步驟安裝 CMAN ,並將其部署在 OCI Compute 虛擬機器上:

  1. 請從 edelivery.oracle.com 下載最新的 Oracle Database 23ai 用戶端軟體或 Linux x86-64。
  2. 使用 Oracle Database Client Installation Guide for Linux 手冊中 Installing Oracle CMAN Using an Image File 小節的 image file 來安裝 CMAN 。
  3. 若要在不使用 image file 的情況下安裝 CMAN 軟體,請使用下列指令:
    /home/oracle/install/client/runInstaller -ignorePrereq -waitforcompletion  -silent\
    UNIX_GROUP_NAME="oinstall" \
    INVENTORY_LOCATION= /u01/app/oraInventory \
    ORACLE_HOME= /u01/app/oracle/product/23ai/client_1 \
    ORACLE_BASE= /u01/app/oracle \oracle.install.client.installType=Custom \
    oracle.install.client.customComponents="oracle.sqlplus:23.0.0.0.0,oracle.network.client:23.0.0.0.0,oracle.network.cman:23.0.0.0.0,oracle.network.listener:23.0.0.0.0" || \
    sync
  4. 如果在 cman-host 機器上啟用防火牆,請使用 root 來設定下列防火牆規則:
    sudo firewall-cmd --permanent --add-port=1521/tcp
    sudo firewall-cmd --add-port=1521/tcp
    sudo firewall-cmd --add-port=6200/tcp
    sudo firewall-cmd --permanent --add-port=6200/tcp
  5. 在文件之後安裝 CMAN 。
  6. Configure the computer that hosts CMAN by setting up parameters in the cman.ora file following the Oracle Connection Manager documentation.
    機器 IP 主機名稱 網域 Version

    名稱:OnsProxyVcn

    IPv4 CIDR 區塊:10.0.0.0/16

    公用 IP :129.146.104.209

    專用 IP :10.0.0.90

    cman-host subnet.onsproxyvcn.oraclevcn.com 23.5
    以下為 cman.ora 檔案的範例:
    #CMAN Alias
    CMAN_cman-host.sub12161926540.onsproxyvcn.oraclevcn.com =(configuration=
    # Listening address of the cman  (address=(protocol=tcp)(host=cman-host.sub12161926540.onsproxyvcn.oraclevcn.com)(port=1521))
    # Configuration parameters of this CMAN
    parameter_list =    (connection_statistics=yes)
    )  
    (next_hop=(description=(address=(protocol=tcp)(port=1521)(host=racnode-scan.sub12161926541.onsproxyvcn.oraclevcn.com))))
    (rule_list=    
        (rule=       
            (src=*)(dst=racnode2.sub12161926541.onsproxyvcn.oraclevcn.com)(srv=*)(act=accept)
            (action_list=(aut=off)(moct=0)(mct=0)(mit=0)(conn_stats=on))
        )    
        (rule=       
            (src=*)(dst=racnode1.sub12161926541.onsproxyvcn.oraclevcn.com)(srv=*)(act=accept)
            (action_list=(aut=off)(moct=0)(mct=0)(mit=0)(conn_stats=on))
        )    
        (rule=       
            (src=*)(dst=racnode-scan.sub12161926541.onsproxyvcn.oraclevcn.com)(srv=*)(act=accept)
            (action_list=(aut=off)(moct=0)(mct=0)(mit=0)(conn_stats=on))
        )    
        (rule=       
            (src=localhost)(dst=*)(srv=*)(act=accept)
            (action_list=(aut=off)(moct=0)(mct=0)(mit=0)(conn_stats=on))
        )  
      )
    )
  7. 使用下列指令在 cman-host 上啟動 Connection Manager :
    # cmctl startup -c CMAN_cman-host.sub12161926540.onsproxyvcn.oraclevcn.com

在 Google Cloud 虛擬機器上設定應用程式用戶端

請依照下列步驟,在 Google Cloud 的虛擬機器上設定應用程式用戶端。

  1. 依照 Oracle Database Client Installation Guide for Linux 手冊中的步驟,在從屬端機器上安裝 Oracle Database 。
    使用下列組態在 Google Cloud 中建立從屬端虛擬機器:
    從屬端 詳細資訊
    從屬端機器

    名稱:client-host

    機器類型:e2-medium

    主要內部 IP 位址:10.180.0.2

    公用 IP :34.106.100.241

    主機名稱:client-host.c.oraoperator-on-gke.internal

  2. 在用戶端主機機器上,複製必要的 .jar 檔案:
    1. 請從 Maven Central 上的 Oracle JDBC 開發人員指南下載 ons-23.5.0.24.07.jar 和 jar 檔案。強烈建議依據資料庫版本以及您使用的從屬端,使用最新版本的程式庫。
    2. 將它們複製到 client-host。
    3. 將它們複製到下列位置:
      mkdir -p $ORACLE_HOME/opmn/lib
      cp /tmp/ons-23.5.0.24.07.jar $ORACLE_HOME/opmn/lib/ons.jar
      mkdir -p $ORACLE_HOME/jdbc/lib
      cp /tmp/ojdbc8.jar $ORACLE_HOME/jdbc/lib/ojdbc8.jar
      cp /tmp/ojdbc8.jar $ORACLE_HOME/inventory/Scripts/ext/jlib/ojdbc8.jar
  3. /etc/hosts 檔案中的項目是用於解析名稱。為了確保 DNS 解析已正確設定,Oracle 建議您設定專用 DNS,以便將端點從 Google 轉送和監聽至 OCI。
  4. 對於 Google Cloud 中的用戶端機器,使用 hostname 連線至部署於 OCI 中的 CMAN 機器,在用戶端機器的 /etc/hosts 檔案中建立下列額外項目:
    [oracle@client-host ~]$ cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    10.180.0.2 client-host.c.oraoperator-on-gke.internal client-host # Added by Google
    169.254.169.254 metadata.google.internal  # Added by Google
    129.146.104.209 cman-host.sub12161926540.onsproxyvcn.oraclevcn.com cman-host
  5. 若要讓 OCI 中的 CMAN 使用 hostname 連線至 Google Cloud 中的用戶端機器,請在 CMAN 的 /etc/hosts 檔案中建立下列額外項目:
    [oracle@cman-host ~]$ cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    10.0.0.90 cman-host.sub12161926540.onsproxyvcn.oraclevcn.com cman-host
    34.106.100.241 client-host.c.oraoperator-on-gke.internal client-host