lunes, 23 de junio de 2014

Servidores DNS

Trabajo realizado por: Alejandro Rodríguez Muñoz, Daniel Lorente Cortés y Antonio Martínez García

Este trabajo trata sobre los servidores DNS, sus diferentes tipos y la instalación y configuración de un servidor DNS maestro en Windows Server y Linux.

domingo, 22 de junio de 2014

Google App Engine

Trabajo realizado por: Hans-Manuel Grenner Noguerón y Óscar Sánchez Martínez

Google App Engine se presenta como una de las opciones más competitivas a elegir cuando hay que crear una aplicación contando con pocos conocimientos acerca de servidores, en cuanto a su gestión, mantenimiento, replicación de datos, etc.

No sólo ofrece almacenamiento y tráfico gratuito hasta ciertos límites de consumo, sino también permite lanzar su aplicación en cualquier tipo de dispositivo sin tener que preocuparse de saber Objective-C, Android, etc., haciendo además uso de casi todas las funcionalidades que proporciona Google.

Son varios los lenguajes soportados tales como Java, Python, PHP y Go. Y los entornos de desarrollo junto a los plugins para GAE permiten mediante un simple clic desplegar su aplicación en los servidores de Google. Las aplicaciones resultantes sonmuy robustas y escalables.

El ejemplo desarrollado en el trabajo está disponible en: http://www.aplicacionswap.appspot.com

Costes de instalación de una granja web

Trabajo realizado por: Pablo Maciá Linares y Valentín Corral García

En este trabajo se analizan los costes de la instalación de una granja web simple con unos pocos componentes, analizando desde el coste del hardware hasta los costes de luz e internet, para más tarde comprobar  cómo se dispara el precio en gran medida a la hora de construir y acondicionar una nave industrial para un gran centro de datos.

Para ello analizamos todos los datos que pudimos obtener del centro de datos SoloGigabit de Valencia como el hardware que ellos utilizaban y las medidas de sus instalaciones.

Granja web con Azure

Trabajo realizado por: ANA BELÉN RODRIGUEZ PRADOS, OSCAR R. ZAFRA MEGIAS, ROGELIO GIL GARCÍA y JAIME TORRES BENAVENTE

El objetivo del trabajo es reflejar las posibilidades que ofrece el PAS de Windows, AZURE. En concreto, utilizando cuentas limitadas de los cuatro miembros, vamos a construir una granja web formada por 6 máquinas virtuales: 4 servidores web, un balanceador y un servidor de bases de datos.

Mostraremos como crear estas máquinas y como configurarlas para mostrar un periódico desarrollado en PHP con acceso a una base de datos MySQL.

Azure es una plataforma de nube abierta y flexible que permite compilar, implementar y administrar aplicaciones rápidamente, en una red global de centros de datos administrados por Microsoft. Puede compilar aplicaciones en cualquier lenguaje, herramienta o marco. Y puede integrar sus aplicaciones de nube públicas con el entorno de TI existente.

Es una plataforma general que tiene diferentes servicios para aplicaciones que alojan en alguno de los centros de procesamiento de datos de Microsoft para que se ejecute sobre su infraestructura (Cloud Computing).
Sus servicios más destacados son los siguientes:
  • Máquinas virtuales: Azure permite implementar una imagen de Windows Server o Linux en la nube.
  • Sitios web: Azure permite implementar aplicaciones web en una infraestructura en la nube escalable y confiable.
  • Servicios móviles: Azure proporciona un back-end en la nube escalable para crear aplicaciones de la Tienda Windows, Windows Phone, Apple iOS, Android y HTML/JavaScript.

viernes, 20 de junio de 2014

Android Server

Trabajo realizado por: Rubén Adrados Bretón y Rubén Martín Hidalgo

