Alta disponibilidad

Los sistemas de alta disponibilidad (HA) están diseñados para garantizar que tienen el máximo potencial de tiempo de actividad y accesibilidad.

Las aplicaciones empresariales son fundamentales para las operaciones empresariales diarias y deben estar disponibles. Se espera que estos sistemas estén siempre en funcionamiento y que nunca se producirá tiempo de inactividad. Aunque es imposible descartar por completo el tiempo de inactividad, puede minimizar los impactos negativos del tiempo de inactividad garantizando que las aplicaciones ofrecen HA. Para garantizar una alta disponibilidad, elimine los puntos de fallo únicos, de modo que incluso si los componentes fallan, la aplicación permanezca en ejecución y disponible. Oracle Cloud Infrastructure (OCI) proporciona capacidades de HA y mejores prácticas de topología de nube fiables y resistentes que le permiten crear aplicaciones empresariales con HA.

Debido a que las arquitecturas de varios niveles o de tres niveles son comunes en las aplicaciones empresariales locales tradicionales, vamos a utilizar una aplicación empresarial de ejemplo de tres niveles para mostrar cómo puede utilizar las capacidades de HA de OCI y las mejores prácticas para una topología de nube fiable y resistente para hacer que esa aplicación sea de HA. En el siguiente diagrama se muestra un ejemplo de aplicación empresarial en una configuración de HA de una sola región.

Ejemplo de aplicación empresarial en una configuración de alta disponibilidad de una sola región.

Esta información no cubre la conectividad desde las ubicaciones locales a OCI ni los aspectos de recuperación ante desastres (DR) de la infraestructura.

Conceptos de HA

Cuando la infraestructura está configurada para proporcionar disponibilidad casi a tiempo completo, estamos ante un sistema de HA.

Para diseñar una arquitectura de alta disponibilidad, tenga en cuenta los siguientes elementos clave:

  • Redundancia: ¿tiene cada recurso al menos un recurso similar listo para entrar y tomar el relevo? Tenga en cuenta que en cada nivel que se muestra en el diagrama, los recursos siempre tienen un recurso principal y otro en espera y se encuentran en distintos dominios de disponibilidad y dominios de errores para evitar puntos únicos de fallo (SPOF).
  • Supervisión: ¿funcionan los recursos principales según lo previsto? Si no es así, ¿en qué momento toma el recurso de copia de seguridad el relevo como principal?
  • Failover: cuando se cumplen los criterios para disparar un cambio de principal a en espera, ¿está listo el recurso en espera?

Para ofrecer una alta disponibilidad, un sistema debe dar respuesta a todos estos elementos. Aunque la alta disponibilidad se puede lograr en muchos niveles diferentes (incluidos el nivel de aplicación y el nivel de infraestructura en la nube), esta sección se centra en el nivel de infraestructura en la nube. Para obtener más información, consulte Más información sobre la arquitectura de una topología de nube de alta disponibilidad.

Selección de un enfoque de HA

Algunas aplicaciones son más críticas que otras. Utilice el siguiente árbol de decisión para decidir qué capacidades de HA de OCI utilizar al desplegar aplicaciones empresariales de varios niveles en OCI.

Árbol de decisión para decidir qué capacidades de alta disponibilidad de OCI utilizar al desplegar aplicaciones empresariales de varios niveles.

Para nuestra aplicación empresarial de ejemplo, necesitamos HA y ser capaces de sobrevivir a una interrupción del dominio de disponibilidad. Además, tenemos que ser capaces de sobrevivir a una interrupción regional, pero poder manejar algo de tiempo de inactividad si una región se ve afectada. Por estos motivos, hemos elegido un despliegue activo/pasivo en varias regiones. Los aspectos del despliegue pasivo se tratan en Recuperación ante desastres.

Medición de HA

La alta disponibilidad es la capacidad de un sistema para cumplir un nivel continuo de rendimiento operativo, o tiempo de actividad, durante un período de tiempo determinado.

La disponibilidad se suele expresar como un porcentaje del tiempo de actividad en un año y se suele describir mediante "nueves". En la siguiente tabla se muestran los niveles de disponibilidad y el tiempo de inactividad asociado de cada nivel.

