48
Sistema Clúster Este tipo de sistemas se basa en la unión de varios servidores que trabajan como si de uno sólo se tratase. Los sistemas clúster han evolucionado mucho desde su primera aparición, ahora se pueden crear distintos tipos de clústers, en función de lo que se necesite: Unión de Hardware Clústers de Software Alto rendimiento de bases de datos Estas son solo algunas de las opciones que tenemos disponibles. En resumen, clúster es un grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un único ordenador, más potente que los comunes de escritorio. De un sistema de este tipo se espera que presente combinaciones de los siguientes servicios: Alto rendimiento Alta disponibilidad Equilibrio de carga Escalabilidad Para que un sistema clúster funcione no es necesario que todas las máquinas dispongan del mismo Hardware y sistema operativo (clúster heterogéneo). Este tipo de sistemas debe de disponer de un interfaz de manejo de clústers, la cual se encargue de interactuar con el usuario y los procesos, repartiendo la carga entre las diferentes máquinas del grupo.

Qué es exactamente un sistema cluster

Embed Size (px)

Citation preview

Page 1: Qué es exactamente un sistema cluster

Sistema Clúster

Este tipo de sistemas se basa en la unión de varios servidores que trabajan como si de uno sólo se tratase. Los sistemas clúster han evolucionado mucho desde su primera aparición, ahora se pueden crear distintos tipos de clústers, en función de lo que se necesite:

Unión de HardwareClústers de SoftwareAlto rendimiento de bases de datos

Estas son solo algunas de las opciones que tenemos disponibles. En resumen, clúster es un grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un único ordenador, más potente que los comunes de escritorio. De un sistema de este tipo se espera que presente combinaciones de los siguientes servicios:

Alto rendimientoAlta disponibilidadEquilibrio de cargaEscalabilidad

Para que un sistema clúster funcione no es necesario que todas las máquinas dispongan del mismo Hardware y sistema operativo (clúster heterogéneo). Este tipo de sistemas debe de disponer de un interfaz de manejo de clústers, la cual se encargue de interactuar con el usuario y los procesos, repartiendo la carga entre las diferentes máquinas del grupo.

Page 2: Qué es exactamente un sistema cluster

¿Por qué un clúster?

El almacenamiento en clúster se halla en dos categorías: sistemas que combinan datos basados en bloques en una red de área de almacenamiento (SAN) y los que crean un espacio de nombres de archivo común entre archivadores NAS. Lo común es que el software de almacenamiento en clúster aporte un acceso simultáneo a los archivos distribuidos en muchos servidores y dispositivos de almacenamiento.

Hasta la fecha, la mayoría de los proveedores de almacenamiento principales han comercializado tecnología que puede virtualizar sistemas NAS agrupando la capacidad de discos tras motores NAS. Todos afirman estar desarrollando o evaluando también la tecnología de clúster de otras empresas. Mientras tanto, las empresas más jóvenes ya están ofreciendo software de clústeres que funciona en Windows y Linux.

En teoría, la gestión de clústeres de almacenamiento no debe ser más difícil que gestionar un solo conjunto, pero algunos usuarios dicen que sus interfaces de gestión aún podrían utilizar algunas mejoras. Permanezca a la escucha.

GESTIÓN

Centralizado:• Un nodo maestro para configurar el comportamiento de todo el sistema.• Este nodo es un punto crítico del sistema.• Facilita una mejor gestión del cluster

Descentralizado:• Modelo distribuido donde cada nodo se administra y gestiona.• Pueden utilizar aplicaciones de alto nivel centralizadas para gestionar.• Información de configuración en archivos locales• Más tolerancia a fallos• Mayor dificultad en administración

Page 3: Qué es exactamente un sistema cluster

Componentes necesarios para el funcionamiento de un clúster

Por norma general un clúster hace uso de diferentes componentes para funcionar, entre estos están:

Nodos (Ordenadores o servidores) Sistema operativo Conexión de Red (ampliado más abajo) Middleware (capa entre el usuario y el sistema operativo) Protocolos de comunicación y servicio Aplicaciones

Nodos:Los nodos pueden ser ordenadores de escritorio o servidores, de hecho se puede establecer un clúster con cualquier tipo de máquina.

Sistema-operativo:Este debe de tener un entorno multiusuario, cuanto más fácil sea el manejo del sistema menores problemas tendremos. CLUSTER EN WINDOWS SERVER 2008. Es mas simple, Volúmenes compartidos del cluster, Live migration,256 núcleos soportados, Acceso Direct Access.

