La evolución de la nube, de tu servidor al cielo

Desde hace ya unos años se oye mucho a los grandes proveedores de plataforma hablar sobre la nube, que si la nube pública, la privada, platform as a service. Yo sinceramente tenía un poco de lío con tanto término, así que le pedí a Javier Albert (@jalberts), amigo IT, que me lo explicara. Me quedé tan impresionado con la facilidad de la descripción que sentí la necesidad de escribirlo.

En este artículo se verá la evolución de los servicios IT desde un servidor simple hasta una completa infraestructura virtualizada usando el ejemplo de la nube privada.

Un servidor

En una empresa todo empieza por un servidor, ese gestionaba habitualmente el portal corporativo, los ficheros compartidos, las cuentas de correo, etc.. La ventaja es que era un buen sitio para empezar, e incurría en poco gasto. La desventaja era que todo el servicio estaba en un solo ordenador, con lo cual la capacidad se podía quedar corta para momentos de picos, además del problema de seguridad de tener todo en el mismo equipo, que unos servicios accedieran a recursos de otros no era nada deseable.

Varios servidores

El siguiente paso lógico era comprar varias máquinas, lo que permitía ahora tener cada servicio en un ordenador diferente, logrando especialización de los ordenadores, uno dedicado al portal, otro al correo, y así sucesivamente. El resultado final era tener un CPD (Centro de procesamiento de datos, también conocido como sala de servidores) lleno de máquinas donde algunas estaban a tope de capacidad y otras, se quedaban bastante infrautilizadas.

Virtualización, ese concepto

Entonces llegaron las soluciones de virtualización de mano de Microsoft y VMWare, que, mediante un soporte de hardware, permitían que un sistema operativo pudiera ejecutar de manera virtual, varias copias de otros sistemas de otros fabricantes, lo que permitía tener en un solo servidor físico, varios servidores virtuales, con el consecuente ahorro de costes en cuanto a infraestructura. El problema era que seguía siendo una sola máquina, y agregar una segunda suponía empezar a duplicar máquinas, los sistemas carecían de redundancia, además de que el proceso de migración a una nueva máquina era muy costoso en cuanto a tiempo.

Y entonces llegó la nube

Estos pasos nos llevan a la situación actual, que es la nube. En este caso se evoluciona de software virtualizado sobre hardware fijo, a software virtualizado sobre hardware variable. Esto implica que una infraestructura de nube privada gestiona todos los recursos de todos los ordenadores de la red como si se tratara de un único host, lo que permite tener acceso a una mayor cantidad de recursos, y lo más importante, poder asignar recursos de manera temporal a servicios que más lo requieran (por ejemplo, subir de RAM y disco duro el servicio de contabilidad al cierre del trimestre fiscal). Esto permite además mantener redundancia entre la información disponible en los equipos físicos, lo que permite en caso de fallo de alguno de los sistemas que la nube siga funcionando correctamente.

Finalmente esta estructura permitiría agregar nuevos equipos a la red de una manera sencilla, ya que tras una breve configuración, el administrador de la nube reconocería el nuevo servidor y actualizaría sus capacidades. Este concepto explicado anteriormente recibe el nombre de nube privada.

Esta misma idea es la que se lleva a la nube pública, donde estos servicios de máquinas virtuales se ponen a disposición de los clientes de manera abierta en internet, con lo cual, nuestra aplicación se ejecuta en un entorno protegido (como es el caso de Azure) y se accede a un almacenamiento de datos también aislado.

Conclusiones

Todas las soluciones mencionadas anteriormente se siguen empleando por empresas a lo largo del globo, ya que existen diferentes necesidades de capacidad, o de asignación de recursos. Espero que quede más claro por qué la nube representa un avance, al menos tanto como me quedó a mí.

Agradecimientos a Javier Albert por la información y la revisión del artículo.

De becario en el IIC

Hoy he empezado una nueva etapa, esta vez como becario del Instituto de Ingeniería del Conocimiento (IIC), una empresa de I+D+i que se encuentra en el Campus de Cantoblanco bajo la tutela de la Universidad Autónoma de Madrid.

Comparto despacho con otros dos compañeros que también están haciendo la beca, cada uno en un área diferente de investigación, Luis está en Gestión de Patrones de Comportamiento, Antonio en Gestión del Talento y yo en Modelado y Predicción.

Las áreas de trabajo pintan interesantes, y será una manera «diferente» de pasar el verano, espero que, además, me sirva para sacar algunos post nuevos :)

En Govoid: Por qué estudiar Ingeniería Informática

La mayoría de los redactores de Govoid somos estudiantes, del sector tecnológico, y estamos en una profesión bastante sacrificada, aunque no lo parezca.

