Acerca de los servicios en la nube de Oracle Database con el proxy de Oracle Notification Server

Oracle Base Database Service aprovecha las capacidades multinube y permite soluciones personalizables para una disponibilidad, un ahorro de costos, una agilidad y un rendimiento óptimos de las aplicaciones. Las implementaciones multinube necesitan una planificación cuidadosa para reducir la complejidad de la gestión de TI y garantizar la seguridad integral.

Oracle Connection Manager (CMAN) puede facilitar los despliegues multinube en los que la base de datos y la aplicación se encuentran en diferentes proveedores de servicios cloud service reenviando de forma transparente las solicitudes y respuestas de conexión, proporcionando un punto de entrada y ofreciendo seguridad TLS, conmutación/enrutamiento de protocolos y control de acceso.

En este manual de soluciones, aprenderá a utilizar una única instancia de CMAN con Oracle Database para crear una conexión con Google Cloud y permitir a los clientes suscribirse a eventos de Oracle RAC.

Note:

Varias instancias de CMAN pueden proporcionar mejores capacidades de equilibrio de carga y mejorar el rendimiento y la disponibilidad.


gc-oci-ons-subscribe-rac-events-arch-oracle.zip

Oracle Notification Service (ONS) es un componente de Oracle Grid Infrastructure que publica eventos de Oracle Real Application Clusters (Oracle RAC), como la carga del servidor, el nodo activo o caído, etc. Los clientes de base de datos que se conectan directamente a una base de datos o utilizan pools de conexiones pueden suscribirse a estas notificaciones, lo que les permite realizar acciones durante eventos críticos. En despliegues multinube, donde la aplicación y la base de datos de Oracle RAC abarcan diferentes proveedores de nube, las aplicaciones pueden utilizar CMAN para comunicarse con la base de datos de Oracle RAC. Sin embargo, estas sesiones no pueden recibir eventos de Fast Application Notification (FAN) salientes.

En Oracle RAC, el daemon ONS es iniciado por Oracle Clusterware como parte de nodeapps. Se inicia un daemon ONS por nodo en cluster. El daemon ONS recibe un subjuego de eventos de Oracle Clusterware publicados mediante los daemons de Clusterware EVMD locales y reenvía esos eventos a los suscriptores de aplicación y a los listeners locales para facilitar:

  • La función Fast Application Notification (FAN) que permite a las aplicaciones responder a los cambios de estado de la base de datos. Fast Connection Failover (FCF) es el mecanismo de cliente que utiliza la función FAN para lograrlo.
  • La función de asesor de equilibrio de carga (función RLB) que permite el equilibrio de carga entre diferentes nodos RAC depende de la carga de los diferentes nodos. El proceso MMON de RDBMS crea un asesor para la distribución del trabajo cada 30 segundos y lo reenvía mediante ONS a listeners y aplicaciones.

Para permitir que los clientes se suscriban a eventos de Oracle RAC, se necesita un proxy de Oracle Notification Server. CMAN reenvía de forma transparente solicitudes y respuestas, proporcionando un punto de entrada único y ofreciendo seguridad TLS, conmutación/enrutamiento de protocolos y control de acceso. Un servidor de notificaciones de Oracle que se ejecuta en el host CMAN se comunica con el servidor ONS en la red de Oracle RAC mediante el proxy ONS. Las aplicaciones cliente que se suscriben a ONS en el host CMAN se comunican mediante el proxy de Oracle Notification Server con Oracle Notification Service en la red pública de Oracle RAC.



ons-publish-subscribe-proxy-arch-oracle.zip

ONS proporciona un mecanismo de entrega de mensajes fuera de banda genérico mediante un subjuego del protocolo HTTP. ONS es un mecanismo de publicación/suscripción en el que el servidor publica notificaciones que se entregan a los clientes suscriptores.

En un cluster de Oracle RAC, Oracle Clusterware inicia una instancia del daemon ONS en cada nodo del cluster. El despliegue del servidor de base de datos suele estar protegido por un firewall, por lo que los servidores ONS también están detrás de él. Los servidores se conectan al proxy, que tiene acceso a clientes fuera del firewall, mediante el servidor de notificaciones de Oracle orientado al exterior. El proxy inicia la instancia externa de Oracle Notification Server en la que se publican las notificaciones de los servidores ONS internos. A continuación, el servidor ONS externo publica estas notificaciones en los clientes suscritos.

