PDF de programación - Servicio web de alta disponibilidad con GlusterFS, Galera, OpenStack y Owncloud

Imágen de pdf Servicio web de alta disponibilidad con GlusterFS, Galera, OpenStack y Owncloud

Servicio web de alta disponibilidad con GlusterFS, Galera, OpenStack y Owncloudgráfica de visualizaciones

Publicado el 9 de Abril del 2019
283 visualizaciones desde el 9 de Abril del 2019
1,4 MB
31 paginas
Creado hace 4a (19/06/2015)
Manuel Jesús Begines González

Servicio web de alta
disponibilidad con GlusterFS,
Galera, OpenStack y
Owncloud.

Manuel Jesús Begines González

Proyecto Fin de Ciclo

1

Manuel Jesús Begines González

Índice

1- Introducción

2- Arquitectura

2.1 Galera Cluster
2.2 GlusterFS
2.3 Balanceador de carga en OpenStack
2.4 Owncloud

3- Despliegue de la infraestructura



3.1 Instalación y configuración de Galera Cluster
3.2 Implementación y configuración de GlusterFS
3.3 Configuración del balanceador de carga en OpenStack
3.4 Instalación de Owncloud

4- Pruebas del sistema

4.1 Comprobar funcionamiento cuando se caen los nodos
4.2 Instalación de un cliente de escritorio
4.3 Monitorizar las conexiones

5- Conclusión

6- Webgrafía

2

3

3
4
5
7
9

10
11
15
19
23

25
25
26
29

31

31

Manuel Jesús Begines González

Introducción

En este proyecto vamos a construir un sistema de alta disponibilidad para un sistema de
almacenamiento remoto de datos como lo es Owncloud (aunque se podría hacer con cualquier
CMS, página web o plataforma), en muchos casos la necesidad nos lleva a tener un sistema lo mas
resistente posible contra caídas o perdida de datos. Para ellos haremos que la información no este en
un solo nodo de la red si no, que esté replicada en tantos servidores como resistente queremos que
sea nuestra infraestructura, a más servidores mayor disponibilidad y mejor se repartirán las
peticiones que vayan llegando al sistema.

Esta infraestructura debe actuar de manera que para el usuario sea totalmente transparente, para eso
usaremos herramientas como sistemas de ficheros distribuidos, cluster de la base de datos y
owncloud como frontal web para que el acceso de los usuarios, también se podría instalar el cliente
de escritorio que tiene owncloud y la app gratuita para tal fin.

Arquitectura.

A continuación vamos a explicar como será la arquitectura que va a tener nuestro sistema para
montar la alta disponibilidad para Owncloud.

En primer lugar decir que todo se hará en un cloud privado con OpenStack en el cual levantaremos
las instancias que queramos usar para montar la infraestructura, en este caso usaremos 3 servidores
en los que estará la base de datos replicada que lo haremos usando las posibilidades que nos ofrece
Galera Clustes. Los servidores también contarán con un disco añadido de 10GB, el cual usaremos
para configurar un sistema de ficheros distribuidos que será GlusterFS, que que los datos que
quieran almacenar los usuarios se distribuyan por en los 3 servidores, luego comfiguramos un
balanceador de cargar que será el quien dirija la carga a un servidor o a otro y será el a quién el
usuario atacará usando la IP Virtual, el balanceador configuraremos el que openstack nos
proporciona, sin necesidad de tener que montar una máquina para tal fin.

3

Manuel Jesús Begines González

A continuación vamos a comentar por separado las distintas tecnologías que hemos elegido:

* Galera Cluster:

Galera cluster es un multicluster que realiza replica sincrona entre los nodos que esta configurado,
es una solución de alta disponibilidad que evita la perdida de datos y proporciona escalabilidad para
el futuro.

Es un claro compertidor también de software libre de MySQL Cluster, Galera también esta
disponible a través de percona. Galera Cluster usa MariaDB que es un fork de MySQL con el motor
innoDB.

Características:

- Replica síncrona.
- Topología Multimaestro activo-activo.
- Leer y escribir en cualquier nodo del clúster.
- Control automático de la membresía, los nodos fallidos caen del cluster.
- Unión automática de los nodos
- Verdadero nivel de replicación paralela a nivel de fila.



4

Manuel Jesús Begines González

Beneficios:

- Sin lag en esclavo
- No hay transacciones perdidas
- Escalabilidad tanto al leer como al escribir
- Latencias de clientes mas pequeñas

En definitiva Galera es una solución bastante aceptable para el cluster de base de datos que
queremos crear en nuestro sistema, y tendríamos cubierto ese punto.

* GlusterFS:

Otra tecnología que vamos a usar son los sistemas de ficheros distribuidos y redundante como es el
caso de GlusterFS.

GlusterFS es un multiescalable sistema de archivos NAS que permite agregar varios servidores de
archivos sobre ethernet. Se basa en la utilización del espacio de usuario y de esta manera no
compromete su rendimineto, se usa en computación en la nube y en almacenamiento de archivos
como es el caso para que lo queremos.

Se basa en la interacción de cliente y servidor. Los servidor se implementa como almacenamiento
de bloques y exporta un sistema de archivo local como un volumen y el cliente se conecta a los

5

Manuel Jesús Begines González

servidores. Por defecto, los archivos son almacenados enteros, pero también puede configurarse que
que se fragmente en múltimples porciones en cada servidor.

Los volúmenes pueden ser montados tanto en el modulo FUSE(que permite a usuarios no
privilegiados crear sus propios sistemas de archivos sin necesidad de editar el código del núcleo) o
con las librería cliente libglusterfs.

Características:

- Espejado y replicación de archivos.
- Fragmentación de archivos o Data striping.
- Planificación de E/S y almacenamienton en caché de disco.
- Las cuotas de almacenamiento.

Beneficios:

- Volúmenes con tolerancia a fallos.
- Balanceo de carga para la lectura y escritura de archivos.
- Datos replicados.

6

Manuel Jesús Begines González

* Balanceador de carga en OpenStack.

Un balanceador de carga es un dispositivo que actúa como proxy inverso distribuyendo el tráfico de
red o de una aplicación a varios servidores. Los balanceadores se utilizan para incrementar la
capacidad de procesamiento y confiabilidad, asegurando la disponibilidad monitorizando el estado
de las aplicaciones y enviando las peticiones a los servidores que puedan responder.

Hay dos categorías en las que se agrupan los balanceadores de carga que son:

- Layer4: actúan sobre los datos de la red y protocolos IP, TCP, FTP y UDP.

-Layer7: distribuyen peticiones en la capa de aplicación con protocolos como HTTP o TCP.

Ambos distribuyen las peticiones en base a algoritmos como Round robin, Weighted round robin
(se basa en la ponderación de las peticiones, de manera que el servidor mas potente recibirá mas
peticiones que el servidor menos potente), Least connections (asigna las peticiones que menos
conexiones tenga en ese memento), Least response time (pasa la petición al servidor que menos
tiempo tarde en responder).

7

Manuel Jesús Begines González

En OpenStack:

OpenStack nos proporciona una solución mas que factible para el balanceo de carga, nos da la
posibilidad de no tener que usar máquinas para tal fin de manera que seria el propio OpenStack el
que haría el trabajo.

El balanceador del que dispone OpenStack es HAproxy implementado de serie, el cual solo hay
que configurarlo ya sea desde el panel web como por comando, Horizon (interfaz de usuario web
para OpenStack) nos dá una posibilidad muy fácil de configurarlo vía web.

*HAproxy: Es un software libre que actúa como balanceador de carga ofreciendo alta

disponibilidad para comunicaciones TCP y HTTP.

8

Manuel Jesús Begines González

* Owncloud.

Es una aplicación de software libre de servicio de alojamiento de archivos, que permite el
almacenamiento en línea y aplicaciones en línea. Los archivos que guardemos podemos acceder a
ellos mediante aplicaciones móvil (gratuitas o de pago), clientes de escritorio desde el panel web
que proporciona el propio servidor. Es una herramienta muy parecida a dropbox pero tiene ventajas
respecto a él, los datos estan guardados en nuestros propios servidores, además se le puede instalar
multitud de aplicaciones como por ejemplo de noticias, emails, reproductor, editor de texto, lector
de pdf, juegos, etc.


Se suele confundir owncloud con cloud computing, aunque si es un servicio en la nube no llega a la
categoría de este.

Una característica a destacar es el cifrado de datos, por defecto esta desactivado, pero se puede
activar fácilmente ya que es una aplicación integrada en el sistema. Este método, a diferencia del
cifrado en el lado del cliente, reduce las garantías de seguridad, pero posibilita el uso de Owncloud
a través del navegador.

9

Manuel Jesús Begines González

Características:

- Almacenamiento de archivos en una estructura de direcctorios convencionales.
- Reproductor de música.
- Administración de usuarios y grupos.
- El intercambio de contenidos a través de grupos o dirrecciones URL públicas.
- En línea editor de texto con resaltado de sintaxis y plegado de códigos.
- Marcadores.
- Galeria de fotos.
- Visor de PDF (usando pdf.js).

Beneficios:

- Replica de datos en servidores remotos.
- Acceso a la información en cualquier momento siempre que haya acceso a internet.
- Acceso a multiples aplicaciones centralizadas en Owncloud.
- Recuperación de archivos borrados y control de versiones.
- Privacidad.

Despliegue de la infraestructura.

A continuación vamos a comenzar con la instalación de en los servidores de los distintos servicios.
Lo primero que debemos de hacer es instalar los paquetes necesarios que necesitaremos en toda la
configuración.

#apt­get install python­software­properties
#apt­key adv ­­recv­keys ­­keyserver keyserver.ubuntu.com 
0xcbcb082a1bb943db

En el siguiente paquete que debemos de instalar debemos de asegurarnos de que pone “trusty” en
vez de “precise”:

#add­apt­repository 'deb 
http://mirror3.layerjet.com/mariadb/repo/5.5/ubuntu trusty main'

Una vez instalado esto hacemos un “update” e instalamos los paquetes necesarios para apache y
php:

#apt­get update && apt­get install ­y apache2 php5 php5­common 
libapache2­mod­php5 php5­xmlrpc php5­gd php5­mysql

10

Manuel Jesús Begines González

* Instalación y configuración de Galera Cluster:

Ahora con los paquetes necesarios instalados y actulizados debemos de instalar Galera que se hará
con el s
  • Links de descarga
http://lwp-l.com/pdf15689

Comentarios de: Servicio web de alta disponibilidad con GlusterFS, Galera, OpenStack y Owncloud (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad