30 jun 2020

Introducción al Cloud Computing con Azure. Parte 1: IaaS vs PaaS vs SaaS


Buenas a todos, en el post de hoy vamos a arrancar una nueva cadena en la que os hablaremos largo y tendido de la nube de Microsoft, Azure, con especial foco (a medida que vaya avanzando la cadena) en las medidas de seguridad integradas dentro de la popular plataforma de servicios.

Lo primero que deberemos entender bien antes de iniciarnos en el mundo Azure (o en el de cualquier otro proveedor de nube), son las diferencias entre SaaS, IaaS y PaaS.



Infraestructura como servicio (IaaS)

IaaS es la categoría más simple de los servicios de nube y se basa en que un proveedor de servicios facilite al usuario una infraestructura TI con determinadas automatizaciones, como la disposición de redes, el almacenamiento o la computación, lo que permite una gran flexibilidad para poder alquilar los recursos mínimos necesarios, sin tener que hacer una inversión elevada en máquinas, licencias y mantenimientos de un entorno On premise.

Plataforma como servicio (PaaS)

PaaS es un modelo avanzado de IaaS, en el que el proveedor de nube facilita además al usuario las herramientas y capacidades necesarias para poder implementar cualquier tipo de aplicación sin requerir una infraestructura. Facilita sistemas operativos, bases de datos, etc. que podrá levantar, modificar y apagar con unos pocos clics.

Software como servicio (SaaS)

SaaS es un modelo más conocido tradicionalmente, y se basa en que el proveedor facilite al usuario la plataforma montada, lista para ser consumida. Probablemente sin saberlo, uséis SaaS a diario, desde cuando accedéis a un hosting compartido, a cuando utilizáis vuestro correo de Outlook o vuestras hojas en Google Docs.

Bien, teniendo estos conceptos claros, comencemos a hablar de Azure. De acuerdo a la introducción que hace Microsoft, Azure es un conjunto de servicios en la nube para ayudar a satisfacer sus necesidades comerciales otorgando la libertad de crear, administrar e implementar aplicaciones en una red mundial enorme con sus herramientas y marcos favoritos.

¿Y esto qué quiere decir? ¿Azure es IaaS, Saas o Paas? Pues realmente a día de hoy, Azure es todo. Es un ecosistema que crece cada día, y con el que los usuarios pueden levantar prácticamente cualquier servicio o aplicación a un coste relativamente comedido y con unos pocos clics. Si que es verdad que Azure, así como otros proveedores de nube, pecan de brindar tantas opciones al usuario, que a veces se siente uno abrumado con tantas alternativas, por lo que a veces cuesta decidir cual es la mejor opción y la más óptima para que nuestros productos sean lo más ágiles posible, y a final de mes nos llegue la factura más baja posible. Esto ha conllevado a que los arquitectos de cloud sean unicornios hoy en día, hipercotizados y cuyas tarifas crecen tanto como las opciones de estos ecosistemas. Pero para eso precisamente he pensado en hacer esta cadena, para poco a poco tratar de aterrizar las diferentes opciones que nos plantea un cloud como Azure, y cómo podemos sacarle el mejor partido posible.

Hoy, en el post introductorio, veremos cómo crear nuestra primera aplicación web, haciendo uso de Azure APP Services, uno de todos los servicios que encontraremos en Azure:



Lo primero, lógicamente, será registrarnos en azure:


Una vez registrados, lo primero que nos encontraremos es el centro de inicio rápido:


En la pestaña de arriba tenemos un acceso a una serie de cursos de introducción que os recomiendo realizar, para tener una base sólida de qué es la cloud, y de los componentes principales de Azure:

Si desplegamos el menú de la izquierda, veremos los enlaces para acceder a los diferentes menús de Azure:


Y en la botonera superior encontraremos el acceso directo a la consola (bash o powershell, a vuestra elección):


Nosotros vamos crear una simple aplicación web en PHP, que correrá sobre un entorno linux, por lo que seleccionaremos la primera de las opciones:

A continuación, seleccionaremos los detalles del entorno (PHP y Linux):


Y en unos pocos segundos ya tendremos el entorno levantado y en funcionamiento:


Haciendo clic en el nuevo servicio, podremos controlar el consumo realizado:


Así mismo, podremos administrar el servidor por SSH, haciendo clic en la opción correspondiente:


Para comprobar que todo está OK, crearé un archivo PHP en la carpeta wwwroot del servidor web, con el texto "helloworld":


Si navegamos ahora a la URL generada, veremos nuestra aplicación web levantada:


Sencillo, ¿verdad?


Esto es todo por hoy, en el próximo post seguiremos viendo otras opciones para levantar nuestras aplicaciones y servicios en Azure bajo otras modalidades.

Saludos!


Autor: Juan Antonio Calles (@jantonioCalles), CEO de Grupo @ZerolynxOficial. CSO de @OsaneConsulting. Doctor en Informática. Cofundador de @fluproject y @X1RedMasSegura. Impulsor del proyecto Open Mobility Security Project (OMSP). Microsoft MVP.

Para consultas a Juan Antonio puedes utilizar su Buzón Público



2 comentarios:

  1. Dos consultas, el registro y uso que muestras aquí es sin pagar una tarifa? o existe un abono? Y la segunda, como se aborda la parte de seguridad de azure?

    ResponderEliminar
  2. Buenas Francisco, tienes algunos servicios gratuitos en Azure. Aquí tienes el detalle: https://azure.microsoft.com/es-es/free/

    Para esta PoC yo he utilizado mi Visual studio enterprise subscription, que tenía 150€ de Azure. De todas maneras, en los 2 siguientes posts, que ya he preparado y los veréis la semana que viene, estoy utilizando 13.000 $ de crédito que nos dan a los MVPs, lo que me va a permitir enseñaros algunas características más empresariales. Por ejemplo, en el post 3 levantaremos una máquina de unos 500€ para unas tareas específicas.

    Trataré de iros orientado sobre precios en cada post.

    Gracias por el comentario!

    ResponderEliminar