La ingeniería Informática en la UAM, donde estudiamos es una carrera eminentemente técnica y práctica, donde aprendemos a hacer ruedas, sí, pero más importante, por qué se mueve la rueda.

Seguir leyendo en Govoid.es

Me voy a certificar! o al menos, a intentarlo.

Una vez pasado el primer cuatrimestre, me he propuesto como objetivo de este 2010 obtener una certificación MCTS de Microsoft, para lo cual es necesario aprobar los examenes:

70-536: Application Development Foundation

Y uno de estos, ya más específicos:

70-502: Windows Presentation Foundation Application Development
70-503: Windows Communication Foundation
70-504: Windows Workflow Foundation
70-505: Windows Forms Application Development
70-562: ASP.NET Application Development

No son todos, ya que la lista es enorme, en mi caso me he decidido por el 70-502 una vez apruebe el primer examen, ya que el desarrollo con Silverlight me llama mucho la atención. Sé que no será fácil, pero tengo que intentarlo.

Iré contando las cosas que voy aprendiendo, sobre todo en comparación con los lenguajes de programación que sé actualmente (léase ANSI C u otros lenguajes).

BBVA Open Talent, desarrolla una aplicación para móvil y gana dinero con ella

BBVA ha lanzado un concurso de programación para iPhone y Andrdoid, las plataformas más punteras en la actualidad, con el objetivo de mejorar su posición en dichas plataformas.

El reto es el siguiente: Haz una aplicación relacionada con la banca, las finanzas, la economía en general… para una de esas 2 plataformas, en caso de que seas afortunado y tu idea guste más que las demás, BBVA te la comprará y te pagará por ella 10.000 euros, como idea no está mal, eh?.

Si aún no sabes programar para iPhone puedes asistir al curso online que se imparte en la universidad de Stanford y que se distribuye a través de iTunes University

Enlaces: BBVA, Stanford on Itunes U

Recibido libro de Krassis Press

En el pasado CodeCamp, Krassis Press, uno de los patrocinadores, llevó a cabo un sorteo titulado «Ya vienen los reyes de .NET», y me ha tocado!!!

El premio era un libro de Krassis Press a mi elección, y he elegido el de Introducción a Windows Comunication Foundation, de Hadi Hariri. WCF es, junto con WWF, dos ramas del nuevo paradigma de software de Microsoft que apenas conozco, con lo cual espero que el libro me sea útil, espero tener un artículo pronto del tema.

Slate computers, los UMPC contraatacan

En el año 2006 Microsoft, con la ayuda de algunos fabricantes creó un nuevo concepto de ordenador portátil,pequeño, ligero, con pantalla táctil, cámara, conectividad, posicionamiento… entre otros. y con una interfaz novedosa, apodada Origami por Microsoft, dicho concepto se denominó Ultra Mobile PC o UMPC.

Continuar leyendo «Slate computers, los UMPC contraatacan»

Año nuevo, objetivos nuevos

Con el cambio de año todos nos planteamos nuevas metas, para poder llegar más alto en nuestra carrera profesional o en nuestra vida personal. Pueden ser objetivos inalcanzables (este año SÍ que me apunto al gimnasio….) o perfectamente posibles (voy a ocuparme un poquito más por mi salud).

En mi caso, mis objetivos para este año pasan por aprobar 2º de carrera, cursar alguna certificación oficial de Microsoft, a ser posible el terrorífico examen 50-536, aprender mucho, que es lo que toca ahora, y si sale algún proyecto, pues mejor, además, tengo pendiente ocuparme más del blog, y mi nuevo objetivo es un post a la semana, lo cumpliré? solo el tiempo lo dirá.

Metodología Agile

Últimamente, se habla mucho de desarrollos ágiles, y de la metodología «Agile Development», pero, qué es esto? en este post, quisiera presentar una introducción a la metodología Agile. Según la wikipedia:

Se entiende como Desarrollo ágil de software a un paradigma de Desarrollo de Software basado en procesos ágiles. Los procesos ágiles de desarrollo de software, conocidos anteriormente como metodologías livianas, intentan evitar los tortuosos y burocráticos caminos de las metodologías tradicionales enfocándose en la gente y los resultados.

Esto a que se debe? a que en un principio los desarrollos de software seguían las normas de la ingeniería clásica, lo cual resultaba como un completo desastre, ya que no es comparable hacer un puente, que diseñar y poner en funcionamiento el sistema de facturación de una empresa, a que no? El software, o al menos, su desarrollo, se ha de definir sobre unas reglas que no tienen nada que ver con las anteriores, provocando retrasos y fallos graves.

Continuar leyendo «Metodología Agile»