Page 4: Qué es exactamente un sistema cluster

Conexiones-de-Red:Las conexiones utilizadas en este tipo de sistema pueden ser muy variadas, se pueden utilizar desde simples conexiones Ethernet con placas de red comunes o sistemas de alta velocidad como Fast Ethernet, Gigabit Ethernet, Myrinet, Infiniband, SCI, etc.

Middleware:El middleware es el software que actúa entre el sistema operativo y las aplicaciones y que brinda al usuario la experiencia de estar utilizando una única super máquina. Este software provee una única interfaz de acceso al sistema, denominada SSI (Single System Image). Optimiza el sistema y provee herramientas de mantenimiento para procesos pesados como podrían ser migraciones, balanceo de carga, tolerancia de fallos, etc. Este sistema también se encarga de la escalabilidad del clúster, detectando nuevas máquinas y añadiéndolas al grupo. Por lo tanto, si un cliente quisiera disponer de un clúster para su servidor Web, este podría optar entre diferentes opciones. No habría ningún problema en instalar un clúster que tuviese un sistema MySQL y PHP repartido entre diferentes máquinas.

Desventaja

Ninguna, este tipo de sistemas son los más fiables, ya que para la parada total del proceso deben de pararse todas las máquinas que componen el grupo. Es la mejor solución para crecer según las necesidades reales, ya que puede añadir tantas máquinas necesite.Empresas muy importantes como Google y Microsoft utilizan este tipo de sistemas para poner en marcha sus portales. Realmente con este tipo de soluciones las posibilidades son inmensas.

Page 5: Qué es exactamente un sistema cluster

Creando un clúster de alta disponibilidad en Microsoft Windows Server 2008 con SQL Server 2008 R2, con el objetivo de almacenar las bases de datos.

Bueno, antes de comenzar comento la situación del documento, disponemos de tres servidores, uno de ellos es el almacenamiento, o bien una cabina de discos o bien como en mi caso un servidor que comparte sus discos vía iSCSI, la cosa es tener un almacenamiento compartido para los nodos.

Estos dos nodos son dos Windows Server 2008 Enterprise (obligatorio), disponen de tres interfaces de red, una la red LAN (192.168.2.0/24) que les conectará con los equipos de la red, otra la pata de la red iSCSI (192.168.4.0/24) que conecta a los nodos con el almacenamiento (red privada para conseguir un mayor rendimiento), y finalmente una red HeartBeat (192.168.5.0/24) que servirá para comunicarse entre sí a los nodos del clúster y tener notificación cuando se caiga uno de ellos.

Al clúster le tendremos que asignar una dirección IP, así como a los recursos que creemos, en este caso un servidor de ficheros, de esta forma, los usuarios accederán a la IP asignada y no a la dirección IP de cada nodo.

Este proceso lo deberemos realizar con todos los nodos del clúster, primero lo haremos sobre un nodo cualquiera y posteriormente, cuando ya tengamos el clúster creado, lo realizaremos en los siguientes uniéndonos al clúster existente.

Page 6: Qué es exactamente un sistema cluster

Debemos tener instalado un sistema operativo mínimo que soporte el servicio de clúster cómo es Windows Server 2008 Enterprise Edition, para instalar el servicio de clúster, deberemos instalar dicha característica, para ello, vamos al “Administrador del servidor” > “Agregar características”,

Marcamos “Clúster de conmutación por error” & “Siguiente”,

Page 7: Qué es exactamente un sistema cluster

Presionamos “Siguiente” para comenzar su instalación,

…esperamos unos minutos mientras se instala…

OK, listo, ya tenemos el servicio instalado, pulsamos en “Cerrar” para poder comenzar su configuración,

Page 8: Qué es exactamente un sistema cluster

CONFIGURACIÓN DEL CLÚSTER

Abrimos la consola que tendremos dentro de las “Herramientas Administrativas” llamada “Administración de clúster de conmutación por error”.

Antes de comenzar podríamos comprobar la configuración que tenemos en el servidor, tanto de software cómo de hardware o configuración, en caso de ser en producción la realizaremos sí o sí, en este laboratorio lo omitiremos ya que posteriormente lo ejecutaré y por no repetir imágenes ;) Así que pulsamos en “Crear un clúster…” para iniciar el asistente de su creación,

Page 9: Qué es exactamente un sistema cluster