% de disponibilidad Disponibilidad (nueves) Tiempo de inactividad por año Tiempo de inactividad por mes Tiempo de inactividad por semana Tiempo de inactividad por día
90 % Un nueve 36,53 días 73,05 horas 16,80 horas 2,40 horas
99 % Dos nueves 3,65 días 7,31 horas 1,68 horas 14,40 minutos
99,9 % Tres nueves 8,77 horas 43,83 minutos 10,08 minutos 1,44 minutos
99,99 % Cuatro nueves 52,60 minutos 4,38 minutos 1,01 minutos 8,64 segundos
99,999 % Cinco nueves 5,26 minutos 26,30 segundos 6,05 segundos 864,00 milisegundos
99,9999 % Seis nueves 31,56 segundos 2,63 segundos 604,80 milisegundos 86,40 milisegundos
99,99999 % Siete nueves 3,16 segundos 262,98 milisegundos 60,48 milisegundos 8,64 milisegundos
99,999999 % Ocho nueves 315,58 milisegundos 26,30 milisegundos 6,05 milisegundos 864,00 microsegundos
99,9999999 % Nueve nueves 31,56 milisegundos 2,63 milisegundos 604,80 microsegundos 86,40 microsegundos

Cada servicio de Oracle Cloud Infrastructure suele tener un acuerdo de nivel de servicio (SLA) que define la disponibilidad esperada de ese servicio. La mayoría de las soluciones en la nube requieren que utilice una combinación de servicios para lograr la arquitectura deseada para su despliegue en la nube. Cuando se utilizan servicios combinados, la disponibilidad general del sistema depende de la disponibilidad de cada uno de los subsistemas. El SLA global de un sistema con varios componentes se denomina SLA de compuesto.

Para calcular el SLA de compuesto de un sistema o una aplicación, tenga en cuenta todos los subsistemas y cómo están configurados esos sistemas. Por ejemplo, suponga un escenario en el que una aplicación dependa de dos sistemas: Sistema A y Sistema B. Cada sistema tiene una disponibilidad del 99,9 %. Los sistemas tienen una dependencia en serie, como se muestra en la siguiente imagen.

Diagrama de un sistema de ejemplo con subsistemas dependientes en serie.

Si el Sistema A o el Sistema B no están disponibles, el sistema completo no estará disponible. Para este tipo de configuración del sistema, puede calcular el SLA de compuesto multiplicando la disponibilidad de los dos sistemas: 99,9 % × 99,9 % = 99,8 %. Debido a la dependencia en serie entre los dos sistemas, el SLA de compuesto resultante del 99,8 % es menor que los SLA individuales de cada sistema.

Consideraciones de diseño de HA

Oracle Cloud Infrastructure proporciona los bloques de creación que le permiten activar la HA para su infraestructura.

La aplicación empresarial de ejemplo utiliza servicios dentro de los conceptos de regiones, dominios de disponibilidad y dominios de errores de OCI. El uso de varios dominios de disponibilidad y de varios dominios de errores en cada uno de esos dominios de disponibilidad aumenta la redundancia y elimina el punto único de fallo (SPOF). Para obtener información general sobre las regiones y una lista de recursos disponibles en las distintas regiones, dentro de una sola región o dentro de un solo dominio de disponibilidad, consulte Regiones y dominios de disponibilidad.

Recomendamos que revise la información relevante sobre resiliencia de los productos de OCI y, a continuación, en función de los productos de la plataforma OCI elegidos, ajuste las arquitecturas para adaptarlas a cualquier divergencia entre las capacidades del producto y sus requisitos de alta disponibilidad.

La región principal es donde Oracle crea su arrendamiento y donde se definen los recursos de Identity and Access Management (IAM) de su organización. En función de los requisitos de negocio, puede suscribirse a otras regiones e IAM propaga automáticamente las actualizaciones a todas las regiones del arrendamiento. Para obtener más información, consulte Gestión de regiones.

Red

Después de crear la base de red de las redes y subredes virtuales en la nube, para proporcionar una alta disponibilidad, debe utilizar el servicio Load Balancing para distribuir el tráfico. Cuando se despliega un equilibrador de carga, este utiliza una configuración de HA como se muestra en el diagrama de la arquitectura de ejemplo. Para obtener más información, consulte la sección sobre planificación de alta disponibilidad para recursos de red.

Recursos informáticos

Para eliminar el SPOF, cree varias instancias informáticas que se distribuyan entre los dominios de errores de cada uno de los dominios de disponibilidad. Coloque las instancias informáticas tras un equilibrador de carga para distribuir el tráfico y obtener una alta disponibilidad como se muestra en la arquitectura de ejemplo. Para obtener más información, consulte Descripción general del servicio informático, Mejores prácticas para instancias de Compute y la sección sobre planificación de alta disponibilidad para instancias de Compute.

Almacenamiento

OCI proporciona un juego de servicios de almacenamiento (Block VolumeFile StorageObject Storage), que puede configurar para cumplir los requisitos de una arquitectura de alta disponibilidad.

Object Storage es una plataforma de almacenamiento de alto rendimiento a escala de internet que ofrece una durabilidad de datos fiable y rentable. Object Storage es un servicio regional y está disponible en todos los dominios de disponibilidad de una región. Los datos se almacenan de forma redundante en varios servidores de almacenamiento y en distintos dominios de disponibilidad, a fin de garantizar una alta disponibilidad. El almacenamiento de objetos también incluye reparación automática y control de la integridad de los datos para mejorar aún más su durabilidad y disponibilidad.

El almacenamiento de archivos proporciona un sistema de archivos para empresas duradero, ampliable y seguro. Utiliza una arquitectura resistente que replica datos cinco veces en diferentes dominios de errores, lo que garantiza una alta disponibilidad y durabilidad. El almacenamiento de archivos se puede ampliar automáticamente para adaptarse al crecimiento de hasta 8 exabytes de datos. Las instantáneas y los clones del sistema de archivos se pueden utilizar para proteger los datos de supresiones accidentales y para realizar copias de los datos al instante. Los ciclos de vida de las instantáneas se pueden gestionar automáticamente mediante la función instantánea basada en políticas.

Los volúmenes en bloque son duraderos y tienen una alta disponibilidad, ya que almacenan varias copias de datos de forma redundante en distintos servidores de almacenamiento con mecanismos de reparación incorporados. Los volúmenes en bloque se pueden asociar a una o varias máquinas virtuales (VM), y persisten más allá de la vida útil de las máquinas virtuales. Los volúmenes en bloque mejoran aún más la alta disponibilidad con copias de seguridad automatizadas en Object Storage y funciones de clonación de volúmenes.

Para conocer los pasos para crear recursos de almacenamiento, consulte Creación de un volumenCreación de sistemas de archivosGestión de cubos. Para conocer las mejores prácticas, consulte Planificación de alta disponibilidad para almacenamiento.

Base de datos

Las bases de datos Oracle de OCI vienen en varios modelos o tipos de despliegue. Cada modelo ofrece un conjunto creciente de capacidades de alta disponibilidad.

Independientemente del sistema de base de datos utilizado, recomendamos que consulte Maximum Availability Architecture (MAA), que es un conjunto de mejores prácticas desarrolladas por ingenieros de la empresa Oracle durante muchos años para el uso integrado de tecnologías para la alta disponibilidad, la protección a los datos y la recuperación ante desastres de Oracle.

Servicio de base de datos básico de OCI

OCI Base Database Service te permite tener un control total sobre tus datos al tiempo que aprovechas las capacidades de Oracle Database y OCI. Para obtener una lista de las ediciones de Database soportadas y las unidades de computación subyacentes en las que se pueden desplegar, consulte la documentación de OCI Base Database Service. Las funciones de alta disponibilidad mencionadas se aplican a todas las versiones de base de datos o a las unidades de computación subyacentes.

Enterprise Edition Extreme Performance edition permite un sistema de base de datos Real Application Cluster (RAC) de dos nodos que abarcan diferentes dominios de errores dentro del mismo dominio de disponibilidad. Esto proporciona alta disponibilidad en los siguientes escenarios:

  • Protección contra fallos de nodo
  • Mantenimiento de software sin tiempo de inactividad
  • Cambios flexibles (CPU, memoria y almacenamiento) sin tiempo de inactividad
  • (Casi) Mantenimiento no planificado transparente

