Despliegue de una aplicación Oracle Autonomous Database y Oracle APEX preparada para producción segura

Utilice Oracle APEX para crear aplicaciones empresariales escalables y seguras con funciones de primera clase que puede desplegar en cualquier lugar. Oracle APEX es una plataforma de desarrollo con poco código. Una vez que la aplicación está activa y en ejecución, puede utilizar Terraform para automatizar el despliegue en un entorno de Oracle Cloud Infrastructure.

Arquitectura

Esta arquitectura aprovecha el equilibrador de carga para aislar una base de datos de Oracle Autonomous Transaction Processing en una subred privada independiente. La zona de llegada de Oracle Cloud Infrastructure (OCI) automatizada por Terraform proporciona una infraestructura segura para ejecutar la aplicación de Oracle APEX sobre la base de datos Oracle Autonomous Database compartida expuesta por el punto final privado.

El siguiente diagrama ilustra esta arquitectura de referencia.

A continuación se muestra la descripción de apex-app-adb.png
Descripción de la ilustración apex-app-adb.png

apex-app-adb-oracle.zip

La arquitectura tiene los siguientes componentes:

  • Arrendamiento

    Un arrendamiento es una partición segura y aislada que Oracle configura en Oracle Cloud al registrarse en Oracle Cloud Infrastructure. Puede crear, organizar y administrar sus recursos en Oracle Cloud en su arrendamiento. Un arrendamiento es sinónimo de una compañía u organización. Normalmente, una compañía tendrá un arrendamiento único y reflejará su estructura organizativa dentro de ese arrendamiento. Un único arrendamiento suele estar asociado a una única suscripción, y una única suscripción suele tener un solo arrendamiento.

  • Región

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

  • Compartimento

    Los compartimentos son particiones lógicas entre regiones dentro de un arrendamiento de Oracle Cloud Infrastructure. Utilice compartimentos para organizar los recursos en Oracle Cloud, controlar el acceso a los recursos y definir cuotas de uso. Para controlar el acceso a los recursos de un compartimento determinado, debe definir políticas que especifiquen quién puede acceder a los recursos y qué acciones pueden realizar.

  • 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 una infraestructura tal como la alimentación, la refrigeración o la red interna del dominio de disponibilidad. Por tanto, es poco probable que un fallo en un dominio de disponibilidad afecte a los otros dominios de disponibilidad de la región.

  • Red virtual en la nube (VCN) y subredes

    Una VCN es una red personalizable definida por software que se configura en una región de Oracle Cloud Infrastructure. Al igual que las redes de centros de datos tradicionales, las VCN le proporcionan un control total de su entorno de red. Una VCN puede tener varios bloques CIDR no superpuestos que puede cambiar después de crear la VCN. Puede segmentar una VCN en subredes que se pueden acotar a una región o a un dominio de disponibilidad. Cada subred consta de un rango contiguo de direcciones que no se solapan con las demás subredes de VCN. Puede cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.

  • Equilibrador de carga

    El servicio Oracle Cloud Infrastructure Load Balancing proporciona una distribución automatizada de tráfico desde un único punto de entrada a varios servidores del backend.

  • Grupo de seguridad de red (NSG)

    Los NSG actúan como firewalls virtuales para los recursos en la nube. Con el modelo de seguridad de confianza cero de Oracle Cloud Infrastructure, se deniega todo el tráfico y puede controlar el tráfico de red dentro de una VCN. Un NSG está formado por un conjunto de reglas de seguridad de entrada y salida que se aplican solo a un conjunto especificado de VNIC en una única VCN.

  • Gateway de traducción de direcciones de red (NAT)

    Un gateway de NAT permite que los recursos privados en una VCN accedan a los hosts en Internet, sin exponer dichos recursos a las conexiones de Internet entrantes.

  • Gateway de servicio

    El gateway de servicios proporciona acceso desde una VCN a otros servicios, como Oracle Cloud Infrastructure Object Storage. El tráfico desde la VCN al servicio Oracle recorre el tejido de red de Oracle y no internet.

  • 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.

  • Base de datos autónoma

    Las bases de datos autónomas de Oracle Cloud Infrastructure son entornos de base de datos completamente gestionados y preconfigurados que puede utilizar para cargas de trabajo de procesamiento de transacciones y almacenamiento de datos. No es necesario configurar ni gestionar ningún hardware, o instalar cualquier software. Oracle Cloud Infrastructure gestiona la creación de la base de datos, así como la copia de seguridad, la aplicación de parches, la actualización y el ajuste de la base de datos.

  • Autonomous Transaction Processing

    Oracle Autonomous Transaction Processing es un servicio de base de datos de autogestión, autoprotección y autorreparación que se optimiza para las cargas de trabajo de procesamiento de transacciones.

  • Servicio bastión

    Oracle Cloud Infrastructure Bastion proporciona acceso seguro restringido y limitado por el tiempo a recursos que no tienen puntos finales públicos y que requieren estrictos controles de acceso a los recursos, como máquinas virtuales y con hardware dedicado, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE) y cualquier otro recurso que permita el acceso de protocolo de shell seguro (SSH). Con el servicio Bastion de Oracle Cloud Infrastructure, puede activar el acceso a hosts privados sin desplegar y mantener un host de salto. Además, obtiene una estrategia de seguridad mejorada con permisos basados en identidades y una sesión SSH centralizada, auditada y con límite de tiempo. Bastion de Oracle Cloud Infrastructure elimina la necesidad de una IP pública para el acceso bastión, eliminando la molestia y la posible superficie de ataque al proporcionar acceso remoto.