Bien, ahora debemos indicar el nombre de un nodo que queremos que pertenezca a este nodo, osea, nosotros mismos, pulsamos en “Examinar…” y agregamos la cuenta del equipo,

Escribimos el nombre del nodo ‘Sistema1’ y aceptamos,

Listo, ya tenemos un nodo, continuamos, posteriormente nos uniremos al clúster, “Siguiente”,

Page 10: Qué es exactamente un sistema cluster

Introducimos un nombre al clúster, en mi caso se llamará “Clúster” y además le introducimos una dirección IP de gestión, “Siguiente”,

Listo, confirmamos que es correcto y pulsamos en “Siguiente” para crear el clúster,

Page 12: Qué es exactamente un sistema cluster

CREACIÓN DE LOS NODOS

Una vez creado, podríamos ir añadiendo los nodos al clúster, para ello pulsamos en “Agregar nodo”,

Realizamos el asistente y agregamos tantos nodos como queramos que tenga el clúster, “Examinar…”,

Indicamos el nombre del otro nodo & “Aceptar”,

Bien, continuamos, “Siguiente”,

Page 13: Qué es exactamente un sistema cluster

Al ser un nuevo nodo, igual que al principio, se debe ejecutar las pruebas para validar el nodo antes de incluirlo en el clúster, pulsamos “Sí, Ejecutar las pruebas de validación de configuración y volver al proceso de creación del clúster”, & “Siguiente”,

Ejecutamos TODAS las pruebas, “Siguiente”,

Page 14: Qué es exactamente un sistema cluster

Comprobamos las validaciones que nos realizará en el nodo, “Siguiente” para comenzarlas,

…esperamos unos minutos mientras realiza las pruebas oportunas en este nuevo nodo…

Correcto, todas las pruebas en mi caso finalizaron correctamente, así que este nodo y el clúster están en perfectas condiciones para continuar. “Finalizar”,

Page 15: Qué es exactamente un sistema cluster

Ok, confirmamos, que vamos a agregar a ‘Servidor’ al nodo pulsando “Siguiente”,

Ok, ya disponemos de un clúster con dos nodos, ya podremos crear recursos, comprobaremos el informe & “Finalizar”,

CONFIGURACIÓ DE REDES

Page 16: Qué es exactamente un sistema cluster

Bien, una de las cosas a realizar, es configurar el nombre de las redes, suponiendo que cada nodo tiene tres redes (LAN, iSCSI & HeartBeat) y en Windows las he renombrado para poder identificarlas correctamente, lo realizaremos aquí también a parte de indicar para qué usaremos cada red, primero las renombramos todas desde “Cambiar nombre”,

Cuando ya las hemos cambiado el nombre indicando la función que tendrán, las configuramos desde sus “Propiedades”,

Sobre cada tipo de red, deberemos configurar si daremos acceso al clúster a esta red, si daremos acceso a los clientes a esta red o si no permitiremos que el clúster use la red. En este caso, la red LAN, permitiré lógicamente que el clúster acceda a ella para dar servicio a los clientes, marcando “Permitir que el clúster use esta red” & “Permitir que los clientes se conecten a través de esta red”.

Page 17: Qué es exactamente un sistema cluster

En la red iSCSI será diferente, ya que es la red que usará cada nodo para conectarse al almacenamiento, así que el clúster aquí no pinta nada, marcamos “No permitir que el clúster use esta red”,

Y a la red HeartBeat, daremos acceso al clúster, esto es opcional, en mi caso, ok,

Page 18: Qué es exactamente un sistema cluster

Una vez tenemos la red configurada, vamos a configurar el almacenamiento, esto es, añadir los discos que tenemos conectados o bien por fibra o bien por iSCSI a los nodos. Para ello, botón derecho en “Almacenamiento” > “Agregar un disco”,

Seleccionamos el disco o los discos que querramos agregar & “Aceptar”, ojo que debe ser un disco con el particionamiento creado con MBR y no GPT (además el clúster de Windows 2008, ya no soporta ciertos target iSCSI como OpenFiler, por ello uso WUDSS).

Page 19: Qué es exactamente un sistema cluster

Ahora vamos a configurar uno de los discos para el uso del quórum del clúster (El Quórum es el disco usado para compartir entre los distintos nodos la información de la configuración del clúster), para ello, sobre el clúster con botón derecho > “Acciones adicionales…” > “Configurar opciones de quórum de clúster…”

Seleccionamos “Mayoria de disco y nodo (se recomienda para el número actual de nodos) & “Siguiente”,

Page 20: Qué es exactamente un sistema cluster

Seleccionamos el disco que haga de quórum & “Siguiente”,

Confirmamos pulsando “Siguiente”,

Listo, correcto, pulsamos en “Finalizar”,

Ya tenemos el clúster creado y correctamente funcionando, ya tenemos unas redes definidas, unos almacenamientos, el quórum, un clúster y sus nodos. Pero ahora queda agregar los servicios, configurarlos, esto es, crear los recursos para los que daremos servicios, en este caso vamos a crear uno sencillo, un simple servidor de ficheros, que comparta directorios y siempre esté en una alta disponibilidad.

Page 21: Qué es exactamente un sistema cluster

CREAR SERVICIOS

Para ello, sobre “Servicios y Aplicaciones” con botón derecho seleccionamos “Configurar un servicio o aplicación…”,

Seleccionamos la que nos interese, en este caso “Servidor de archivos”, “Siguiente”,

Page 22: Qué es exactamente un sistema cluster

Indicamos un nombre a este servicio, en mi caso pondré algo medio lógico ‘McGiverFS’ y además le debemos especificar una dirección IP, este nombre y está IP será la que usen los usuarios finales para acceder al clúster, en mi caso a sus ficheros, así que pondremos nombres fáciles de asimilar para nuestros queridos usuarios. “Siguiente”

Seleccionamos un disco para usar de almacenamiento, cómo tengo otra LUN, se la indico & “Siguiente”,

Page 23: Qué es exactamente un sistema cluster

Comprobamos que es correcta la configuración y pulsamos en “Siguiente” para crearlo,

… esperamos…

Listo, “Finalizar”,

Page 24: Qué es exactamente un sistema cluster

Listo! ya tenemos nuestra primera aplicación o servicio colgada del clúster, ahora simplemente una comprobación, como podemos observar, este servicio se está ejecutando en el nodo ‘Servidor’, tenemos que comprobar que se mueve correctamente entre los nodos.

Para ello, podemos forzarlo con botón derecho sobre el servicio/aplicación “Mover este servicio o aplicación a otro nodo” > “Moder al nodo Patty”,

Page 25: Qué es exactamente un sistema cluster

Confirmamos que queremos moverlo, ya que quien esté conectado podrá perder la conexión durante unos segundillos de ná! así que “Mover McGiverFS a Patty”,

Si queremos comprobar la disponibilidad del clúster, podemos dejar un PING a McGiverFS con la opción -t para comprobar que sólo perdemos un par de PING’s y es un mínimo corte.

Listo, tras esto, comprobamos que el servicio/aplicación ya se ejecutar en el otro nodo. Ahora ejecutaremos la misma prueba devolviéndolo a otro nodo, simplemente para comprobar que todo es correcto.

Page 26: Qué es exactamente un sistema cluster

Instalación de SQL Server 2008 en clúster de Windows 2008 R2

En este documento veremos la instalación de un clúster de SQL Server 2008 bajo dos nodos Windows Server 2008 R2, instalaremos ambos nodos para obtener un servicio de SQL Server en alta disponibilidad. Lo primero de todo es tener el clúster de Windows 2008 R2 montado y bien configurado, al que le tendremos varios discos disponibles para las BBDD, LOGs, backup y MSTDC.

Una vez listo y tengamos el clúster creado y por lo menos un nodo en él, podremos comenzar a configurar previamente los requisitos necesarios para poder configurar el clúster de alta disponibilidad para SQL 2008. Debemos tener instalado antes de continuar Framework .NET 3.5.1 (antes de instalar SQL Server 2008).

Así que, abrimos la consola de “Administrador de clústeres de conmutación por error” para crear el servicio DTC. En “Servicios y aplicaciones” dentro de nuestro clúster con botón derecho > “Configurar un servicio o aplicación…”.

Page 27: Qué es exactamente un sistema cluster

Seleccionamos “Coordinador de transacciones distribuidas (DTC)” & “Siguiente”. Este servicio ‘coordina’ las transacciones que actualizan los recursos protegidos contra transacciones (como las bases de datos).

Indicamos el nombre del servicio y una dirección IP & “Siguiente”,

Seleccionamos el disco que tenemos disponible en nuestro almacenamiento para DTC, “Siguiente”. Con tener una LUN de 512Mb sería suficiente, Microsoft en varios documentos varía el tamaño.