Cada vez los smartphones tienen más potencia y dada su movilidad se pueden llevar a cualquier parte. Es cierto que por el momento distan mucho de servidores de altas prestaciones, pero dado el avance que estamos teniendo en los últimos años en cuanto a la tecnología no podemos descartar nada para el futuro.

Hay, como en todo, cientos de aplicaciones gratuitas y de pago para montar servidores. En nuestro caso nos descartamos por Palapa Web Server por ser gratuita y su sencilla configuración.

Para el caso de la monitorización usamos Team Viewer para el caso de servidores con interfaz gráfica y JuiceSSH para los que no, es decir, para realizar una consexion ssh.

Google Compute Engine

Trabajo realizado por: David Brao Serrano y Rosa Ortega Romero

Google Compute Engine es un producto que ofrece máquinas virtuales flexibles y autoadministradas alojadas en la nube de Google. Incluye máquinas virtuales basadas en Linux que se ejecutan en KVM1. Consta de opciones de almacenamiento local y permanente una sencilla API basada en REST2 para la configuración y el control.

Puedes tener máquinas virtuales que van desde 2 núcleos hasta la más potente de 16 núcleos, dependiendo de su potencia y capacidad de almacenaje el precio de su uso es uno u otro.

Con Google Compute Engine puedes resolver problemas analítico y de procesamiento a gran escala en la infraestructura de procesamiento, almacenamiento y redes de Google.

lunes, 16 de junio de 2014

Servidores Web en Android

Trabajo realizado por: Juan Moral Fernández

Actualmente, los smartphones poseen una potencia similar a cualquier ordenador de sobremesa básico y crece exponencialmente cada año. Este aumento de rendimiento hace que los dispositivos móviles tengan un amplio abanico de usos y posibilidades. Una nueva posibilidad, es la de usar estos dispositivos como un servidor de cualquier tipo. Podemos crear un servidor web, FTP, de correo o cualquier otro que podamos imaginar o necesitar, basta con encontrar el programa adecuado.

Aquí nos centraremos en configurar un servidor web y como ejemplo, se servirá la página web creada en la asignatura “Tecnologías web”, cuyo tema es un periódico online. Para realizar dicha tarea, nos centraremos en tres programas distintos para servir webs, estos son:
- AndroPHP
- KSWEB
- Servers Ultimate

AndroPHP es el más simple de los tres. Admite PHP y MySQL y su interfaz es muy clara. Sus opciones de configuración son muy básicas, por lo que este programa no está recomendado para un usuario avanzado que necesite una gran variedad de opciones de configuración.

La gran ventaja de KSWEB es que incorpora nginx (en su versión 1.5.10). Además de nginx, también incluye LIGHTTPD, MySQL, PHP y FTP. Las opciones de configuración son muy superiores a AndroPHP, pudiendo incluso modificar los archivos de configuración de nginx y lighttpd (nginx.conf y lighttpd.conf) desde su interfaz de configuración web. Interfaz clara y sencilla.

Por último, Servers Ultimate destaca por la gran variedad de servidores que puede manejar (alrededor de unos 60 tipos), su configuración y por la gran cantidad de herramientas disponibles, que pueden ayudarnos a la configuración y mantenimiento del servidor.

domingo, 15 de junio de 2014

Google Cloud

Trabajo realizado por: Ernesto Alejo Oltra, Alberto Moreno Alcaraz, Santiago Puerta Correa y Francisco Manuel Sánchez Ramos

En este trabajo se repasan de forma rápida las opciones y herramientas que ofrece la nube de Google.

Se empieza por Compute Engine, repasando los conceptos de la arquitectura, qué es una instancia o cómo se organiza el código por regiones y zonas. Se repasa también cómo implementar una red o la seguridad en el firewall entre otras muchas cosas.

Después se sigue con App Engine, explicando los distintos servicios que ofrece a nuestras aplicaciones y qué limitaciones o potenciales tienen cada uno de ellos. Son muchos y nos hemos limitado a los que más importancia cobran si queremos preparar y ejecutar una aplicación en sus servidores.

