部署

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. Install CMAN using an image file from the section Installing Oracle CMAN Using an Image File in the Oracle Database Client Installation Guide for Linux Guide。
  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

    Machine type(计算机类型)e2-medium

    主要内部 IP 地址10.180.0.2

    公共 IP34.106.100.241

    主机名client-host.c.oraoperator-on-gke.internal

  2. 在客户机主机上,复制所需的 .jar 文件:
    1. Developers Guide For Oracle JDBC on Maven Central 下载 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