Si se necesita alta disponibilidad en los dominios de disponibilidad, puede considerar una base de datos en espera pasiva activada por RAC que refleje el sistema de base de datos RAC principal, con datos replicados mediante Oracle Data Guard. La conmutación por error a la base de datos en espera pasiva puede ser manual con un pequeño tiempo de inactividad.

Nota: OCI Base Database soporta un máximo de dos nodos RAC. Para versiones de Oracle Database o para nodos de RAC superiores a 2, considere OCI Exadata Database on Dedicated Infrastructure (ExaDB-D).

Base de datos de Exadata en infraestructura dedicada (ExaDB-D)

Exadata proporciona capacidades de alta disponibilidad integradas.

Se aplican todas las mejores prácticas existentes con su instancia de Exadata local. Los conceptos descritos para la base de datos base de OCI, como RAC y Data Guard (para la base de datos en espera), se aplican a la base de datos de Exadata en infraestructura dedicada (ExaDB-D), con los siguientes atributos adicionales:

  • Exadata Database on Dedicated Infrastructure (ExaDB-D) permite más de dos nodos RAC, lo que es una limitación con el sistema Base Database.
  • Escalabilidad, rendimiento y disponibilidad de Exadata
  • Agilidad de Exadata con un número cambiante de máquinas virtuales, almacenamiento y recursos informáticos
  • Protección de datos y Exadata QoS para operaciones de base de datos

Exadata tiene detección instantánea de fallos que puede detectar fallos de nodo de base de datos, servidor de almacenamiento y red en menos de 2 segundos, y reanudar el rendimiento y el tiempo de actividad de la aplicación y el servicio de base de datos.

Recomendamos las siguientes configuraciones para garantizar la disponibilidad continua de las aplicaciones.

  • Utilice los servicios de base de datos gestionados por Oracle Clusterware para conectar la aplicación. Para los entornos de Oracle Data Guard, utilice servicios basados en roles.
  • Utilice la cadena de conexión recomendada con timeouts incorporados, reintentos y retrasos, de modo que las conexiones entrantes no tengan errores durante las interrupciones.
  • Configure las conexiones con Fast Application Notification.
  • Aproveche la continuidad de las aplicaciones o la continuidad de las aplicaciones transparente para reproducir transacciones sin confirmar en curso de forma transparente después de fallos.

Autonomous Database

Por defecto, Oracle Autonomous Database (ADB) tiene alta disponibilidad e incorpora una configuración de varios nodos para protegerse contra fallos de hardware localizados.

Cada servicio de aplicación ADB reside en al menos una instancia de Oracle Real Application Clusters (Oracle RAC), con la opción de realizar un failover a otra instancia de Oracle RAC disponible para interrupciones no planificadas o actividades de mantenimiento planificadas, lo que permite un tiempo de inactividad igual a cero o casi cero.

Las principales actualizaciones de la base de datos están automatizadas. Además, el tiempo de inactividad de Oracle Autonomous Database Serverless (ADB-S) es mínimo.

Los acuerdos de nivel de servicio (SLA) de tiempo de actividad al mes son del 99,95 % (un máximo de 22 minutos de tiempo de inactividad al mes).

ADB-S permite una instancia local (entre dominios de disponibilidad o dentro de dominios de disponibilidad para regiones de un solo dominio de disponibilidad) y una base de datos en espera remota adicional.

Autonomous Data Guard agrega una base de datos simétrica en espera con Oracle Data Guard a un rack de Exadata localmente (en dominios de disponibilidad o dentro de dominios de disponibilidad para regiones de dominio de disponibilidad único) con una adicional en otra región. El sistema de base de datos principal y en espera se configuran de manera simétrica para asegurar que el nivel de servicio se mantenga después de la transición de roles de Data Guard.

Las mejores prácticas para mantener los tiempos de actividad de las aplicaciones se describen aquí.

Monitoring

Monitoring le permite supervisar de forma activa y pasiva sus recursos en la nube para mejorar la disponibilidad y unos niveles de servicio consistentes. Para ver un ejemplo, consulte la sección sobre la supervisión integral de las aplicaciones que se ejecutan en Oracle Cloud Infrastructure.

Explorar más

Manuales de soluciones:

Arquitecturas de referencia:

Blogs y otros recursos: