Despliegue de Oracle REST Data Services con alta disponibilidad en Oracle Cloud Infrastructure
Despliegue Oracle REST Data Services (ORDS) con alta disponibilidad en Oracle Cloud Infrastructure (OCI) y REST para activar su base de datos y exponer las ventajas de la arquitectura y las capacidades de microservicios.
ORDS conecta HTTPS y la base de datos Oracle. Como aplicación Java de nivel medio, proporciona una API REST de Database Management, SQL Developer Web, un gateway PL/SQL, SODA para REST y la capacidad de publicar servicios web RESTful para interactuar con los datos y los procedimientos almacenados en la base de datos Oracle.
ORDS también proporciona una mayor flexibilidad al admitir despliegues que utilizan Oracle WebLogic Server o Apache Tomcat, o que están en modo autónomo. ORDS simplifica aún más el proceso de despliegue porque no se necesita ningún directorio raíz de Oracle, ya que un controlador JDBC embebido proporciona conectividad.
En esta arquitectura de referencia se describe cómo desplegar ORDS en varias instancias informáticas de VM, con lo que se crea una capa media de alta disponibilidad para las instancias de base de datos Oracle.
Arquitectura
Esta arquitectura muestra cómo desplegar Oracle REST Data Services con alta disponibilidad en OCI.
La arquitectura comienza con una red virtual en la nube (VCN) dentro de una sola región. Si bien esta VCN puede abarcar varios dominios de disponibilidad (AD), para esta arquitectura de referencia utiliza un único AD. Dicho dominio de disponibilidad contiene varios dominios de errores, áreas dentro de un dominio de disponibilidad que han agrupado hardware e infraestructura. Las máquinas virtuales de recursos informáticos con ORDS se despliegan en varios dominios de errores para ayudar a lograr una alta disponibilidad.
En la VCN, varias subredes contienen componentes arquitectónicos específicos. Empieza con un gateway de Internet, que solo permite el tráfico a través de un puerto especificado a los equilibradores de carga del front-end de esta VCN en una subred pública. Los equilibradores de carga también tienen una IP orientada al público que puede utilizar posteriormente para aplicar nombres de dominio personalizados, si es necesario. El equilibrador de carga se comunicará con la subred que contiene los niveles intermedios de recursos informáticos de ORDS. La comunicación está protegida por listas de seguridad de toda la subred, así como por grupos de seguridad de red (NSG). Puede aplicar estos NSG a un juego de VNIC en los equilibradores de carga y de recursos informáticos para proporcionar reglas de seguridad granulares para la comunicación entre estos recursos.
Por último, al volver a emplear listas de seguridad y NSG, los niveles medios de ORDS pueden acceder a una base de datos Oracle en una subred privada. A los recursos que utilizan subredes privadas no se les proporcionan IP de cara pública. De esta manera, puede utilizar los NSG para una capa de comunicación segura entre las subredes públicas y privadas. La instancia de base de datos Oracle de esta subred privada puede ser una instancia de base de datos de máquina virtual, una base de datos autónoma o una base de datos de Exadata Cloud Service.
El siguiente diagrama ilustra esta arquitectura de referencia.
Descripción de la ilustración ha-ords-oci3.png
- Región
Una región de OCI es un área geográfica localizada que contiene uno o más centros de datos, denominados dominios de disponibilidad. Las regiones son independientes entre sí y pueden separarse grandes distancias (entre países o incluso continentes).
- Dominios 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, es poco probable que un fallo en un dominio de disponibilidad afecte a los otros dominios de disponibilidad de la región. Los recursos de esta arquitectura se despliegan en un único dominio de disponibilidad.
- Dominios 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 energía y hardware independientes. Al distribuir los recursos entre varios dominios de errores, las aplicaciones pueden tolerar fallos físicos del servidor, mantenimiento del sistema y fallos de energía en un dominio de errores. Los recursos de esta arquitectura se despliegan en varios dominios de errores.
- Red y subredes virtuales en la nube (VCN)
Una 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 un control completo de 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.
En esta arquitectura de referencia, las instancias informáticas con ORDS están asociadas a una subred pública junto con el equilibrador de carga, mientras que las bases de datos pueden utilizar una subred privada o pública. Las mejores prácticas de seguridad de la base de datos colocan las instancias de base de datos en subredes privadas siempre que sea posible.
- equilibrador de carga
El servicio Oracle Cloud Infrastructure Load Balancing proporciona una distribución automatizada del tráfico desde un único punto de entrada a varios servidores en el backend. La IP pública de este equilibrador de carga también servirá como lugar para registrar nombres de dominio personalizados si es necesario.
- Gateway de API
Oracle Cloud Infrastructure API Gateway permite publicar API con puntos finales privados a los que se puede acceder desde su red, y que puede exponer en la red pública de Internet, si es necesario. Los puntos finales admiten la validación de API, la transformación de solicitud y respuesta, CORS, la autenticación y autorización, y la limitación de solicitudes.
- Instancias informáticas/hosts ORDS
Oracle Cloud Infrastructure Compute permite aprovisionar y gestionar hosts de recursos informáticos. Puede iniciar instancias informáticas con unidades que cumplan los requisitos de recursos (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 no la necesite. Los servidores web de esta arquitectura se ejecutan en máquinas virtuales informáticas mediante una arquitectura de CPU x86 o ARM
- Instancias de Base de Datos
El servicio de base de datos ofrece soluciones de Oracle Database en la nube gestionadas conjuntamente y autónomas. Las bases de datos autónomas son entornos preconfigurados y completamente gestionados que son adecuados para el procesamiento de transacciones o para las cargas de trabajo del almacén de datos. Las soluciones gestionadas conjuntamente son sistemas con hardware dedicado, de máquina virtual y de base de datos Exadata que se pueden personalizar con los recursos y la configuración que satisfagan sus necesidades.
Esta arquitectura de referencia se puede utilizar para bases de datos autónomas o instancias de base de datos gestionadas conjuntamente.
- Grupos de seguridad de red (NSG)
Los NSG actúan como firewalls virtuales para sus instancias informáticas. Con el modelo de seguridad de confianza cero de OCI, se niega todo el tráfico y puede controlar el tráfico de red dentro de una VCN. Un NSG está formado por un juego de reglas de seguridad de entrada y salida que se aplican solo a un juego especificado de VNIC en una única VCN. En esta arquitectura, se utilizan NSG independientes para el equilibrador de carga, los servidores web y la base de datos.
- Tablas de rutas
Las tablas de rutas virtuales contienen reglas para enrutar el tráfico de subredes a destinos fuera de una VCN, normalmente a través de gateways.
- Gateway de Internet
El gateway de Internet permite el tráfico entre las subredes públicas de una VCN y la red pública de Internet.
- Listas de seguridad
La lista de seguridad es un juego de reglas de entrada y de salida que especifican los tipos de tráfico que pueden entrar y salir para todas las VNIC/instancias de una subred. Las listas de seguridad se aplican a nivel de subred, mientras que los NSG se aplican a nivel de VNIC. Ambos actúan efectivamente como un firewall para una VNIC. Con el modelo de seguridad de confianza cero de OCI, se deniega todo el tráfico a una VNIC. Tanto SL como NSG deben permitir el tráfico explícitamente para que el tráfico se permita a la VNIC.
- Enrutamiento de paquetes de confianza cero (ZPR)
Además de SL y NSG, OCI tiene una construcción de seguridad de red denominada enrutamiento de paquetes de confianza cero. ZPR es una red segura basada en intenciones que actúa en la capa 4 y se puede implementar en un lenguaje de políticas legible por el usuario. Al asignar atributos de seguridad ("etiquetas" para ZPR) a sus recursos, puede crear controles de acceso granulares para garantizar que solo las entidades autorizadas puedan comunicarse con componentes confidenciales, como bases de datos y servidores de aplicaciones. Este enfoque no solo reduce el riesgo de acceso no autorizado, sino que también simplifica la gestión de políticas a medida que evoluciona la aplicación. ZPR opera junto con NSG y SL existentes, lo que proporciona una estrategia de seguridad más completa que se adapta a los cambios en la arquitectura de red. Aquí puede asignar atributos de seguridad (etiquetas ZPR especiales) a los nodos de cada subred, de modo que solo se permita el tráfico necesario (dirección de flujo, protocolo y puertos), independientemente de cómo cambie o cambie la arquitectura de red en el futuro.
Recomendaciones
- VCN
Al crear una VCN, determine el número de bloques CIDR necesarios y el tamaño de cada bloque en función del número de recursos que planea asociar a las subredes de la VCN. Utilice bloques CIDR que estén dentro del espacio de direcciones IP privadas estándar.
Seleccione bloques de CIDR que no se solapen con ninguna otra red (en Oracle Cloud Infrastructure, su centro de datos local u otro proveedor en la nube) a la que desee configurar conexiones privadas.
Después de crear una VCN, puede cambiar, agregar y eliminar sus bloques CIDR.
Al diseñar las subredes, tenga en cuenta el flujo de tráfico y los requisitos de seguridad. Asocie todos los recursos de un nivel o rol específico a la misma subred, que puede servir como límite de seguridad.
Utilizar subredes regionales.
Considere la posibilidad de desplegar firewalls para cada límite de red.
- Equilibrio de carga
OCI ofrece equilibrio de carga flexible. Puede crear equilibradores de carga con límites superior e inferior para que se puedan escalar según el número de solicitudes que entren. Los límites pueden variar desde 10mbps hasta 8000mbps. Para las instancias en las que se necesita un equilibrio de carga entre varias regiones o varios dominios de disponibilidad, utilice DNS Cloud Service con capacidad de dirección de gestión de tráfico.
- Seguridad
Utilice Oracle Cloud Guard para controlar y mantener de forma proactiva la seguridad de sus recursos en Oracle Cloud Infrastructure. Cloud Guard utiliza recetas de detector que puede definir para examinar los recursos en busca de deficiencias de seguridad y para supervisar a los operadores y usuarios en busca de actividades de riesgo. Cuando se detecta una configuración incorrecta o una actividad no segura, Cloud Guard recomienda acciones correctivas y ayuda a realizar esas acciones, en función de las recetas de responsable de respuesta que pueda definir.
Para los recursos que requieren la máxima seguridad, Oracle recomienda utilizar zonas de seguridad. Una zona de seguridad es un compartimento asociado a una receta de políticas de seguridad definida por Oracle que se basa en las mejores prácticas. Por ejemplo, no se puede acceder a los recursos de una zona de seguridad desde la Internet pública y se deben cifrar mediante claves gestionadas por el cliente. Al crear y actualizar recursos en una zona de seguridad, Oracle Cloud Infrastructure valida las operaciones con respecto a las políticas de la receta de zona de seguridad y deniega las operaciones que violan cualquiera de las políticas.
- Instancias de Base de Datos
Para las aplicaciones de producción, la instancia de base de datos Oracle debe cumplir el modelo de despliegue de la arquitectura de máxima disponibilidad (MAA) de Oracle en OCI. Seguir estas directrices garantiza que la base de datos no solo tenga alta disponibilidad, sino que también esté protegida contra interrupciones y desastres en caso de que se produzcan. Estas arquitecturas también obtienen el beneficio de las bases de datos de informes que utilizan la instancia de DR.
La arquitectura MAA está integrada directamente en los servicios de Oracle Cloud Infrastructure Database, tanto de gestión compartida como autónoma. Data Guard, GoldenGate, RAC y las copias de seguridad automáticas están disponibles inmediatamente y se deben utilizar para el entorno de producción cuando corresponda.
Al utilizar RAC con Oracle Cluster Registry (OCR)Oracle Database, asegúrese de que la información de conexión de base de datos utilizada por ORDS apunta al listener de SCAN y no a un nodo individual.
- Instancias informáticas/ORDS
Al ajustar el tamaño de los niveles medios de los recursos informáticos, consulte el siguiente gráfico para obtener recomendaciones:
Tamaños de arquitectura de referencia (máquinas virtuales)
Forma Número máximo de OCPU Mínimo de Memoria Máximo de memoria VM.Standard3.Flex 32 1 GB o valor que coincidan con el número de OCPU, el que sea mayor 64 GB por OCPU, hasta un total de 512 GB VM.Standard.E2.1.Micro 1 1 GB 1 GB VM.Standard.E4.Flex 64 1 GB o valor que coincidan con el número de OCPU, el que sea mayor 64 GB por OCPU, hasta un total de 1024 GB VM.Standard.E5.Flex 94 1 GB o valor que coincidan con el número de OCPU, el que sea mayor 64 GB por OCPU, hasta un total de 1049 GB VM.Standard.A1.Flex 76 (OCPU equivale a 1 núcleo de procesador Alta) 1 GB o valor que coincidan con el número de OCPU, el que sea mayor 64 GB por OCPU, hasta un total de 472 GB VM.Standard.A2Flexible 78 (OCPU es de 2 núcleos de un procesador Ampere One) 1 GB o valor que coincidan con el número de OCPU, el que sea mayor 64 GB por OCPU, hasta un total de 946 GB Para averiguar la lista de unidades disponibles en el compartimento, también puede ejecutar la operación
List Shapes
mediante la CLI o el SDK. Consulte la documentación de API deList Shapes
y "Unidades de computación", a las que se puede acceder desde "Explorar más", a continuación, para obtener más información.Para averiguar los costos de recursos informáticos mensuales previstos en OCI, puede utilizar el estimador de costos. Puede encontrar información detallada sobre la facturación en la página "Gestión de facturación y costos". Puede acceder tanto al Estimador de costos como a la "Gestión de facturación y costos" desde "Explorar más", a continuación.
Tamaños de arquitectura de referencia (hardware dedicado)
Forma de cálculo CPU/Memoria Ancho de banda de red máximo BM.Standard3.64 64 OPU/1024 GB 2 x 50 GBPS BM.Standard.E4.128 128 OCPU/2048 GB 2 x 50 GBPS Hardware dedicado. Estándar. E5.192 192 OPU/2304 GB 1 x 100 GBPS BM.Standard.A1.160 160 OCPU/1024 GB 2 x 50 GBPS
Consideraciones
Tenga en cuenta los siguientes puntos al desplegar esta arquitectura de referencia.
- Rendimiento
Los recursos informáticos, los equilibradores de carga y las instancias de Database Cloud se pueden ampliar para gestionar el aumento de la carga. Con el nivel de recursos informáticos/ORDS, se pueden crear y agregar rápidamente instancias adicionales a la configuración del equilibrador de carga. Para el nivel de base de datos, Autonomous Database se puede definir para escalar automáticamente la CPU/memoria cuando experimenta un aumento de la carga. Para las instancias gestionadas conjuntamente, el servicio basado en VM puede escalar el número de CPU utilizadas en la VM. En el caso de los servicios en la nube de Exadata, la plataforma X8M no solo puede escalar la CPU, sino que también se pueden agregar nodos al cluster de RAC para agregar potencia de cálculo adicional.
- Seguridad
Asegúrese de utilizar reglas muy granulares en la subred y las reglas de entrada/salida del NSG. Solo desea tráfico a través de los puertos esperados a IP específicas de instancias de sus subredes. Si se necesita acceso a un nivel de base de datos o de recursos informáticos, utilice Bastion as a Service para acceder. Esto garantiza que solo los usuarios autorizados puedan acceder a estas instancias y solo a las instancias específicas a las que se les otorga acceso. El uso de Bastion as a Service es un método mucho más seguro que exponer los puertos SSH a la red pública de Internet.
- Disponibilidad
Siga la guía de despliegue de bases de datos de Oracle Maximum Availability Architecture (MAA). Para ORDS, se recomiendan varios niveles medios con un equilibrador de carga. De nuevo, como recordatorio, al utilizar RAC con Oracle Database, asegúrese de que la información de conexión a la base de datos utilizada por ORDS apunta al listener de SCAN y no a un nodo individual.
- Costo
El uso de la escala automática y la escala en general para cada nivel de recursos informáticos y base de datos ayudará a controlar los costos, lo que le permitirá pagar solo por lo que se utiliza sin exceso o desperdicio de CPU, memoria o instancias. Los costos también se pueden controlar mediante un equilibrador de carga flexible.
Despliegue
Con un solo clic, puede extraer el código de esta arquitectura a Oracle Cloud Infrastructure Resource Manager, crear la pila y desplegarla.
- Haga clic en
.
Si aún no ha iniciado sesión, introduzca el arrendamiento y las credenciales de usuario.
- Seleccione la región en la que desea desplegar la pila.
- Siga las indicaciones e instrucciones en pantalla para crear la pila.
- Después de crear la pila, haga clic en Acciones de Terraform y seleccione Plan.
- Espere a que se complete el trabajo y revise el plan.
Para realizar cambios, vuelva a la página Detalles de pila, haga clic en Editar pila y realice los cambios necesarios. A continuación, vuelva a ejecutar la acción Plan.
- Si no es necesario realizar más cambios, vuelva a la página Detalles de pila, haga clic en Acciones de Terraform y seleccione Aplicar.
Explorar más
Obtenga más información sobre el despliegue de Oracle REST Data Services con alta disponibilidad en Oracle Cloud Infrastructure con estos recursos adicionales:
.
Confirmaciones
- Autores: Gagan S. Kohli
- Contributors: Eric Peterson, Mayur Raleraskar, Robert Wunderlich, Sherwood Zern
Log de Cambios
Este log muestra los cambios significativos:
Marzo 22, 2025 |
|