Consiguiendo Alta Disponibilidad y Contingencia
-
Upload
alberto-hernandez-hernandez -
Category
Documents
-
view
214 -
download
0
Transcript of Consiguiendo Alta Disponibilidad y Contingencia
-
7/26/2019 Consiguiendo Alta Disponibilidad y Contingencia
1/5
Consiguiendo Alta Disponibilidad y Contingencia con Oracle Escrito en 11/02/2013 por Francisco Riccio
Actualmente las empresas requieren el acceso a sus bases de datos en todo momento, adems de necesitarlas
acceder lo ms rpido posible. Como Administradores de Base de Datos & Aplicaciones siempre ha sido un
desafo poder cumplir con este requerimiento de las empresas cuyo rubro no permite nunca detener el sistema
productivo.
Frente a este problema, tenemos varias soluciones tales como tener instalado un cluster y un ambiente de
contingencia.
El objetivo de este artculo es comentar las bondades de tener un cluster y un ambiente de contingencia en nuestra
empresa y asimismo entregar un panorama general de los mismos.
Primero debemos definir Qu es un cluster?, y en trminos sencillos significa agrupar 2 o ms servidores unidos
mediante una red de alta velocidad, de tal modo que esta agrupacin forma un gran servidor potente ubicado en
un centro de cmputo.
Al estar varios servidores en cluster, nos entrega muchos beneficios que se pueden resumir para nuestro usuario
final en un acceso ms rpido de la informacin (porque cada servidor balancear la carga de trabajo), adems de
permitirle una mayor posibilidad de siempre tener un acceso a la informacin (porque si falla un servidor, otro
servidor del conjunto puede atender el requerimiento) y permitirle tener soluciones escalables (podemos
aumentar ms servidores al cluster para soportar ms usuarios y mantener la performance). Existen muchos
proveedores que ofrecen varias tecnologas para implementar un cluster, por ejemplo: Microsoft, Oracle, IBM,
Red Hat, etc.
Todas las tecnologas se basan en el siguiente esquema: Un conjunto de servidores que comparten un storage
externo comn, con la finalidad de que si un servidor se malogra, los dems servidores puedan seguir accediendo
a la informacin ya que la informacin se ubica en un storage externo y compartido para todos los servidores.Para el storage externo tenemos tambin diferentes soluciones, precios y beneficios, por ejemplo IBM ofrece sus
Storage DS en la serie 8000 como ltima generacin, HP ofrece su Storage XP1000 y as otros fabricantes. Los
storage modernos tienen como caractersticas que su conexin hacia los servidores es por fibra y la velocidad de
transmisin es de 4 Gigabits por segundo, mantienen un cach con la finalidad de colocar ah la informacin y
luego escribirlo en los discos, soportan varios discos, el storage cuenta con procesadores para su procesamiento y
en algunos casos estos procesadores se encuentran en un ambiente alta disponibilidad por hardware como el DS
8300 de IBM.
Volviendo al escenario de la implementacin de un cluster, este storage externo se presenta a cada servidor como
discos duros, donde por ejemplo, el servidor 1 ve el disco duro con serial A, ese mismo disco duro con serial A es
tambin visto por el servidor 2. Hasta este paso tenemos un storage externo y comn para los servidores, perodeben ser formateados y particionados los discos (en el caso de Windows/Linux con fdisk). Una vez particionados
los discos el gran problema que se presenta para implementar nuestro cluster es el formato que tendrn las
particiones de los discos. Aqu existen varias respuestas: Si estamos en Windows podemos formatear los discos
con un sistema de archivos FAT32, NTFS; o si estamos en Linux podemos hacerlo con EXT3 etc. Pero ninguno de
estos sistema de archivos permiten que 2 o ms servidores puedan escribir y leer al mismo tiempo sobre el mismo
disco duro externo, por lo tanto necesitamos un sistema de archivos que permita esto, de tal modo que los
servidores del cluster puedan escribir y leer lo que ingresa cada servidor en tiempo real. Algunos de estos son
GPFS y JFS2 los cuales corresponden al sistema operativo UNIX AIX de IBM. As mismo HP presenta tambin
sus soluciones para UNIX HP-UX. En Linux y Windows contamos felizmente con una solucin gratuita de
ORACLE llamada OCFS (Oracle Cluster Filesystem).
11
RecommendRecommend
Pgina 1 de 2Consiguiendo Alta Disponibilidad y Contingencia con Oracle | MUGPERU Blog
03/11/2015http://blog.mugperu.com/index.php/2013/02/consiguiendo-alta-disponibilidad-y-conti...
-
7/26/2019 Consiguiendo Alta Disponibilidad y Contingencia
2/5
Entonces hasta el momento, hemos aprendido que para armar un ambiente cluster necesitaramos:
1. Una conexin de red sper rpida para que los servidores puedan coordinar.
2. Un storage externo y compartido para los servidores del cluster.
3. El sistema de archivos (con el que se les formatear a los discos del storage compartido) debe permitir la I/O a
todos los servidores del cluster en tiempo real.
4. Un software de cluster que haga el balanceo de carga, la alta disponibilidad y permita la administracin del
cluster.
Continuar .
Pgina 2 de 2Consiguiendo Alta Disponibilidad y Contingencia con Oracle | MUGPERU Blog
03/11/2015http://blog.mugperu.com/index.php/2013/02/consiguiendo-alta-disponibilidad-y-conti...
-
7/26/2019 Consiguiendo Alta Disponibilidad y Contingencia
3/5
Consiguiendo Alta Disponibilidad y Contingencia con Oracle (parte 2)Escrito en 16/02/2013 por Francisco Riccio
Continuando con la temtica de un artculo anterior
Entonces hasta el momento, hemos aprendido que para armar un ambiente cluster necesitaramos:
1. Una conexin de red sper rpida para que los servidores puedan coordinar.
2. Un storage externo y compartido para los servidores del cluster.
3. El sistema de archivos (con el que se les formatear a los discos del storage compartido) debe permitir la I/O a
todos los servidores del cluster en tiempo real.
4. Un software de cluster que haga el balanceo de carga, la alta disponibilidad y permita la
administracin del cluster.
El punto 1 y 2 son temas de hardware. Para el punto 3 tenemos una solucin gratuita de Oracle llamada OCFS.Sobre el punto 4, Oracle tambin ofrece una solucin gratuita llamada el Oracle Clusterware, su ltima versin es
la 11g. El Oracle Clusterware est disponible en diferentes plataformas. La idea ahora como Administradores de
Base de Datos & Aplicaciones es implementar el esquema mostrado en la figura 1.
Figura 1
Podemos apreciar por la figura 1, que nuestra base de datos estar ubicada en el storage compartido (con un
sistema de archivo que soporte un ambiente cluster) y el software de cluster har el trabajo ya mencionado
anteriormente.
La gran ventaja que nos ofrece Oracle con el clusterware si lo utilizamos sobre base de datos Oracle sobre otro
software de cluster de otros proveedores, es que el Oracle Clusterware realiza un balanceo de carga a nivel de
carga de procesamiento a nivel de Base de Datos y no a nivel de carga de CPU como hace el resto. Adems tiene
una caracterstica llamada Transparent Application Failover (TAF), el cual nos da la bondad de que si estamosnosotros realizando un reporte en un servidor determinado y si el servidor
presenta un problema de hardware y cae, Oracle Clusterware ser el responsable de llevar nuestra sesin del
servidor cado hacia otro servidor que este operativo y continuar con el reporte sin comenzar de cero y para el
usuario final ser transparente porque tendr su reporte sin conseguir un mensaje de error.
El clusterware tiene otras virtudes, por ejemplo: el mismo puede levantar automticamente un servicio cierta
cantidad de veces en caso el servicio este cado, adems permite trabajar en diferentes modos como activo/activo,
activo/pasivo, etc.
Desde la versin 10g, Oracle nos ofrece un nuevo sistema de archivos llamado ASM (Automatic Storage
Management), que tambin nos permite el I/O sobre los discos a tiempo real entre todos los servidores que
conforman el cluster, adems de ofrecer la caracterstica de stripping (significa que cada disco duro balancear lacarga de trabajo porque su informacin estar distribuida uniformemente entre todos los discos duros).
6
RecommendRecommend
Pgina 1 de 3Consiguiendo Alta Disponibilidad y Contingencia con Oracle (parte 2) | MUGPE...
03/11/2015http://blog.mugperu.com/index.php/2013/02/consiguiendo-alta-disponibilidad-y-conti...
-
7/26/2019 Consiguiendo Alta Disponibilidad y Contingencia
4/5
Este sistema de archivo solo permite almacenar archivos de base de datos tales como
datafiles, redo logs, archivers, etc. Mientras OCFS permite almacenar cualquier tipo de archivo. Tengamos
presente que si nosotros tenemos un disco duro con un sistema de archivo OCFS ASM, Oracle ser el
responsable de leer y grabar en crudo el disco.
De este modo hace un bypass al sistema operativo, teniendo un 30% de mejora de performance sobre sistema de
archivos convencionales tales como NTFS. Por experiencia personal, lo recomendable sera que los archivos de
configuracin y uso del OracleClusterware tales como el OCR y el Voting, deberan alojarse en un sistema de archivo OCFS y nuestra base de
datos en ASM. Nuestra base de datos corriendo con el software de cluster de Oracle es la solucin llamada: Oracle
RAC (Oracle Real Application Cluster) y tiene un costo adicional. Hasta este momento tenemos la nocin general
de cmo se compone nuestro cluster y qu soluciones nos ofrece Oracle para implementarlo.
Frente a esta solucin, se han preguntado Qu sucedera si tenemos una solucin Oracle RAC o cualquier otra
solucin de cluster de otro fabricante en nuestro centro de cmputo; y ocurre un accidente tal como un incendio,
terremoto, un atentado terrorista como la del 11 de setiembre o simplemente nuestro storage externo muri?
Frente a esto, nuestro cluster dejara de funcionar y nuestro storage externo tambin. En estos escenarios donde
los procesos de negocio deben continuar, es donde se piensa en implementar un ambiente de contingencia, con la
finalidad si algo sucede con todos nuestros servidores de produccin exista un servidor extra que pueda funcionarpara seguir brindando la informacin a la empresa y la disponibilidad del negocio contine.
Nuestro ambiente de contingencia debe estar ubicado en otro lugar fsico de la empresa y no menos de 10 Km. de
distancia de nuestro centro de cmputo.
Oracle nos ofrece una solucin llamada Oracle Dataguard, la cual nos permite tener una base de datos en estado
pasivo que estar recepcionando las transacciones del ambiente productivo, en caso de un desastre, esta base de
datos se convertir en servidor productivo y atender las peticiones de los usuarios porque siempre estuvo
sincronizando la base de datos con el ambiente productivo. Oracle indica que si tenemos una solucin Oracle RAC
con Oracle Dataguard, tendremos una disponibilidad de la informacin al 99.99999% durante los 365 das del
ao. Conocido como los cinco nueves. Adems como buena prctica, Oracle recomienda tener este ambiente decontingencia en cluster. Por lo tanto, en nuestro centro de cmputo tendramos un Oracle RAC enlazado a un
Oracle Dataguard que se conforma por otro Oracle RAC en estado pasivo.
El esquema quedara de este modo:
Figura 2
Si optamos por una solucin con Oracle Dataguard, yo recomiendo por experiencia que la comunicacin de
nuestro centro de cmputo hacia el ambiente de contingencia debe realizarse por medio de fibra oscura, para no
presentar problemas de performance ms adelante. Hoy en da Oracle nos ofrece mecanismos para que nuestros
usuarios siempre puedan obtener la informacin que necesiten de modo eficiente. Como DBAs debemos
considerar el uso de algunas de estas tecnologas presentadas tales como OCFS, ASM, Oracle RAC y Oracle
Dataguard para conseguir el desafo presentado al inicio del artculo .
Existe mucha documentacin sobre todas estas tecnologas, pero me gustara compartir el link de la pginaprincipal de OCFS, donde podemos encontrar las libreras que necesitaramos si deseramos implementarlo lo
ms antes posible.
Pgina 2 de 3Consiguiendo Alta Disponibilidad y Contingencia con Oracle (parte 2) | MUGPE...
03/11/2015http://blog.mugperu.com/index.php/2013/02/consiguiendo-alta-disponibilidad-y-conti...
-
7/26/2019 Consiguiendo Alta Disponibilidad y Contingencia
5/5
El url es: http://oss.oracle.com/projects/ocfs2
Pgina 3 de 3Consiguiendo Alta Disponibilidad y Contingencia con Oracle (parte 2) | MUGPE...