Antes de empezar

Antes de comenzar, asegúrese de hacer lo siguiente:

Consulte la guía de Oracle Net Services. A continuación, siga estos pasos para aprovisionar la VCN de OCI e instalar y configurar la base de datos de Oracle RAC:
  1. Aprovisione la VCN de OCI con subredes públicas y privadas. La subred privada se utilizará para aprovisionar la base de datos Oracle RAC de dos nodos mediante Oracle Base Database Service, y la subred pública se utilizará para aprovisionar la máquina virtual de OCI Compute para CMAN.
    VCN Subred privada Subred pública

    Nombre: OnsProxyVcn

    Bloque IPv4 CIDR: 10.0.0.0/16

    10.0.1.0/24 10.0.0.0/24
  2. Despliegue la base de datos de Oracle RAC mediante Oracle Base Database Service.

    Consulte la sección Creación de un sistema de base de datos mediante la consola de la documentación de OCI para obtener más información sobre la creación de una base de datos de Oracle RAC de dos nodos mediante Oracle Base Database Service. La siguiente base de datos es un ejemplo:

    Sistema de base de datos Base de datos Nodo 1 Nodo 2

    Name: RACDBSystem

    Nombre de dominio: sub12161926541.onsproxyvcn.oraclevcn.com

    SCAN DNS name: racnode-scan

    SCAN IP address: 10.0.1.205, 10.0.1.35, 10.0.1.117

    Database Name: ORCLCDB

    Nombre único de la base de Datos: ORCLCDB_8p7_phx

    Version: 23.6.0.24.10 (Versión)

    Name: racnode1

    Private IP: 10.0.1.13

    Name: racnode2

    Private IP: 10.0.1.95

  3. Configure Bastion para acceder a los nodos de RAC en la subred privada.

    Cree sesiones de reenvío de puerto mediante Bastion para acceder a las IP privadas del nodo de Oracle RAC.

    Bastion Detalles
    Bastion

    Name: OnsProxyRacDbBastion

    Red virtual en la Nube de destino: OnsProxyVcn

    Subred de destino: private subnet-OnsProxyVcn

    Lista de permitidas del bloque de CIDR: 0.0.0.0/0

    Dirección IP de punto final privada: 10.0.1.215

  4. Configure los detalles del sistema de base de datos Oracle RAC.

    A continuación se muestran los detalles de configuración críticos de los nodos de base de datos de Oracle RAC y de Oracle Clusterware que debe aprovisionar.

    Nodos de Oracle RAC IP Nombre del host Nombre VIP Nombre de SCAN Dominio Infraestructura de Grid/Versión de Base de Datos
    Nodo 1 de Oracle RAC 10.0.1.13 racnode1 racnode1-vip racnode-scan subnet.onsproxyvcn.oraclevcn.com 23,6
    Nodo 2 de Oracle RAC 10.0.1.95 racnode2 racnode2-vip racnode-scan subnet.onsproxyvcn.oraclevcn.com 23,6
    Compruebe el estado de la base de datos Oracle RAC.
    oracle@racnode1 ~]$ date;/u01/app/oracle/product/23.0.0.0/dbhome_1/bin/srvctl status database -d ORCLCDB_8p7_phxTue Dec 17 03:24:52 UTC 2024
    Instance ORCLCDB1 is running on node racnode1
    Instance ORCLCDB2 is running on node racnode2

Acerca de los servicios y los roles necesarios

Esta solución requiere los siguientes servicios y roles:

  • Oracle Cloud Infrastructure Networking
  • Oracle Cloud Infrastructure FastConnect
  • Oracle Cloud Infrastructure Compute
  • Oracle Base Database Service

Estos son los roles necesarios para cada servicio.

Nombre de servicio: Rol Necesario para...
Red de OCI: manage vcn-family Gestione los componentes de red, incluidas las redes virtuales en la nube, las subredes, las reglas de seguridad y FastConnect.
Recursos informáticos de OCI: manage instance-family Cree instancias informáticas de VM.
Base de datos de OCI: manage database-family Crear instancias de Base Database Service.

