En este artículo hablaremos de la plataforma Windows Azure creada por Microsoft.
¿Qué es Windows Azure Platform?
Windows Azure Platform se trata de la apuesta de Microsoft por el cloud computing. Bajo este nombre se ofrecen diferentes servicios con el fin de proporcionar a sus clientes todos los recursos necesarios para que sus aplicaciones y sus datos puedan ser trasladados a la nube de la manera menos traumática posible.Durante estos últimos años la empresa ha invertido recursos de manera considerable en este modelo de negocio, construyendo numerosos data centers alrededor del mundo con el objetivo de que todos sus futuros clientes puedan a día de hoy disfrutar del servicio que prestan.
¿Qué necesito para acceder a la plataforma?
El primer paso para comenzar a trabajar con la nube es obtener una subscripción. Existen dos tipos ofertas: Aquellas pensadas para los suscriptores de MSDN y Microsoft Partners y por otro lado ofertas estándar para aquellos clientes que no tengan relación previa con Microsoft.Podemos contratar y conocer las ofertas a través del siguiente enlace: http://www.microsoft.com/windowsazure/offers/
Si nos fijamos en cualquiera de las ofertas, nos hablan de transacciones, horas de computación, almacenamiento, etcétera. Si teníamos un seguimiento previo de estos valores, podemos hacer uso de una calculadora que nos estimará los recursos necesarios y su coste de manera orientativa a través de este enlace: http://www.microsoft.com/windowsazure/economics/default.aspx
¿Qué servicios ofrece la plataforma?
Aunque a día de hoy se están ultimando algunos de los servicios, vamos a enumerar aquellos de los que tengamos conocimiento:
Windows Azure
Si bien los términos Windows Azure Platform y Windows Azure pueden parecer lo mismo el significado de ambos es totalmente distinto. Windows Azure Platform se refiere a la plataforma en su conjunto, englobando todo el paquete de servicios que se ofrece y, por otro lado, Windows Azure nos habla del servicio de computación que brinda la plataforma.
¿Qué posibilidades nos da tener un servicio de computación?
Como ventaja fundamental tenemos la posibilidad de centrarnos en nuestros desarrollos gracias a la abstracción más que parcial de toda la administración de la plataforma en la que se aloja la aplicación, es decir: mantenimiento de los servidores, actualizaciones, instalación y configuración de sistemas operativos, etcétera. Desplegar una aplicación en producción será tan sencillo como desarrollar la aplicación y despreocuparse del acondicionamiento del entorno.
Las herramientas, lenguajes y tecnologías necesarias para utilizar este servicio son las mismas que para cualquier otro tipo de servidor on-premise, es decir, dentro de la empresa del cliente.
Windows Azure Storage y Content Delivery Network
El servicio Windows Azure Storage nos proporciona almacenamiento no relacional en la nube. Este servicio a su vez se divide en cuatro tipos de almacenamiento:
- Binary Large Object (BLOB) service para almacenar archivos binarios de gran tamaño, como por ejemplo videos, imágenes, backups, etcétera.
- Table service donde podemos guardar información de una forma estructurada, aunque no relacional.
- Queue service para el almacenamiento de mensajes no superiores a 8KB con el fin de lograr una comunicación entre aplicaciones.
- Windows Azure Drive permite a las aplicaciones en Windows Azure montar un disco duro virtual NTFS.
SQL Azure
Del mismo modo que necesitamos un entorno para alojar nuestras aplicaciones, es necesario disponer de un sistema para almacenar los datos. Dentro del contexto en el que nos encontramos, Microsoft ha desarrollado una nueva base de datos relacional llamada SQL Azure basada en su popular producto SQL Server.
Esta base de datos nos aporta una funcionalidad similar a la que podemos encontrar en SQL Server a excepción de algunas características, probablemente incorporadas a futuro. Las ventajas más destacadas de esta base de datos son su alta disponibilidad, alta escalabilidad y la capacidad de ser multi-tenant, es decir, pensada para trabajar con distintos clientes a la vez.
Por otro lado, no es necesario aprender un nuevo lenguaje para realizar consultas sino que podemos utilizar T-SQL de la misma manera que lo haríamos con SQL Server. De hecho, podemos hacer uso de SQL Server Management Studio para interactuar con las bases de datos alojadas en la nube.
Existen diferentes tamaños de bases de datos, con un mínimo de 1GB y un máximo de 50GB.
SQL Azure Data Sync Como servicio adicional para SQL Azure, se va a proporcionar una la opción de sincronización entre distintas bases de datos dentro del mismo o diferente data center e incluso con bases de datos on-premise. Lo más interesante de esta novedad, aún en su versión CTP , es que no será necesario código adicional para configurar el servicio. Se podrá establecer la sincronización programada, ejecutarla bajo demanda, manejar los conflictos cuando los datos han sido modificados en distintas bases de datos, así como trazar y monitorizar los posibles errores que puedan ocurrir.
Los escenarios más comunes para beneficiarse de este servicio son:
- Sincronización de bases de datos que están en la nube con las que están on-premise.
- Extender la información de bases de datos SQL Azure a otras localizaciones para mejorar el tiempo de latencia.
SQL Azure Reporting nos va a proporcionar muchas de las funcionalidades ya conocidas en SQL Server Reporting Services 2008 R2 para poder crear nuestros propios informes, gráficos, mapas, etcétera y poder desplegar los mismos en servidores on-premise o bien en la nube.
Esta funcionalidad está aún en su versión CTP.
Windows Azure AppFabric
Uno de los retos más importantes y complejos trata de la seguridad de nuestras aplicaciones. Windows Azure AppFabric nos ofrece un alto nivel de abstracción de la capa de seguridad, reduciendo la complejidad en nuestra aplicación.
Este servicio está compuesto de 5 funcionalidades diferentes:
- Service Bus: Nos proporciona una comunicación segura entre aplicaciones con la capacidad de atravesar Firewalls, dispositivos NAT, etcétera.
- Access Control: Se trata de un servicio que nos facilita la autenticación para nuestras aplicaciones, incluyendo Active Directory, Windows Live ID, Google, Yahoo! y Facebook.
- Caching: Nos proporcionará un sistema de caché distribuido para Windows Azure y SQL Azure de alta velocidad y disponibilidad, además de escalable (se podrá aumentar o disminuir la caché en función de nuestras necesidades). Esta funcionalidad sólo está disponible en Windows Azure AppFabric LABS sin opción de contratación por el momento.
- Integration: En un futuro próximo también disfrutaremos de este servicio con el que podremos integrar aplicaciones dentro de la plataforma Windows Azure con otras expuestas en SaaS de terceros. Esta funcionalidad no está disponible todavía.
- Composite App: Automatización del despliegue y la administración sin la necesidad de la generación de manuales para la puesta en producción. Esta funcionalidad no está disponible aún.
Windows Azure Virtual Network
Dentro de una empresa solemos tener un conjunto de servidores que juntos conforman las aplicaciones de negocio. Si elimináramos o trasladáramos uno de los integrantes fuera del alcance del resto podría generar un fallo en el sistema al no poder contactar con el mismo. Para ello, el equipo de la plataforma Windows Azure abrirá próximamente un abanico de posibilidades gracias a Windows Azure Virtual Network, un nuevo servicio que ofrecerá la creación de redes virtuales entre otras características, por el momento desconocidas, con el fin de conectar los servidores alojados en la nube con aquellos que aún permanecen on-premise.
Por el momento podemos solicitar el acceso a la CTP de Windows Azure Connect a través del portal de la plataforma para la creación de redes privadas virtuales.
Windows Azure Plataform Appliance
Por último, una de las últimas incorporaciones a los servicios ofrecidos por el cloud de Microsoft es Windows Azure Platform Appliance, el servicio que te permite llevarte la nube a casa.
Algunos clientes son reacios a trasladar su negocio fuera de su empresa pero es posible que aun así necesiten las facilidades que Windows Azure Platform ofrece. Por ello, gracias a este nuevo servicio los clientes podrán contratar su propio data center para alojarlo en su organización, incluyendo la posibilidad de utilizar Windows Azure, SQL Azure así como la configuración específica de Microsoft para la red, almacenamiento y hardware.
Por el momento no está disponible para el público en general pero próximamente se generará un roadmap dependiendo de las experiencias con los partners y clientes seleccionados para la prueba piloto.
En resumen
En este artículo hemos visto los servicios actuales de la plataforma, además de los que presentarán en su versión final a lo largo del año. A día de hoy hemos comprobado que podemos cubrir la mayor parte de nuestras necesidades base para poder plantearnos el salto a la nube.En el siguiente artículo comenzaremos con el servicio de computación Windows Azure para conocer cómo afrontar un proyecto para la nube, cómo desplegarlo, etcétera.
Gisela Torres Buitrago
Desarrolladora en tecnologías .NET y Windows Azure MVP