Openstack CLI y autocompletar en bash

Hace ya tiempo que utilizo el comando integrado openstack para vincularme con nubes en Openstack de distintos proveedores y siempre extrañe que en algunas distribuciones de GNU/Linux no estuviera disponible el autocompletar en Bash.

El comando openstack ofrece el parámetro complete que genera el script para que bash-completion lo cargue y quede funcional.

Ejecutar como usuario con permiso sudo:

$ openstack complete | sudo  tee /etc/bash_completion.d/osc.bash_completion > /dev/null

o también como root:

# openstack complete > /etc/bash_completion.d/osc.bash_completion

El parámetro complete implementado en el comando openstack utiliza el framework cliff – Command Line Interface Formulation Framework para obtener la salida del script de bash-completion.

Nadie entiende la nube, es un misterio

El software libre que actualmente tiene mayor desarrollo, que involucra a miles de desarrolladores y decentas de empresas alrededor del Mundo e incorpora funcionalidades a un ritmo de vértigo es precisamente un software para computación en la nube llamado OpenStack. Trataremos de entender qué es la nube y cómo mediante este software libre (y otros) podemos apropiarnos de la tecnología de punta y crear nuestra nube privada.

Público objetivo: Estudiantes de carreras de informática, profesionales de informática administradores de sistemas, empresarios y emprendedores en general.

Requisitos: Nivel básico

Conferencia dictada en:

Diferencias entre Computación en la Nube (cloud) y Virtualización

Water_and_oil

La virtualización es uno de los principales componentes de la computación en la nube (cloud computing), pero virtualización no es computación en la nube.

La computación en la nube se basa en la virtualización para ofrecer infraestructura (cómputo, red, disco) a distintos consumidores (clientes) en la modalidad de servicios (IaaS, PaaS, SaaS, DBaaS).   La virtualización da una visión virtual de algo físico, como el sistema operativo, los dispositivos de red, los servidores.

Con virtualización se toma un determinado dispositivo físico que se divide en virtuales del mismo tipo.  Con computación en la nube se suman dispositivos virtuales que se van alojando sobre múltiples dispositivos físicos.

De esta forma la nube permite tener alta disponibilidad de servicios, rápida escalabilidad, automatización y la posibilidad de que los dispositivos físicos estén en diferentes áreas geográficas.

Entonces, dependiendo de cómo los dispositivos físicos que componen la nube están expuestos sobre Internet podemos tener nubes privadas, públicas, híbridas o cooperativas.

La computación en la nube necesita de la virtualización, es uno de sus componentes básicos.  Pero la virtualización por si sola no es computación en la nube, o sea, es necesaria pero no suficiente.

[ Basado en el artículo de Joaquín Calvo publicado en IngloriousDevOps ]

Datacenter en la nube

Si bien tener servidores hosteados o colocados en datacenter tercerizados o en la nube es algo bastante común, el concepto de tener todo el datacenter en la nube no es habitual.  Cuando me refiero a todo el datacenter quiero decir, obviamente, todo:  a las sub-redes, a los firewall de borde, a las DMZ, a los storage y sus redes, a las bases de datos y sus réplicas, al sistema de respaldo, etc. etc., es decir, todo el datacenter.   Es un concepto fácil de comprobar ya que en la empresa solamente están los desktop y la conexión con Internet.

clouddatacenter

Me presentaron este concepto en el DevOps Meetup de agosto del año pasado, cuando Ignacio Nin mostró como administra un datacenter 100% en la nube.  Y luego tuve la suerte de invitarlo al curso de Cloud Computing en la Universidad Católica del Uruguay y allí volvió sobre el tema «Organizando un Datacenter virtual en la nube«.

Lo que ahora llama mi atención es que esto se ha vuelto una tendencia y ha sido reconocido como uno de los desafíos para el 2015 por varios analistas y expertos.  Tan solo hacer una búsqueda sobre «10 trends cloud computing» vemos que este concepto se repite una y otra vez, por cada uno que ha escrito del tema.

Si bien creo que en Uruguay estamos bastante «en pañales» en el tema cloud computing, también creo que el concepto de tener todo el datacenter fuera de la empresa es bastante inevitable para muchas organizaciones.  No hablo de subir todo a Amazon. Me refiero a crear de infraestructura y prestadores de servicios locales, hablo de empresas y organziaciones solo con desktop y conexión a Internet y un datacenter por ahi.

Y es inevitable también porque me consta el esfuerzo que hacen muchas organizaciones y empresas para tener sus cinco o diez servidores, con respaldo eléctrico, aire acondicionado, cableado estructurado, seguridad física, etc. para algo que perfectamente pueden, digamos, «dibujar» y obtener el mismo nivel de servicio y seguridad.

Gestión y administración centralizada

Nos encaminamos hacia la computación en la nube como la mejor solución para el manejo diario de aplicaciones que requieren soluciones flexibles, plataformas que evolucionan y adaptabilidad de servicios. Además, el Software Libre se desarrolla a velocidades sorprendentes para satisfacer esta necesidad de cloud computing, generando continuamente nuevos proyectos y comunidades.

El Software Libre y la computación de nube han elevado el número de nodos como nunca antes; si bien se pueden aplicar algunas políticas generales, siempre hay que llegar a impactar cambios a nivel de cada nodo o máquina virtual. Se ha vuelto necesario disponer de herramientas que permitan aplicar esas políticas rápidamente: desde una nueva regla para el sistema de monitoreo, una tarea programada o la instalación de un nuevo software. Esta presentación aborda algunas de las alternativas disponbiles con Software Libre que permiten convertirse en el Director del centro de datos: para que los nodos actúen al unísono y las políticas estén siempre aplicadas.

Público objetivo: Técnicos encargados de administración de servidores, SysOps y DevOps, administradores de centros de datos.

Requisitos: Conocimientos de sistemas operativos (Unix), administración de servidores. Cloud computing

Conferencia dictada en:

Video de la presentación realziada en el marco de Avanza 2014:

Avanza 2014

OpenStack en VirtualBox «just for fun»

Screencast de nueve minutos sobre cómo instalar OpenStack en una máquina virtual VirtualBox corriendo CentOS.

Esta instalación la sugiero para familiarizarse con OpenStack y su uso.

Los invito a suscribirse a mi canal de Youtube: @PILASGURU DROPS

IFTTT vinculando tus aplicaciones en la nube y mas

ifttt-product-thumbBastante tiempo atrás, creo que en los inicios del servicio, El General me había hablado de IFTTT y sus posibilidades, pero recuerdo haberlo visto por arriba sin entender mucho cuál era su utilidad, a pesar de que El General me explicó.

El otro día, ante una necesidad específica, cree mi cuenta en IFTTT y puse a funcionar mi primer receta y también estuve viendo las posibilidades de este servicio que, en conclusión, es maravilloso y aquí estoy escribiendo este artículo.

Todos conocemos los sitios que ofrecen compartir en Twitter o Facebook lo que se está leyendo, o de alguna extensión del navegador que permite guardar en Dropbox o Evernote un sitio web, video de Youtube o archivo.  Bueno, IFTTT lleva la vinculación entre distintas aplicaciones o sitios en la nube a donde tu imaginación o necesidades puedan llegar.

La idea que plantea IFTTT es simple: dada una cierta condición en algún servicio (Instagram, Facebook, Twitter, Dropbox, etc.) se produce una acción en otro servicio de la nube (Tumblr, Delicius, WordPress, Last.fm, o cualquiera de los ya nombrados).

esquema del artículo de JJ Velasco
esquema del artículo de JJ Velasco

Las reglas las hace cada usuario, otorgando los accesos correspondientes a IFTTT para que pueda manejar sus cuentas en la nube. De ahí que tus necesidades y tu imaginación sean el límite  (claro que el poder de IFTTT tiene límites, pero…).

Imaginemos algunos escenarios de recetas de IFTTT:

ifttt services

  • Cada vez que en twitter se publica una determinada #etiqueta me envía un correo
  • Cuando una determinada acción de bolsa (a través de Yahoo Finance) pasa un determinado umbral, publica un twitter
  • Cuando hay mal tiempo (a trvés de Yahoo Weather)  se activa la corriente eléctrica en un toma de mi casa (a través de de un Belkin WeMo)
  • A determinada hora o cuando se publica una foto en Instagram o se envía un determinado SMS,  se encienden las luces de mi casa en determinados colores con un sistema Philips Hue.
  • Cada vez que se promociona un nuevo par de anteojos en Svppy, envía un mensaje en mi Google Talk.
  • Cada vez que se publica un video en Youtube en un determinado canal, lo publica en mi blog de Tumblr.
  • Cuando recibo un determinado correo en GMail, me llama por teléfono.
  • Cuando el paquete que me han enviado por DHL, Fedex o UPS cambia de estado, prende la luz del Blink(1) conectado al USB de mi equipo.
  • Cada vez que cambio la foto de mi perfil en Facebook, la cambia también en el de Twitter.

Los servicios que permite vincular IFTTT son muchos y se van agregando nuevos.

Las recetas se pueden compartir, de hecho ya hay miles recetas compartidas para utilizar y adaptar a nuestras necesidades.

Para mi ha sido todo un descubrimiento, no solo de IFTTT, sino también un montón de servicios y gadgets que están disponibles.

JJ Velasco ha escrito un muy buen artículo en Bitelia con Recetas IFTTT para sacarle partido a Evernote, que fue precisamente Evernote el motivo de mi ingreso a IFTTT.

Ubuntu Finder, cómo encontrar la ami que necesitas

UbuntuFinder es una herramienta web creada por Gustavo Niemeyer que permite buscar la ami (Amazon Machine Image) Ubuntu que cumple con los parámetros que deseamos. Así, podemos configurar UbuntuFinder para buscar una máquina de 4 cores con 34G RAM y Ubuntu 12.04 y UbuntuFinder nos va a sugerir la instancia tipo m2.2xlarge con la imagen ami-0cdf4965

Una Amazon Machine Image (ami) es una imagen virtual pre-configurada con software que es usada para crear máquinas virtuales en la nube de Amazon (EC2).

Una vez que sabemos la ami que necesitamos, podemos iniciar nuestra propia instancia, basada en ella, con el comando:

ec2-run-instances ami-0cdf4965 -t m2.2xlarge –region us-east-1 –key keypar

El uso de UbuntuFinder es realmente trivial y de alta utilidad, este video lo demuestra:

Sea Ud. la Nube

La emergente nube (cloud computing) para alojar aplicaciones está siendo solución para muchas organizaciones. Pero qué sucede cuando sus datos deben permanecer en su red, detrás de su firewall? Qué sucede cuando Usted cuenta con la infraestructura de hardware y el personal capacitado y no necesita tercerizar estos servicios? En esos casos es posible beneficiarse de las ventajas de una nube propia. Con esta presentación: Sea Usted La Nube, se aborda un enfoque práctico sobre cómo tener una nuve propia, sus ventajas y consideraciones de implantación, con la posibilidad de escalar a una nube pública.

Público Objetivo: Administradores de servidores y centros de datos, administradores de redes basadas en Linux.

Requisitos: Nociones de instalación de Linux (Ubuntu).

Conferencia dictada en:

  • 17 ago 2010 – Zonamerica TechDay, Jacksonville, Zonamerica, Dpto. de Canelones, Uruguay