部署

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

    公用 IP129.146.104.209

    專用 IP10.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

    公用 IP34.106.100.241

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

  2. 在用戶端主機機器上,複製必要的 .jar 檔案:
    1. 請從 Maven Central 上的 Oracle JDBC 開發人員指南下載 ons-23.5.0.24.07.jarjar 檔案。強烈建議依據資料庫版本以及您使用的從屬端,使用最新版本的程式庫。
    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