Consulte Productos, soluciones y servicios de Oracle para obtener lo que necesita.

Arquitectura

Esta arquitectura utiliza un escenario de despliegue de proxy Oracle RAC con CMAN y ONS en multinube. Muestra una base de datos de Oracle RAC desplegada mediante Oracle Base Database Service en una subred privada de una VCN de OCI, a la que no se puede acceder desde la red de cliente.


rac-cman-proxy-deploy-multicloud-arch-oracle.zip

Oracle Connection Manager (CMAN) se despliega en una máquina virtual de OCI Compute, que está en una subred pública de la misma VCN de OCI. El cliente puede acceder a CMAN mediante la IP pública en la subred pública. El servidor ONS y el proxy ONS están configurados en un equipo host CMAN. El listener CMAN se conecta a la base de datos de Oracle RAC, que se ejecuta detrás del firewall.

La aplicación con software de cliente de Oracle se despliega en una máquina virtual informática en Google Cloud.

También puede utilizar varios CMAN conectados al mismo servidor de base de datos y ONS. En este caso, debe configurar el proxy ONS y el Oracle Notification Server en cada nodo de CMAN.

Esta arquitectura admite los siguientes componentes:

  • Región OCI

    Una región de OCI es un área geográfica localizada que contiene uno o más centros, denominados dominios de disponibilidad. Las regiones son independientes de otras regiones y pueden haber grandes distancias que las separan (entre países o incluso continentes).

  • Dominio de errores

    Un dominio de errores es una agrupación de hardware e infraestructura dentro de un dominio de disponibilidad. Cada dominio de disponibilidad tiene tres dominios de errores con hardware y energía independientes. Al distribuir recursos entre varios dominios de errores, las aplicaciones pueden tolerar fallos físicos en el servidor, mantenimiento del sistema y fallos de energía en un dominio de errores.

  • Red virtual en la nube y subred de OCI

    Una red virtual en la nube (VCN) es una red personalizable y definida por software que se configura en una región de OCI. Al igual que las Redes de los Centros de Datos Tradicionales, las Redes Virtuales le proporcionan el control sobre su entorno de red. Una VCN puede tener varios bloques de CIDR no superpuestos que puede cambiar después de crear la VCN. Puede segmentar una VCN en subredes, las cuales se pueden acotar a una región o a un dominio de disponibilidad. Cada subred está formada por un rango contiguo de direcciones que no se solapan con las demás subredes de la VCN. Puede cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.

  • Dominio de disponibilidad

    Los dominios de disponibilidad son centros de datos independientes dentro de una región. Los recursos físicos de cada dominio de disponibilidad están aislados de los recursos de los otros dominios de disponibilidad, lo que proporciona tolerancia a fallos. Los dominios de disponibilidad no comparten infraestructura, como la alimentación o la refrigeración, ni la red interna del dominio de disponibilidad. Por lo tanto, un fallo en un dominio de disponibilidad no debería afectar a los demás dominios de disponibilidad de la región.

  • OCI FastConnect

    Oracle Cloud Infrastructure FastConnect crea una conexión dedicada y privada entre tu centro de datos y OCI. FastConnect ofrece opciones de un Gran Ancho de Banda y una Experiencia de Red más fiable en comparación con la conexión basada en Internet.

  • Computación de OCI

    Con Oracle Cloud Infrastructure Compute, puede aprovisionar y gestionar hosts informáticos en la nube. Puede iniciar instancias informáticas con unidades que cumplan los requisitos de recursos para CPU, memoria, ancho de banda de red y almacenamiento. Después de crear una instancia informática, puede acceder a ella de forma segura, reiniciarla, asociar y desasociar volúmenes, y terminarla cuando ya no la necesite.

  • Oracle Base Database Service

    Oracle Base Database Service es un servicio de base de datos de OCI que permite crear, escalar y gestionar bases de datos Oracle completas en máquinas virtuales. Oracle Base Database Service utiliza el almacenamiento de OCI Block Volumes en lugar del almacenamiento local y puede ejecutar Oracle Real Application Clusters (Oracle RAC) para mejorar la disponibilidad.

  • Oracle Linux

    Oracle combina sistemas operativos, contenedores y virtualización, los elementos fundamentales de la infraestructura de TI moderna, en una sola oferta integrada: Oracle Linux. Al ejecutarse en el hardware que elija, en su centro de datos o en la nube, Oracle Linux proporciona la fiabilidad, la escalabilidad, la seguridad y el rendimiento para cargas de trabajo empresariales exigentes.

  • Oracle Clusterware

    Oracle Clusterware permite que los servidores se coordinen entre sí para que parezcan funcionar como una unidad de alta disponibilidad. Esta combinación de servidores se conoce comúnmente como cluster. Aunque los servidores son servidores independientes, cada servidor se comunica con otros servidores, lo que hace que los servidores individuales aparezcan como un sistema para las aplicaciones y los usuarios finales. Oracle Clusterware también supervisa los componentes del cluster, reiniciando o realizando un failover de los recursos para garantizar una alta disponibilidad. Oracle Clusterware proporciona la infraestructura necesaria para ejecutar Oracle RAC. Oracle Clusterware también gestiona recursos, como direcciones IP virtuales (VIP), bases de datos, listeners, servicios y muchos más.

  • Oracle Connection Manager

    Oracle Connection Manager (CMAN) es un proxy de conexión a base de datos multiusos utilizado en despliegues de Oracle. Reenvía de forma transparente las solicitudes de la aplicación cliente en Oracle Database y vuelve a transmitir la respuesta a las aplicaciones cliente. El cliente puede ser una aplicación de usuario o una solución de software de capa media. CMAN abstrae la capa de red de la base de datos, incluida la red pública de Oracle RAC, de los clientes. Se pueden desplegar varias bases de datos detrás de una única instancia de CMAN. Por lo tanto, los clientes pueden utilizar un punto de entrada único en el nivel de base de datos. CMAN incorpora seguridad TLS, conmutación/enrutamiento de protocolos y control de acceso para conectarse a Oracle Database locales y remotos.

  • Carteras y certificados de Oracle Database

    La seguridad de datos es la tarea más importante de la base de datos. Los ataques a los sistemas de bases de datos siguen creciendo en número y sofisticación. Asegurarse de que el sistema de base de datos está funcionando puede ser una tarea abrumadora. Una cartera de Oracle Database es un contenedor protegido por contraseña que almacena credenciales de autenticación y firma, incluidas claves privadas y certificados que permiten a los clientes de base de datos comunicarse a través de una red de Oracle Database.

    Un certificado de Oracle Database (certificado digital de infraestructura de clave pública (PKI)) es un componente de cartera que valida la identidad de una entidad final en un intercambio de clave pública o clave privada que utiliza la cartera.

  • Oracle Notification Service

    Oracle Notification Service (ONS) es un componente de Oracle Grid Infrastructure que publica eventos de Oracle Real Application Clusters (Oracle RAC), como la carga del servidor, el nodo activo o caído, etc. Los clientes de base de datos que se conectan directamente a una base de datos o utilizan pools de conexiones pueden suscribirse a estas notificaciones, lo que les permite realizar acciones durante eventos críticos. En despliegues multinube, donde la aplicación y la base de datos de Oracle RAC abarcan diferentes proveedores de nube, las aplicaciones pueden utilizar CMAN para comunicarse con la base de datos de Oracle RAC. Sin embargo, estas sesiones no pueden recibir eventos de Fast Application Notification (FAN) salientes.

    ONS proporciona un mecanismo de entrega de mensajes fuera de banda genérico mediante un subjuego del protocolo HTTP. ONS es un mecanismo de publicación/suscripción en el que los clientes publican notificaciones que se entregan a los clientes suscriptores. La sintaxis de suscripción es flexible, de modo que un solo suscriptor puede coincidir con muchos tipos diferentes de notificaciones o solo con un tipo muy específico. Oracle Notification Service se utiliza como sistema de mensajes y eventos en Oracle Database.

  • Servidor de notificaciones de Oracle

    Oracle Notification Server ejecuta Oracle Notification Service (ONS).

  • Oracle Interconnect for Google Cloud

    Oracle Interconnect for Google Cloud es un servicio de interconexión privado dedicado que combina las conexiones de partners de OCI FastConnect y las interconexiones de partners de Google Cloud que ayuda a los clientes multinube a innovar en dos nubes y aplicar herramientas existentes y conocidas para soportar cargas de trabajo.