2013I Notas 11 Alta Disponibilidad Generalidades

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 78

Grandes de Bases de Datos

Alta disponibilidad
Introducción
Introducción
• ¿Qué es “Alta disponibilidad”?
• ¿Es necesaria?
• ¿Bajo que condiciones?
Alta disponibilidad
• “Conjunto de herramientas y técnicas que
permiten enmascarar los efectos no deseados
de fallas en software o hardware y mantienen
la disponibilidad de las aplicaciones de modo
que la percepción del tiempo no disponible
para los usuarios, es minimizada”
Alta disponibilidad
• Experiencia del usuario sin interrupción
• Sin perdida de datos
• Depende de quien lo diga
Alta disponibilidad

Cliente Usuario
• ¿Conoce su negocio? • ¿Qué es 100%?
• ¿Qué necesita? • ¿Qué necesita?
• ¿Cuánto le cuesta? • ¿Cómo lo necesita?
Alta disponibilidad
• ¿Qué es 7x24?
• ¿Quién lo necesita?
• ¿Cuándo se necesita?
• ¿Cuánto cuesta implementar?
• ¿Cuánto cuesta NO implementar?
Alta disponibilidad
• Recuperación de desastres
– Procesos para regresar a la correcta operación
luego de sucesos que afectan la disponibilidad,
mitigando los riesgos de la perdida del servicio o
perdida de datos.
Alta disponibilidad
• Recuperación de desastres
– Desde nuestra perspectiva, se enfoca a restaurar
un servidor de bases de datos
Alta disponibilidad
• Recuperación de desastres
– Respaldos
– Esquemas de creación de respaldos - recuperación
Alta disponibilidad
• Recuperación de desastres
– Documentación de los esquemas de respaldos
– Instrucciones “for dummies”
Alta disponibilidad
• Recuperación de desastres
– Respaldos fuera del almacenamiento primario
– Identificar cualquier tipo de falla que los produce
y como reaccionar ante ellos
Alta disponibilidad
• Clasificación de desastres - Criterios
– Probabilidad de ocurrencia
– Prevención del evento
– Impacto general ($$)
Alta disponibilidad
• Clasificación de desastres
– Ambientales
• Diseño pobre del ambiente operacional
• Desastre natural
• Accidente
Alta disponibilidad
• Clasificación de desastres
– Dispositivos - Hardware
• Tarjetas madre
• Cables
• Fallos en la red
Alta disponibilidad
• Clasificación de desastres
– Dispositivos - Medios
• Fallo en disco duro
• Cintas corruptas
• Fallos por lugares no propios de almacenamiento
Alta disponibilidad
• Clasificación de desastres
– Procesos
• Instalación de actualizaciones
• Tareas manuales no realizadas
• Tareas programadas con fallas
Alta disponibilidad
• Clasificación de desastres
– Usuarios
• “¿Donde quedó el WHERE?”
• Borrados en cascada
• Demasiados privilegios
Alta disponibilidad
Tipo de falla Probabilidad Prevención Impacto
Desastres naturales son casi
imposibles de predecir, pero
Ambiental Muy baja Catastrófico
instalaciones adecuadas pueden
disminuir su impacto
Existen herramientas de Tiempo sin sistema o pérdida de
Hardware Baja
monitoreo datos dependen de que fallo
Controladores RAID proveen
Varia de no tener pérdida de datos
medios de predecir fallos en
Medios Baja (al perder un disco en RAID 5), a
discos, pero es difícil predecir su
pérdida total (en un RAID 10)
fallo
Fácilmente dado que se deberían Varia de no tener tiempo sin
Procesos Alta conocer los procesos de cada sistema y pérdida de datos a no
área tener ningún impacto
No se puede predecir, aunque un
Usuario Baja equipo sin entrenamiento es más Varia de ninguno a uno catastrófico
factible a cometer errores
Alta disponibilidad
• Business Continuity
Creación y validación de un plan de operaciones
para la organización que explica los procedimientos
que el centro de datos y negocios deben seguir para
la recuperación y restauración de las
funcionalidades
Alta disponibilidad
• Business Continuity
– BCP – Business Continuity Planning
1) Identificar el alcance y limites.
2) Generar sesiones de análisis del impacto.
3) Obtener soporte de otras áreas.
4) Entender roles específicos.
5) Incluir detalles técnicos y no técnicos
Alta disponibilidad
Continuidad del
negocio

Alta
disponibilidad

Recuperación
de desastres
Alta disponibilidad
• ¿Cuál es más importante?
Alta disponibilidad - Conceptos
• Indisponibilidad planeada
• Indisponibilidad no planeada
Alta disponibilidad - Conceptos
• Indisponibilidad planeada
– Acciones que perjudican las operaciones del
sistema y no es posible evitar con el diseño actual
de los centros de datos
Alta disponibilidad - Conceptos
• Indisponibilidad planeada
– Actualización de versiones
– Aplicación de parches de seguridad
– Actualización de hardware
Alta disponibilidad - Conceptos
• Indisponibilidad no planeada
– Acciones que perjudican las operaciones del
sistema y no es posible evitar con el diseño actual
de los centros de datos
Alta disponibilidad - Conceptos
• Indisponibilidad no planeada
– Eventualidades en componentes de hardware,
software o ambientales
– Fallas en sistemas de enfriamiento
– Fallas en CPU, discos, red
– Terremotos, incendios, inundaciones
Alta disponibilidad
• ¿100%? ¿Es un mito?
• ¡Casi!
• Altos costos
Alta disponibilidad
• Altos costos
– Equipo
– 12 núcleos en CPU
– 64 GB RAM
– 640 GB DD en RAID 01
Alta disponibilidad
• Altos costos
– Hardware: US $180,000
– Software:
• Oracle EE: US $285,000
• Oracle RAC: US $138,000
• Un solo nodo:
– Aproximadamente: US $603, 000
– MX $ 8,321,400
Alta disponibilidad
• Mínimo 2 nodos
– US $1,206, 000
– MX $ 16,642,800
Alta disponibilidad
• Configuración “típica”
• 1 nodo
• Eliminar cualquier SPOF
Alta disponibilidad
• Si se convence, hay que hablar de:

Contratos
Alta disponibilidad
• SLA
• Service Level Agreements
• Porcentaje de tiempo disponible que tendrá
un sistema
• Nótese que “Tiempo con servicio” no es lo
mismo que “Disponibilidad”
Alta disponibilidad
• SLA
• Service Level Agreements
• En nuestro contexto deberían existir por lo
menos:
– Database Service Level Agreement
– Application Service Level Agreement
Alta disponibilidad - ISO
Tiempo sin servicio
% Disponibilidad Anual Mensual Semanal
90% 36.5 dias 72 horas 16.8 horas
95% 18.25 dias 36 horas 8.4 horas
98% 7.30 dias 14.4 horas 3.36 horas
99% 3.65 dias 7.20 horas 1.68 horas
99.5% 1.83 dias 3.60 horas 50.4 minutos
99.8% 17.52 horas 86.23 minutos 20.16 minutos
99.9% 8.76 horas 43.2 minutos 10.1 minutos
99.95% 4.38 horas 21.56 minutos 5.04 minutos
99.99% 52.6 minutos 4.32 minutos 1.01 minutos
99.999% 5.26 minutos 25.9 segundos 6.05 segundos
99.9999% 31.5 segundos 2.59 segundos 0.605 segundos
Alta disponibilidad
• Pero… al final, todo
Depende
• ¿Qué apreciación tiene el usuario si la BD se
encuentra 365 días funcionando pero la
aplicación falla por 7 horas?
Alta disponibilidad
• ¿Qué apreciación tiene el usuario si la BD se
encuentra funcionando pero tarda en
responder “mucho”?
Alta disponibilidad
• Alta disponibilidad es la conjunción de todos
los elementos que participan, no únicamente
en bases de datos
Alta disponibilidad
• Tiempo de recuperación
– Tiempo el cual es sistema en general se encuentra
nuevamente disponible y brindando servicio
– En nuestro contexto, tomaremos como sinónimo
de “Disponibilidad de datos”
Alta disponibilidad
• Disponibilidad de datos
– Tiempo que se tarda en regresar a un estado en el
cual la aplicación puede consultar nuevamente los
datos
– Requiere una estrategia de respaldos
Alta disponibilidad

• Soluciones
– “Cold standby”
– “Warm standby”
– “Hot standby”
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Los SMBD escriben en 2 lugares principalmente:
• Archivos de datos
• Archivos de registro o bitácora

Datos 2
1
Registro
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Los respaldos guardan la información de estos
archivos

Datos
BAK
Registro 3
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Los respaldos guardan la información de estos
archivos

BAK
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Los respaldos guardan la información de estos
archivos

BAK
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Detección y conmutación manual
– Perdida potencial de datos – trabajo
– Alcance de base de datos
– Servidores estándar
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Información limitada en la espera
– Copia de la base de datos – duplicación
– Debe conocerse como volver a conectarla
– Conmutación más lenta – Más tiempo
indisponible
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Tamaño “pequeño” – solamente las páginas
utilizadas son copiadas
– Respaldos de registro permiten recuperación en
“un momento del tiempo”
– Tiempo de restauración muy grande
Alta disponibilidad
• Respaldos
– Geográficamente en distintos puntos

MDF
BAK
Alta disponibilidad – Cold standby
• Desajuntar – Adjuntar
– Los SMBD escriben en 2 lugares, la idea es copiar
estos archivos a otro lugar

Datos 2 Datos
1
Registro 3 Registro
Alta disponibilidad – Cold standby
• Desajuntar – Adjuntar
– Detección y conmutación manual
– Perdida potencial de datos – trabajo
– Alcance de base de datos
– Servidores estándar
Alta disponibilidad – Cold standby
• Desajuntar – Adjuntar
– Información limitada en la espera
– Copia de la base de datos – duplicación
– Debe conocerse como volver a conectarla
– Conmutación más lenta – Más tiempo
indisponible
Alta disponibilidad – Cold standby
• Respaldos – Restauración
– Copia directa de los archivos
– No permite restauración en un tiempo
determinado
– Tiempo de restauración mayor
Alta disponibilidad – Warm standby
• Replicación
– Múltiples copias
– Conmutación manual
Alta disponibilidad – Warm standby
• Replicación
– Utilizado principalmente cuando se requiere
disponibilidad junto con un aumento de
actividades de lectura
– Conmutación manual
– Soluciones personalizadas
Alta disponibilidad – Warm standby
• Replicación
– No limitado a una base de datos entera, se puede
definir sobre un subconjunto (tablas)
– La copia se encuentra disponible en modo lectura
continuamente
– Latencia entre origen y copia puede ser amplia
(segundos)
Alta disponibilidad – Warm standby
• Replicación

Datos Datos

Registro Registro
Alta disponibilidad – Warm standby
• Replicación
Datos

Registro

Datos Datos

Registro Registro

Datos

Registro
Alta disponibilidad – Warm standby
• Replicación
Datos

Registro

Datos Datos

Registro Registro

Datos

Registro
Alta disponibilidad – Warm standby
• Replicación
Datos

Registro

Datos Datos

Registro Registro

Datos

Registro
Alta disponibilidad – Warm standby
• Replicación
Datos

Registro

Datos Datos

Registro Registro

Datos

Registro
Alta disponibilidad – Warm standby
• Envío de bitácoras
– Múltiples copias
– Conmutación manual
Alta disponibilidad – Warm standby
• Envío de bitácoras
– Alcance a nivel de base de datos
– Base de datos accesible sólo en lectura
– Los usuarios deben finalizar sesión para que se
aplique el siguiente log
– Los respaldos no bloquean los respaldos del log
Alta disponibilidad – Warm standby
• Envío de bitácoras
Datos

Registro

Datos Datos

Registro Registro

Datos

Registro
Alta disponibilidad – Hot standby
• Espejeo
– Detección automática
– Conmutación rápida y automática
– Conmutación manual
– Redirección transparente de clientes
– Poca pérdida de trabajo
Alta disponibilidad – Hot standby
• Espejeo
– Nivel de base de datos
– Base duplicada en modo de espera
– Funciona con múltiples esquemas
– Independencia del registro de transacciones
Alta disponibilidad – Hot standby
• Espejeo
– Sin componentes compartidos
– Sin limites de distancia (casi)
– Poco impacto en el desempeño de atención de
transacciones (depende del ambiente y carga de
trabajo)
– Mayor configuración
– Restauración automática de páginas dañadas
Alta disponibilidad – Hot standby
• Espejeo

2 5
3
Datos Datos
1 Registro 4 Registro
6
Alta disponibilidad – Hot standby
• Clúster - Cúmulos
– Detección automática
– Conmutación rápida y automática
– Conmutación manual
– Redirección transparente de clientes
– “Sin pérdida de trabajo”
Alta disponibilidad – Hot standby
• Clúster - Cúmulos
– Múltiples nodos
– Conmutación a nivel de instancia
– Copia única de las bases de datos
– Múltiples puntos de montaje
– Ventajas administrativas
– “Balanceo” de carga
Alta disponibilidad – Hot standby
• Clúster - Cúmulos

Datos
Red privada
Registro
Alta disponibilidad – Comparación
Característica Clúster E. Bitácoras Espejeo Replicación
Distancia Limitada Sin límite Sin límite Sin límite
Cambio de Automático o Automático o
Manual Manual
servidor manual manual
Tiempo
10 seg - 1
(promedio) 30 seg - 2 min Minutos Minutos
minuto
cambio servidor
Por registro
Instancia Depende del tipo de
Granularidad de Por transacción
completa replicación
transacciones
Alta disponibilidad – Comparación
Característica Clúster E. Bitácoras Espejeo Replicación
Instancia Base de Datos Base de Datos
Protección Base de Datos individual
completa individual individual
Sólo algunos Modo completo
Restricción a nivel Depende del tipo de
Ninguna modos de de
individual de BD replicación
recuperación recuperación
Consideraciones
especiales en Si No No No
hardware
Sistema de
SPOF almacenamie No No No
nto
Alta disponibilidad – Comparación
Característica Clúster E. Bitácoras Espejeo Replicación
Pérdida de datos
durante el cambio No Posiblemente Quizá Posiblemente
de servidor
Monitoreo en
objetos externos a No Si Si Si
la BD
Servidores
redundantes para No Posiblemente Si Si
reportes
Alta disponibilidad – Comparación
Característica Clúster E. Bitácoras Espejeo Replicación
Número de
servidores en 16 max Sin límite 1 Sin límite
espera
Configuración Inicial Post-inicial Post-inicial Post-inicial
Dependencia de
No No No Si
esquemas
Cambio
transparente de
Si No Posiblemente No
nombre entre
servidores
Alta disponibilidad – Implementaciones

Tecnología Oracle SQL Server MySQL


SQL Server Failover MySQL
Clúster Oracle RAC
Clustering Cluster
Oracle SQL Server Log
E. Bitácoras N/A
Streams Shipping
Oracle Data SQL Server
Espejeo N/A
Guard Mirroring
Oracle SQL Server MySQL
Replicación
Replication Replication Replication

También podría gustarte