miércoles, 4 de junio de 2014

Usar el módulo DRBD para crear un RAID-1 distribuido

Trabajo realizado por: Jonathan Mulero López

En este trabajo se presenta el módulo DRBD para crear un RAID-1.

DRBD es un módulo de kernel basado en RAID-1/TCP, muy sencillo de configurar, rápido y sometido a pruebas de error.

Con este módulo podemos crear un RAID-1 (espejo), pero teniendo los discos “distribuidos” en la red. Esto nos permite crear soluciones redundantes en tiempo real, perfectas para utilizar, por ejemplo, como dispositivos para clústeres que necesiten alta disponibilidad.

El funcionamiento es en tiempo real: La replicación se produce de forma continua mientras que las aplicaciones modifican los datos en el dispositivo.

Además, es transparente, por lo que las aplicaciones no necesitan ser conscientes de que los datos se almacenan en varios hosts.

martes, 3 de junio de 2014

Despliegue en infraestructuras virtuales con Azure

Trabajo realizado por: Álvaro Linares Maximino y Juan Antonio Fernández Sánchez

Una visión global de la plataforma en la que repasamos los principales servicios que Azure pone a nuestra disposición para el despliegue completo de una granja web virtualizada: máquinas, balanceadores, almacenamiento, redes, etc, haciendo especial hincapié en balanceo de tráfico y la respuesta ante etapas de gran demanda.

Siguiendo con la idea presentamos un caso concreto de granja en la que veremos como el conjunto de hasta ocho servidores es capaz de responder de forma dinámica a grandes avalanchas de demanda conservando el rendimiento sin menospreciar la seguridad y la recuperación ante desastres.

Como aporte imprescindible incluimos un pequeño estudio de viabilidad que despejará toda duda de aquel que siga pensando que cloud computing es sólo un término de moda.

Todo esto acompañado de algunos video tutoriales donde se puede ver de forma muy sencilla y clara el uso de las características más interesantes de la plataforma. 

Configuración maestro-maestro con MySQL

Trabajo realizado por: Javier García Martínez y Sergio Ruíz Pérez

Este trabajo ha consistido en montar varios servidores de Base de Datos en configuración maestro-maestro. De esta forma, cualquier cambio que realicemos en una de las máquinas, (ya sea inserción, borrado, actualización, creación de nuevas tablas...), se replicará automáticamente en la otra máquina, y por lo tanto tendremos siempre todos los datos replicados en nuestros servidores.

Soluciones de virtualización

Trabajo realizado por: Alberto Romero Cañadas y Victor Coronas Lara

En este trabajo se han recopilado y usado diferentes herramientas de virtualización: VMware, VirtualBox, Parellels, Virtual-PC y XEN.

Se han presentado las características que mejor definen a cada sistema de virtualización y se ha documentado el proceso de una instalación de un sistema operativo, así como la configuración de red en cada virtualizador.

Como caso práctico se ha mostrado cómo virtualizar un sistema operativo  que sirve páginas con Apache y se ha instalado un balanceador en la máquina anfitriona. De este modo, el ordenador anfitrión puede servir páginas web hospedadas en el apache por la máquina virtualizada.

sábado, 31 de mayo de 2014

Aplicación móvil utilizando Google App Engine como fuente de información: Open Cloud Calendar

Trabajo realizado por: Israel Blancas y José Cristóbal López

Google App Engine es la propuesta de alojamiento web que ofrece Google. Es un servicio PaS (Plataforma como Servicio). Sobre el mismo, hemos procedido a desarrollar una aplicación llamada Open Cloud Calendar.

Tras un estudio preliminar sobre las características que ofrece GAE, decidimos utilizar Python como lenguaje de programación y Google App Engine Datastore como base de datos.

Esta aplicación permite crear y publicar una lista de eventos que vayan a tener lugar en el futuro (esto podría ser útil, por ejemplo, en el caso de un congreso o la agenda cultural de un ayuntamiento). Una vez que el evento ha pasado, se borra.
Por otra parte, para permitir a cualquier sistema operativo móvil poder tener una aplicación para consultar los datos que se encuentran alojados en App Engine, se crea un fichero XML con las convocatorias existentes (en el caso de la aplicación Android que hemos desarrollado, el programa toma la URL del XML, lo lee y guarda las convocatorias en distintas estructuras de datos para poder mostrarlas, mediante una interfaz, al usuario).

Ayudándonos de las distintas herramientas de las que nos provee Google (la utilidad cron, el framework webapp2, Google Engine Datastore...) hemos ido consiguiendo los objetivos mínimos de esta aplicación.

Por último, explicamos brevemente una técnica utilizada por algunos usuarios de Google App Engine para sacar más partido a las cuentas gratuítas.

viernes, 30 de mayo de 2014

Redundant Array of Independent Disks (RAID)

Trabajo realizado por: Marcos Jiménez Fernández, Alberto Mesa Navarro y Jesús Navarro Guzmán

En este trabajo se tratan varios temas relacionados con los RAIDs. En primer lugar se situa en un contexto histórico el concepto de RAID y los motivos por los que fue creado, junto con la fecha de creación de los primeros RAIDs.

A continuación se analiza el posible uso que puede tener un RAID, como puede ser para temas de capacidad, seguridad o rendimiento. También se introduce el concepto de paridad, que es un elemento importante a la hora de evitar pérdidas de datos.

También se explican los diferentes tipos de RAIDs junto con sus principales características, así como las principales ventajas e inconvenientes de su uso. En definitiva, podemos agrupar los RAIDs en 3 grandes grupos: Puros, anidados y propietarios. También se ha aportado una tabla que resume las características de cada RAID.

Para finalizar se presentan las arquitecturas RAID y cómo con ellas se pueden adoptar diferentes soluciones. Éstas pueden ser software, híbridas y hardware. Al igual que en anteriores secciones, se ha comentado brevemente las características de cada solución y se han aportado ejemplos.

miércoles, 28 de mayo de 2014

Granjas Web: Windows Server 2008

Trabajo realizado por: Miguel Fabre Navarro y Francisco Porcel Sendrós

En este trabajo se ha realizado la instalación y configuración de una granja web con el sistema operativo Windows Server 2008 r2.

Para ello se ha creado una máquina virtual que se encarga del balanceo de la granja y otras dos máquinas que sirven las páginas web (más detalles en el trabajo y en la presentación).

En la presentación se detallaron los posibles algoritmos de balanceo de carga que nos ofrece Windows Server. Por último, se mostraron los resultados de aplicar tests con Apache Benchmark a la granja, configurando el balanceador con diferentes algoritmos para intentar vislumbrar cuál es más óptimo.