Seleccionar la arquitectura MySQL adecuada en OCI

A medida que las organizaciones que dependen de bases de datos de código abierto, como Oracle HeatWave MySQL, migran de soluciones locales autogestionadas a servicios de base de datos en la nube gestionados (como la base de datos MySQL) para reducir costos y mejorar la eficiencia operativa, es importante aprender a elegir la arquitectura MySQL adecuada en Oracle Cloud Infrastructure (OCI).

Oracle HeatWave MySQL es un servicio de base de datos gestionado en OCI que tiene como objetivo proporcionar un servicio de base de datos altamente escalable y disponible sin la necesidad de planificar y llevar a cabo tediosas tareas operativas diarias como aprovisionamiento de bases de datos, copias de seguridad, parches y actualizaciones. Si adoptara Oracle HeatWave MySQL para sus cargas de trabajo en OCI, no solo reducirá el costo operativo actual de sus bases de datos autogestionadas, sino que también podrá centrarse en trabajos de alto valor e innovación. Para lograr los máximos beneficios de ejecutar sus cargas de trabajo en Oracle HeatWave MySQL y OCI, necesitaría comprender Oracle HeatWave MySQL y OCI para diseñar una arquitectura en la nube flexible y escalable que le permita aumentar y ampliar su uso de la nube en función de las necesidades y los requisitos de su negocio.

Arquitectura

Esta arquitectura de referencia tiene como objetivo proporcionarle información técnica relevante para ayudarle a diseñar y optimizar una arquitectura MySQL flexible y escalable en OCI para satisfacer sus requisitos de carga de trabajo.

El alcance de esta arquitectura de referencia asume los siguientes requisitos y especificaciones no funcionales:

Dominios Requisitos Descripciones
Disponibilidad R1 La arquitectura debe tener una alta disponibilidad para soportar el funcionamiento las 24 horas del día, los 7 días de la semana, con un tiempo de actividad de servicio de al menos el 99,95 %.
  R2
  • RTO <= 4 horas
  • RPO <= 1 hora
Posibilidades de ampliación R3 La arquitectura debe ser flexible y escalable para soportar las cargas de trabajo
Seguridad R4 La arquitectura debe estar altamente protegida con mecanismos de control de acceso y autorización

En función de estos requisitos, se selecciona el modelo de alta disponibilidad de Oracle HeatWave MySQL junto con otros servicios de OCI para crear la arquitectura para sus cargas de trabajo.

Esta arquitectura de referencia se ilustra en tres puntos de vista diferentes para abordar las preocupaciones de los arquitectos de infraestructura, arquitectos de información, ingenieros de DevOps e ingenieros de operaciones.

Vista de infraestructura



mysql-oci-architecture-infrastructure-oracle.zip

En esta vista de arquitectura, se aprovisiona una red virtual en la nube regional con subredes públicas y privadas en una única región de OCI que consta de tres dominios de disponibilidad (AD). El modelo de alta disponibilidad de Oracle HeatWave MySQL desplegará tres instancias de base de datos MySQL redundantes en los tres dominios de disponibilidad en una región OCI de varios dominios de disponibilidad o tres dominios de errores en una región OCI de un solo dominio de disponibilidad.

En esta vista de arquitectura se muestran las opciones de despliegue de aplicaciones y las opciones de conectividad de red para Oracle HeatWave MySQL:

  • Oracle HeatWave MySQL se despliega en la subred privada segura sin ningún acceso público desde Internet.
  • Opciones de conectividad para acceder a Oracle HeatWave MySQL:
    • A través de Internet con Oracle Cloud Infrastructure Load Balancing.
    • A través de una VPN entre sus centros de datos y regiones de OCI mediante OCI Dynamic Routing Gateway:
      • VPN de sitio a sitio de OCI
      • Oracle Cloud Infrastructure FastConnect
  • Por lo general, hay tres patrones de despliegue de aplicaciones para acceder a Oracle HeatWave MySQL en OCI:
    • Aplicaciones desplegadas en instancias de Oracle Cloud Infrastructure Compute o instancias de Oracle Cloud Infrastructure Kubernetes Engine (el patrón más preferido con la aplicación y MySQL Database ubicadas en la misma región de nube de OCI).
    • Aplicaciones alojadas en su centro de datos.
    • Aplicaciones alojadas en una nube no OCI (como Amazon Web Services, Microsoft Azure y otros).

Vista de infraestructura (escalabilidad/redundancia)



mysql-oci-architecture-scalability-oracle.zip

En esta vista de arquitectura, la región principal de OCI con el modelo de alta disponibilidad de Oracle HeatWave MySQL está interconectada con otra región de OCI a través de OCI Dynamic Routing Gateway. En esta vista de arquitectura se muestra la escalabilidad MySQL en la misma región de OCI, así como la redundancia en otra región de OCI:

  • Las instancias de base de datos MySQL principales se pueden escalar fácilmente mediante el despliegue de las instancias de "réplica de lectura gestionada" en la misma región de OCI para escalar las transacciones de lectura (consulte Más información).
  • Las instancias MySQL principales se pueden replicar en una réplica MySQL desplegada en otra región de OCI para proporcionar redundancia a las cargas de trabajo (consulte Exploración más).

Vista de acceso a base de datos

Esta vista de arquitectura ilustra las opciones de herramientas para trabajar con Oracle HeatWave MySQL para administradores y desarrolladores de bases de datos:

  • Se puede acceder a herramientas de OCI como OCI Database Tools (SQL Worksheet) y Oracle Cloud Infrastructure Cloud Shell con la herramienta preinstalada con MySQL Shell mediante exploradores web a través de la red pública de Internet para trabajar con MySQL.
  • Oracle Cloud Infrastructure Bastion se puede utilizar para conectar sus herramientas con Oracle HeatWave MySQL a través de Internet.
    • El servicio Oracle Cloud Infrastructure Bastion se puede utilizar para conectar sus herramientas a Oracle MySQL Database Service a través de Internet.
    • Visual Studio Code con la versión de vista previa del plugin de shell MySQL también se puede utilizar con una configuración mínima para conectarse a Oracle HeatWave MySQL.


mysql-oci-architecture-database-access-oracle.zip

Vista de operaciones

En esta vista arquitectónica se ilustran los aspectos de supervisión de Oracle HeatWave MySQL mediante los servicios de Oracle Cloud Observability and Management Platform:

  • Cree umbrales relevantes en la consola de Oracle HeatWave MySQL para activar alarmas para el acto de soporte operativo.
  • Supervisión basada en eventos mediante OCI Events para realizar un seguimiento de eventos MySQL específicos (por ejemplo, reinicio de la base de datos).
  • Supervisión en tiempo real mediante el panel de control de OCI para crear un panel de control de OCI personalizado en instancias de MySQL específicas.


mysql-oci-architecture-operation-oracle.zip

  • 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 entre sí y puede haber grandes distancias que las separen (entre países e 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, un fallo en un dominio de disponibilidad no debería afectar a los otros dominios de disponibilidad de la región.

  • Red y subredes virtuales en la nube (VCN)

    Una VCN es una red personalizable y definida por software que puede configurar en una región de Oracle Cloud Infrastructure. Al igual que las redes de los centros de datos tradicionales, las redes virtuales le proporcionan el control 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.

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

  • Lista de seguridad

    Para cada subred, puede crear reglas de seguridad que especifiquen el origen, el destino y el tipo de tráfico que se debe permitir dentro y fuera de la subred.

  • Compute

    Con Oracle Cloud Infrastructure Compute, puede aprovisionar y gestionar hosts de recursos informáticos en la nube. Puede iniciar instancias informáticas con unidades que cumplan los requisitos de recursos de 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 desconectar volúmenes y terminarla cuando ya no lo necesite.

  • Eventos

    Los servicios de Oracle Cloud Infrastructure emiten eventos, que son mensajes estructurados que describen los cambios en los recursos. Los eventos se emiten para operaciones de creación, lectura, actualización o supresión (CRUD), cambios de estado del ciclo de vida de los recursos y eventos del sistema que afectan a los recursos en la nube.

  • Notifications

    El servicio Oracle Cloud Infrastructure Notifications transmite mensajes a componentes distribuidos a través de un patrón de publicación y suscripción, lo que permite que los mensajes dirigidos a aplicaciones alojadas en Oracle Cloud Infrastructure sean seguros, altamente fiables, duraderos y de baja latencia.

  • Servicio de bastión

    Oracle Cloud Infrastructure Bastion proporciona acceso seguro restringido y limitado en el tiempo a recursos que no tienen puntos finales públicos y que requieren estrictos controles de acceso a recursos, como hardware dedicado y máquinas virtuales, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Cloud Infrastructure Kubernetes Engine (OKE) y cualquier otro recurso que permita el acceso al protocolo de shell seguro (SSH). Con el servicio OCI Bastion, puede permitir 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 identidad y una sesión SSH centralizada, auditada y con límite de tiempo. OCI Bastion elimina la necesidad de una IP pública para el acceso al bastión, eliminando la molestia y la posible superficie de ataque al proporcionar acceso remoto.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect proporciona una forma sencilla de crear una conexión privada y dedicada entre el centro de datos y Oracle Cloud Infrastructure. FastConnect proporciona opciones de mayor ancho de banda y una experiencia de red más fiable en comparación con las conexiones basadas en Internet.

  • MySQL HeatWave

    Oracle MySQL Database Service es un servicio de base de datos totalmente gestionado que permite a los desarrolladores desarrollar y desplegar rápidamente aplicaciones seguras en la nube mediante la base de datos de código abierto más popular del mundo. Oracle HeatWave MySQL es un nuevo acelerador de consultas en memoria integrado y de alto rendimiento para Oracle MySQL Database Service que acelera el rendimiento de MySQL para los análisis y las consultas transaccionales.

Recomendaciones

Utilice las siguientes recomendaciones como punto de partida para diseñar la arquitectura de OCI de acuerdo con los requisitos de carga de trabajo.

  • VCN
    • Utilice subredes regionales con fines de flexibilidad.
    • 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:
      • 10.0.0.0 - 10.255.255.255
      • 172.16.0.0 - 172.31.255.255
      • 192.168.0.0 - 192.168.255.255
    • Seleccione bloques de CIDR que no se solapen con ninguna otra red (en OCI, su centro de datos local u otro proveedor de 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. Oracle MySQL Database Service siempre reside en una subred privada.
  • Seguridad
    • 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, OCI valida las operaciones con respecto a las políticas de la receta de zona de seguridad y deniega las operaciones que violan cualquier política.
  • Cloud Guard
    • Clone y personalice las recetas por defecto proporcionadas por Oracle para crear recetas personalizadas de detector y responsable de respuesta. 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 cubos de Oracle Cloud Infrastructure Object Storage con visibilidad pública.
  • Grupos de seguridad de red (NSG)

    Puede utilizar 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.

Consideraciones

Al estandarizar y poner en funcionamiento Oracle HeatWave MySQL como su servicio principal de base de datos en la nube, considere estas otras configuraciones de servicio en la nube para facilitar el funcionamiento y la flexibilidad.

  • Conectividad de Red
    • Tenga en cuenta el límite variable de varios límites de VCN al diseñar su red en la nube, por ejemplo, un límite de 50 VCN por arrendamiento de OCI. Estos límites se pueden cambiar enviando una solicitud de servicio al soporte de OCI.
    • Oracle HeatWave MySQL necesita un juego mínimo de direcciones IP privadas para fines de mantenimiento:
      • MySQL El modo independiente necesita tres direcciones IP privadas
      • MySQL La alta disponibilidad necesita siete direcciones IP privadas
    • El servicio Oracle Cloud Infrastructure Bastion está limitado a un máximo de tres horas de uso. Por lo tanto, si necesita un servicio bastión de alta disponibilidad para sus aplicaciones o fines de desarrollo, es mejor utilizar una instancia dedicada de Oracle Cloud Infrastructure Compute como host bastión para conectarse a instancias MySQL.
  • Operabilidad

    Asegúrese de que OCI Dashboard crea un panel de control personalizado para su conjunto de instancias MySQL para su operación de servicio.

  • Disponibilidad

    Si planea crear una réplica MySQL como copia de seguridad en otra región, debe considerar la latencia de red entre la región principal y la región de copia de seguridad. OCI proporciona información sobre la latencia de red entre regiones para ayudarle a decidir qué región utilizar como región de copia de seguridad para su región principal. El otro factor de consideración para la réplica de MySQL es la duración (binlog_expire_logs_seconds) para mantener los logs de transacciones binarias antes de que se supriman los logs. La duración por defecto para mantener el log de transacciones binarias es de 3.600 segundos o 60 minutos. Si experimenta una latencia de red grave entre las regiones principal y de copia de seguridad, puede que desee aumentar este parámetro para que los logs de transacciones se mantengan por más tiempo y se puedan transmitir y aplicar en la réplica MySQL de la región de copia de seguridad.

  • Portabilidad y flexibilidad
    • Utilice el servicio de nombres de dominio (DNS) de OCI para resolver el nombre de host MySQL para su portabilidad. Asigne un nombre de host personalizado según la convención de nomenclatura a la instancia MySQL durante la creación para que el DNS de OCI pueda resolver el nombre de host como solucionador de VCN.
    • Utilice el nombre de host DNS de Oracle Cloud Infrastructure Load Balancing para las instancias de réplica de lectura MySQL gestionadas a fin de minimizar los cambios en el código de aplicación con fines flexibles. Puede averiguar el nombre de host DNS asignado de este Oracle Cloud Infrastructure Load Balancing en la consola de servicio DNS de OCI.

Confirmaciones

Authors: Ryan Kuan

Contributors: John Sulyok