JuJu: el domador Ubuntu de servicios en la nube

Tercera ley de Clarke: «Cualquier tecnología lo suficientemente avanzada es indistinguible de la magia». Eso es lo que me pasó por la cabeza la primera vez que ví éste vídeo sobre JuJu:

En 5 minutos y un puñado de comandos, JuJu permite ensamblar, desplegar y escalar un sistema MediaWiki de dos unidades, con la capa de persistencia en un cluster MySQL, dos instancias memcached para acelerar las peticiones y HAProxy como balanceador de carga. Y eso es sólo un ejemplo… Podríamos definir JuJu (antes conocido como Ensemble) como una mezcla entre gestor de paquetes para lanzar aplicaciones en la nube y un sistema de orquestación de servicios (una especie de domador con látigo que pone a cada servicio en su sitio y los junta/ensambla con otros animales/servicios 😉 Este software ha sido desarollado por Canonical bajo licencia AGPL y es un paso más en los movimientos de Canonical por situarse en el territorio cloud.

Para que JuJu funcione, hace uso de «encantamientos» o charms, que son simples recetas en un lenguaje de scripting que permiten instalar, configurar y enlazar servicios. Hay ya una bonita colección de charms disponibles, pero todavía quedan muchos por hacer. Usando estos charms, podemos lanzar un WordPress en la nube con MySQL como Base de Datos, con 4 comandos:

$ juju deploy –repository=. wordpress myblog
$ juju deploy –repository=. mysql mydb
$ juju add-relation mydb:db myblog
$ juju expose wordpress

Bonito, ¿eh? Pues ahora piensa que con el comando add-unit puedes lanzar otra unidad WordPress y comenzar el escalado horizontal a partir de comandos juju, como se muestra en el vídeo 🙂 ¿Magia?

Te recomiendo éste post en castellano con un ejemplo más elaborado del uso de JuJu, o si estás interesado, esta presentación en PDF para que revises el funcionamiento interno de esta tecnología.

Máquina Linux en la nube Amazon gratis por 1 año

Un apunte rápido pero muy interesante: Amazon ha decidido que a partir del 1 de Noviembre, las instancias de máquinas virtuales Linux en la modalidad micro (613 MB de RAM y plataforma 32 o 64 bits), sean gratis por un año. Es decir, una instancia de máquina por cada nuevo usuario. Y sí, tienes que ser un nuevo usuario. En concreto, se considera nuevo usuario todo aquel que se haya dado de alta en AWS (Amazon Web Services) a partír del 20 de Octubre.

Puedes ver la letra pequeña (realmente son 750 horas de CPU al mes y hay algunas otras limitaciones de tamaño, por ejemplo «sólo» 5GB de disco S3!!) pero la oferta me parece impresionante. Yo ya me he dado de alta, aprovechando el enlace que Oier M. me pasó donde se explica paso a paso, con pantallazos, cómo crear tu primera instancia EC2 🙂 En ese tutorial falta el comienzo, donde realmente tienes que dar tus datos personales, tarjeta de crédito (por si acaso sobrepasas las limitaciones que he comentado antes) y número de teléfono.

El número de teléfono que introduzcas en el formulario de alta debe ser real, porque al enviarlo, AWS te mostrará un número en pantalla y en ese momento, te llamará un «robot», diciéndote que teclees el número que ves en pantalla en el teclado de tu móvil. En cuanto lo hagas, se activará la cuenta y ya podrás seguir el tutorial indicado (me ha gustado el método de confirmación de identidad móvil…)

Update: ojo, el EBS (Elastic Block Storage) que ofrece Amazon en esta oferta es de 10 GB. Teniendo en cuenta que las máquinas virtuales en general vienen con 15GB, si eliges una de éstas, tendrás que pagar 0,5$ al mes. No es dinero, pero ya no es «gratis total» (a no ser que elijas una máquina virtual con menos de 15GB)