Recomendaciones

Utilice las siguientes recomendaciones como punto de partida. Sus requisitos pueden ser diferentes de la arquitectura descrita aquí.
  • VCN

    La solución de terraform despliega una VCN, pero esta solución es modular y puede utilizar una VCN existente.

    Al crear una VCN, determine el número de bloques CIDR necesarios y el tamaño de cada bloque según el número de recursos que planea asociar a subredes en la VCN. Utilice bloques CIDR que estén dentro del espacio de dirección IP privada estándar.

    Seleccione bloques CIDR que no se solapen con ninguna otra red (en Oracle Cloud Infrastructure, su centro de datos local u otro proveedor en la nube) en la que desea 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 los requisitos de seguridad y flujo de tráfico. Conecte todos los recursos de un nivel o rol específico a la misma subred, que puede servir como límite de seguridad.

  • Grupos de seguridad de red (NSG)

    Puede usar los NSG para definir un juego de reglas de entrada y salida que se aplican a VNIC específicas. Recomendamos utilizar NSG en lugar de listas de seguridad, ya que los NSG permiten separar la arquitectura de subred de la VCN de los requisitos de seguridad de la aplicación.

  • Cloud Guard

    Clone y personalice las recetas por defecto proporcionadas por Oracle para crear recetas de detector y responsable de respuesta personalizadas. Estas recetas permiten especificar qué tipo de violaciones de seguridad generan una advertencia y qué acciones se pueden realizar en ellas. Por ejemplo, puede que desee detectar bloques de Object Storage que tengan una visibilidad definida como pública.

    Aplique Cloud Guard en el nivel del arrendamiento para abarcar el ámbito más amplio y reducir la carga administrativa que supone el mantenimiento de varias configuraciones.

    También puede utilizar la función de lista gestionada para aplicar determinadas configuraciones a los detectores.

  • Ancho de banda del equilibrador de carga

    Al crear el equilibrador de carga, puede seleccionar una unidad predefinida que proporcione un ancho de banda fijo o especificar una unidad personalizada (flexible) en la que defina un rango de ancho de banda y permita al servicio escalar el ancho de banda automáticamente en función de los patrones de tráfico. Con cualquier enfoque, puede cambiar la unidad en cualquier momento después de crear el equilibrador de carga.

Consideraciones

Tenga en cuenta los siguientes puntos al desplegar esta arquitectura de referencia:

  • Rendimiento

    La solución Terraform se aprovisiona en minutos y tiene la aplicación Oracle APEX activa y en ejecución en una nueva base de datos autónoma.

  • Seguridad

    La instancia informática y la base de datos autónoma deben estar en una subred privada y protegerse con grupos de seguridad de red.

  • Disponibilidad

    Para planificar la alta disponibilidad de las instancias informáticas, las estrategias de diseño clave que debe tener en cuenta son:

    • Elimine los puntos de fallo específicos, ya sea aprovechando adecuadamente los tres dominios de errores de un dominio de disponibilidad o desplegando instancias en varios dominios de disponibilidad.
    • Utilizar direcciones IP flotantes.
    • Asegúrese de que su diseño protege tanto la disponibilidad de datos como la integridad de sus instancias informáticas.

Despliegue

El código de Terraform para un despliegue de Oracle Autonomous Transaction Processing (ATP) está disponible en GitHub.

  1. Vaya a GitHub.
  2. Clone o descargue el repositorio en su equipo local.
  3. Siga las instrucciones del documento README de la biblioteca de Cloud Foundation.

Explorar más

Más información sobre Oracle Cloud Infrastructure.

Revise estos recursos adicionales:

Agradecimientos

Author: Corina Todea