Page 29: Qué es exactamente un sistema cluster

Bien, ahora instalaremos Microsoft SQL Server 2008 pero le integraremos el último service pack disponible para instalarlo ya actualizado (slipstream), nos bajamos de la web de Microsoft el último SP en el mismo idioma que realizaremos la instalación y lo descomprimimos en un directorio mediante el comando: SQLServer2008SPx…exe /x:PATH_SP.

Una vez lo tenemos, entramos en la carpeta recién descomprimida del SP de SQL a x64setup3082 e instalaremos la versión actualizada del programa de instalación de SQL ejecutando sqlsupport.msi.

Una vez realizada la instalación ya podremos instalar SQL Server 2008 integrándolo con el último SP, para ello ejecutaremos desde línea de comandos en el DVD de SQL: setup.exe /PCUSource=PATH_SP.

Bueno, sin comentarios, marcamos “No volver a mostrar este mensaje” & “Ejecutar programa”,

Page 30: Qué es exactamente un sistema cluster

Bien, al ser este el primer servidor que instalaremos de SQL en alta disponibilidad iremos a “Instalación” > “Nueva instalación de clúster de conmutación por error de SQL Server”,

Ejecutará las reglas auxiliares para comprobar si no tendremos problemas… “Aceptar”,

Page 31: Qué es exactamente un sistema cluster

E instalamos pues los archivos auxiliares del programa de instalación “Instalar”,

Listo, podemos comprobar que cumplimos todos los requisitos a la perfección y podemos comenzar la instalación del primer nodo de nuestro clúster SQL, “Siguiente”,

Page 33: Qué es exactamente un sistema cluster

Seleccionamos las características que vamos a necesitar, en mi caso simplemente el motor de base de datos y las herramientas de administración, además de indicar el directorio de instalación para las características compartidas y las x86. “Siguiente”,

Bien, ahora debemos indicar el nombre de red que queramos que tenga nuestro clúster, además de indicar el nombre de la instancia y su directorio. “Siguiente”,

Comprobamos que tenemos espacio, “Siguiente”,

Page 34: Qué es exactamente un sistema cluster

“Siguiente”,

Agregamos los discos que vamos a necesitar al clúster de SQL, en mi caso agregaré tres, uno para almacenar las bases de datos, otro para los registros de las BD y otro para las copias de seguridad. “Siguiente”,

Indicamos la dirección IP que queremos que tenga el clúster SQL, “Siguiente”,

Page 35: Qué es exactamente un sistema cluster

“Siguiente”,

Debemos especificar una cuenta para iniciar los servicios ‘Agente SQL Server’ y ‘SQL Server Database Engine’, así como confirmar que el tipo de inicio de los servicios está como ‘Manual’. “Siguiente”,

Page 36: Qué es exactamente un sistema cluster

En la pestaña “Aprovisionamiento de cuentas” indicamos la configuración que necesitemos en el modo de autenticación,

En la pestaña “Directorio de datos” especificaremos nuestros directorios de datos, de datos para las BD de usuario y sus registros, así como los directorios para la BD temporal y el directorio de copia de seguridad. “Siguiente”,

Page 38: Qué es exactamente un sistema cluster

Comprobamos que es una instalación de tipo actualización integrada o slipstreaming además de comprobar que el resto de opciones son correctas, “Instalación” para comenzar a instalar,

Una vez listo “Siguiente”,

Page 39: Qué es exactamente un sistema cluster

Perfecto! instalación correcta, “Cerrar”. Con esto ya tendremos perfectamente instalado el primer nodo de nuestro clúster SQL, ahora simplemente nos quedaría instalar SQL en el resto de nodos que necesitemos para montar el sistema de alta disponibilidad.

Para añadir el resto de nodos al clíster de SQL existente realizaremos la instalación cumpliendo los prerequisitos, integrando el SP… y en el asistente de instalación seleccionaremos “Agregar un nodo al clúster de conmutación por error de SQL Server”.

Page 40: Qué es exactamente un sistema cluster

Completaremos el asistente de instalación igual que antes indicando que nos agregaremos a la instancia indicada.

Para mantener el servidor actualizado con los últimos parches de Microsoft, a la hora de instalarlos realizaremos la instalación primero en el nodo pasivo, una vez este actualizado moveremos los recursos a él para comprobar que los servicios arrancan correctamente y procederemos a actualizar de igual modo el otro nodo.