Por último, se presentan las diferencias o similitudes entre esas tecnologías Google. La idea es tener argumentos generalizados que nos apoyen a la hora de tomar una decisión y decantarnos por uno u otro para hacer nuestra implementación.

Se detalla la prueba de carga en la que se intenta simular un millón de peticiones por segundo, siguiendo las instrucciones ofrecidas por el blog oficial.


sábado, 14 de junio de 2014

Radio Streaming en Granja Web

Trabajo realizado por: Carlos Ibáñez Partera

En este trabajo se explica, paso a paso, cómo hacer de tu equipo un servidor streaming de audio usando Icecast2 (servidor), Internet DJ Console (reproductor y envío de flujo de audio) y Qjackctl (conector de canales de audio).

Por otro lado, usando máquinas virtuales y basándose en la práctica 3 de la asignatura, se explica cómo crear una granja web con balanceador de carga que de soporte a nuestra radio.

Además, como extra, se explica cómo usar como fuente un reproductor de audio cualquiera, siempre que soporte jack, en lugar del reproductor que incluye Internet DJ Console, útil para no tener que volver a organizar la colección de música y que puedas beneficiarte de las funcionalidades de tu reproductor de música favorito.

Configuración Master-Master en MySQL

Trabajo realizado por: Samuel Carmona Soria

En este trabajo se presentan la replicación de la base de datos en mysql con configuraciones Master-Master y Master-Slave.

Se ha realizado una breve introducción a las dos configuraciones y una  comparación entre ellos.

Se muestra detalladamente con capturas propias la configuración  de la replicación master-master  y la configuración (solamente teórica) de master-slave.

Comparativa de cuatro plataformas cloud libres

Trabajo realizado por: Iris García

En este trabajo se lleva a cabo una comparativa de las cuatro plataformas cloud libres más importantes, dónde se analizan las características y servicios más relevantes de cada plataforma, su proceso de instalación, su escalabilidad y soporte de la comunidad. Finalmente se establece un ranking de caracter subjetivo.


Google App Engine

Trabajo realizado por: Bogdan Alin Muresan

Google App Engine es una tecnología PaaS ofrecia por Por Google .

En este trabajo se ha explicado paso a paso cómo preparar el entorno de desarrollo para empezar a usarla.

Se han comentado los lenguajes que soporta y el entorno de desarrollo.

El proceso de instalación del SDKs en linux es muy fácil. Una vez descargado tenemos que crear el directorio de nuestra app junto con el fichero de configuración. Una vez hecho esto, creamos la app en la página oficial de app engine  y procedemos a subir la aplicación creada de local a la infraestructura de Google.

Finalmente, Google App Engine ofrece un panel de administración muy intuitivo de nuestra aplicación.


jueves, 12 de junio de 2014

Microsoft Azure, la plataforma en la nube de Microsoft

Trabajo realizado por: Jacinto Villena Rodríguez, Ángel Jiménez y Juan Pablo Molina

En este trabajo se describen detalladamente las principales utilidades de la plataforma y cómo usar todas las opciones de implementación de las que dispone Azure.

Se han incluido numerosas capturas de pantalla, además de las explicaciones pertinentes, para que todo quede lo más claro posible.


Amazon EC2

Trabajo realizado por: Eduardo Sánchez Sánchez y Félix Parra Martínez

En este trabajo se muestra la instalación y prueba del servicio web de amazon EC2.

Para ello se han desplegado dos servidores web (instancias) en los cuales se instala el entorno LAMP, con un balanceador de carga para estos 2 servidores.

Se hace comparación de precios, diferentes características que nos ofrece el servicio y se explica paso a paso como se hizo la instalación.

Enlace a la presentación:
http://prezi.com/9ph4cbasv3ac/present/?auth_key=80b64s4&follow=eyqxvoktqy5p&kw=present-9ph4cbasv3ac&rc=ref-54273469

miércoles, 11 de junio de 2014

HTTPS e iptables

Trabajo realizado por: Mario Fernández Gómez y Pedro Gázquez Navarrete.

Con este trabajo se ha dado una pincelada de https, que es un protocolo que combina http con la encriptación para conexiones más seguras en la web. Primero se han explicado los pasos a seguir para instalar https en apache.

En el apartado de iptables se ha destacado qué es el firewall del kernel del linux que filtra paquetes en base a algunas reglas.

Por útltimo se ha hecho una demostración con algunas reglas de iptables, denegando servicios (tipo ssh o telnet) a unas ip's concretas y comprobando su correcto funcionamiento.

Se ofrecen algunos enlaces interesantes, como el de las 24 reglas más comunes de iptables, que muestra algunas reglas bastante interesantes, como por ejemplo la prevención de ataques DoS.

Zen Load Balancer

Trabajo realizado por: Jesús García Godoy 

En este trabajo se presenta Zen Load Balancer, un balanceador de carga de código libre, con una interfaz web de configuración muy sencilla e intuitiva que permite montar balancear la carga en la granja web que nosotros creemos.

Se ha detallado el proceso de instalación, que es bastante sencillo e intuitivo.

Además se describen las funcionalidades que ofrece, así como los algoritmos de balanceo que tiene implementados.
Se muestran capturas del balanceador funcionando y viendo cómo distribuye la carga. También la función de monitorización que el propio software posee.

Por último se describe el funcionamiento en clúster, aunque no se detalla dado que no se ha procedido a la implementación del mismo, una breve comparativa con nginx y haproxy, usados en prácticas de la asignatura, y una pequeña conclusión obtenida de la experiencia con el software.

Heartbleed, un problema de seguridad

Trabajo realizado por:  Alfonso Capilla Calvet, Fco Javier Garrido Lumbreras y Jose Antonio Peña Valdearenas

El trabajo realizado trata sobre el problema de seguridad que apareció hace unos meses en la librearía de OpenSSL. Antes de comenzar a hablar del problema de Heartbleed se realiza una introducción en la que se comenta el cifrado simétrico y su funcionamiento entre dos usuarios. A continuación se muestra un análisis del cifrado asimétrico mediante la explicación del uso de clave pública y clave privada.

Ya con los conceptos claros se pasa a explicar qué es OpenSSL, las librerías en las cuales ha aparecido el problema de seguridad, explicando cómo funciona Heartbleed y cómo un atacante puede hacerse con las claves privadas y así poder desencriptar contenido protegido.

Para finalizar se habla de cuales son las acciones que un usuario debe tomar para estar protegido y cómo han actuado las grandes empresas como Google o Yahoo frente al problema.

Comparación de hardware y software de Google, Twitter, Facebook y otros grandes sistemas

Trabajo realizado por: Gabriel Guirado

En este trabajo se ha investigado el software y hardware de grandes empresas como Google, Twitter y Facebook, entre otras.

Se ha realizado una breve comparación entre ellos junto con algunas curiosidades interesantes a lo largo de sus respectivas historias.

Seguridad en la granja web: cortafuegos

Trabajo realizado por: Jose Carlos Sánchez Hurtado y Francisco Toranzo Santiago

Este trabajo trata el tema de la seguridad informática, en su conjunto y de servidores web en particular. En él se hace una breve presentación sobre qué es la seguridad informática y de servidores web. Se expone una serie de posibles razones por las que querer atacar un servidor web, y las formas de llevar acabo dichos ataques. También se plantea la forma de defenderse de ellos, usando diferentes técnicas.

A continuación se presenta en detalle uno de los ataques informáticos más sonados actualmente, y la historia del hacker más buscado de EEUU.

Seguidamente se comenta la base de nuestro trabajo: el cortafuegos o firewall y se expone brevemente en qué consiste su funcionalidad, tipos, limitaciones, y la manera de implementarlos.

En concreto se detalla la herramienta iptables para su creación, y se analiza en profundidad su archivo de configuración. Esta herramienta es la que se ha usado para una pequeña prueba realizada en la granja web creada en prácticas.

Google Cloud Platform - Google Compute Engine

Trabajo realizado por: David Castellón Rodríguez y Samuel Hernández Ballesteros

En este trabajo se hace un resumen de los productos que ofrece la plataforma en la nube de Google (Google Cloud Platform), destacando las características principales de cada producto.

Principalmente se centra en Google Compute Engine, la infraestructura como servicio de Google que permite ejecutar grandes cargas de trabajo a gran escala en máquinas alojadas en la infraestructura, mostrando cómo empezar a trabajar con él creando una máquina virtual paso a paso.

sábado, 7 de junio de 2014

Información sobre el software, hardware y configuración de grandes servidores web

Trabajo realizado por: José Manuel Luque Burgos

En ésta presentación se presenta la configuración que usan dos de los servidores web con mayor porcentaje de carga en el mundo como son Facebook y Twitter.

En primer lugar se analiza la organización hardware de estos sistemas, cómo distribuyen sus servidores y la carga que reciben.

A continuación se realiza un análisis de su software, tanto a nivel de arquitectura como en cuanto a su diseño (en ambos casos modular).

Por último se hace un pequeño análisis sobre los lenguajes en los que están programados.

jueves, 5 de junio de 2014

Windows Azure: Plataforma como servicio

Trabajo realizado por: Daniel Guerra

En este trabajo se presenta Windows Azure, detallando los servicios que ofrece. En la memoria se explican los pasos necesarios para crear nuestra red corporativa en la nube, diseñando la red virtual interna en la que nuestros servidores van a trabajar juntos, incluyendo una granja de servidores.

El trabajo está enfocado a modo de tutorial guiado, explicando cada cosa por separado. También explica cómo montar un servicio web con escalado automático y los modos de escalado que podemos elegir para nuestro servicio web sin el requerimiento de montar una máquina virtual con un servidor web.

Google Cloud Storage vs Otros servicios en la nube

Trabajo realizado por: Rafael Carrasco Ruiz

En este trabajo se lleva a cabo una comparación del servicio “Google Cloud Storage” con el resto de servicios disponibles en la red de almacenamiento en la nube.

Primero se presenta al usuario el concepto de "la nube", sus beneficios y desventajas.

A continuación, se comparan las diferentes características, recursos, precios, etc. que cada uno de estos servicios ofrece.

Google Compute Engine

Trabajo realizado por: Javier Aranda Izquierdo, Juan Marquina García y Eduardo José Polo González

Compute Engine es la plataforma de Google para poder montar y administrar tu propia granja web en sus centros de datos.

En la exposición del trabajo se mostró una breve demostración interactiva de cómo crear una.

En el documento de la memoria se describe cómo hacer una granja web con todo lujo de detalles, explicaciones de cada opción e imágenes de cada paso.

miércoles, 4 de junio de 2014

OpenStack

Trabajo realizado por: Ivan Ortega Alba y Carlos Campos Fuentes

OpenStack es una solución basada en software abierto para montar un servicio de Cloud Computing.

OpenStack nos permite montar un servicio de IaaS (Infraestructure as a Service) con el que podremos virtualizar todos los componentes necesarios para montar una plataforma hardware en la nube.

OpenStack nos permite crear instancias, redes y almacenamiento de forma dinámica según las necesidades del usuario. Es decir, con OpenStack podemos ofrecer un servicio similar a Amazon EC2 o Windows Azure, pero usando nuestra propia granja, ya sea física, virtual o híbrida.

En el trabajo se explica al detalle cómo surge OpenStack, quién lo desarrolla, cómo funciona internamente, cómo implementarlo y qué posibilidades nos ofrece.

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.