Saltar a contenido

Introducción al cloud computing

Nota

Parte de los contenidos aquí mencionados se han extraído de material proporcionado por cloud@iesmarenostrum.com, a través de un curso de formación del profesorado (CEFIRE).

La computación en la nube o cloud computing permite ofrecer servicios de computación a través de la red (normalmente Internet), y permite a muchas empresas abaratar costes y maximizar su disponibilidad y tiempo de respuesta, delegando en esta nube sus infraestructuras a mayor o menor nivel, desde infraestructuras hardware hasta simples aplicaciones distribuidas en la nube para su acceso remoto.

Veremos a continuación qué características principales definen el paradigma del cloud computing: tipos de servicios ofrecidos, ventajas e inconvenientes, y ejemplos de proveedores de servicios que podemos encontrar.

1. Niveles de servicios ofrecidos

Actualmente el cloud computing ofrece servicios a tres niveles diferentes.

Software como servicio (SaaS, Software as a Service)

Es un modelo de distribución de software, en el que las aplicaciones se alojan en un proveedor de servicios en la nube, quedando disponibles para sus usuarios. Como ejemplos más significativos encontramos aplicaciones como Dropbox, Slideshare, PayPal...

La principal ventaja de este nivel es su facilidad de uso (sólo tenemos que acceder y utilizar la aplicación), y la principal desventaja es su limitación (sólo podemos realizar las tareas que permite la aplicación utilizada).

Plataforma como servicio (PaaS, Platform as a Service)

Permite abastecer al usuario de sistemas operativos y servicios asociados. Por lo tanto, los PaaS son contenedores de aplicaciones, donde podemos albergar nuestras aplicaciones para su uso. Algunos ejemplos son Heroku o Joyent.

La principal ventaja de este nivel es su idoneidad para desarrolladores, que pueden desplegar allí sus aplicaciones, y su desventaja mayor es que están restringidas a lo que está disponible (dependientes de ciertos lenguajes, o ciertas tecnologías en algunos casos).

Infraestructura como servicio (IaaS, Infrastructure as a Service)

También conocido como HaaS (Hardware as a Service), se refiere al uso de equipos de terceros, o en otras palabras, al uso de equipos hardware proporcionados por estos proveedores de servicios. Ofrecen también capas de virtualización hardware y/o software, de forma que se pueden desplegar contenedores, o máquinas virtuales, que a su vez incorporen dentro servidores u otras aplicaciones.

Los principales ejemplos de proveedores de servicios a este nivel son AWS (Amazon Web Services), Azure (Microsoft), Google, IBM, etc.

Inteligencia Artificial como servicio (AIaaS, *Artificial Intelligence as a Service)

Como un cuarto nivel de aparición reciente podemos destacar las plataformas AIaaS, orientadas al desarrollo y uso de aplicaciones basadas en inteligencia artificial. Podríamos ubicarlas a medio camino entre las SaaS y las PaaS, ya que permiten tanto utilizar aplicaciones desarrolladas por el proveedor cloud en cuestión (Amazon, Azure, Google...) como también desplegar nuestras propias aplicaciones basadas en IA en su nube.

1.1. Escenarios posibles

A la hora de migrar o utilizar los servicios de cloud computing, las empresas emplean uno de estos tres posibles escenarios:

  • Todo en la nube: se suele emplear en proyectos nuevos, ya que migrar todo un proyecto existente a la nube puede ser más costoso.
  • Híbridos: donde una parte del proyecto está en la nube y otra no. Los servicios se van migrando poco a poco, en la medida en que sea posible, pero hay una infraestructura local actual delicada, que debe quedar en la organización.
  • Nube privada o local: consiste en desarrollar un servicio propio de cloud computing para la empresa. No es demasiado habitual porque suele ser más costosa que utilizar la nube global, pero a veces es necesaria para cumplir ciertos estándares de conformidad.

2. Ventajas e inconvenientes del cloud computing

El cloud computing ofrece una serie de ventajas sobre la computación tradicional:

  • Ahorro de espacio, ya que no necesitamos albergar la infraestructura hardware con la que vamos a trabajar en la empresa.
  • Planificación menos costosa, ya que, ante cualquier cambio en el modelo de negocio (por ejemplo, que necesitemos expandir la empresa y contratar más recursos y servidores), el proveedor de servicios nos proporcionará lo que necesitemos.
  • Mayor seguridad ante ataques informáticos, o incluso acciones gubernamentales, ya que los servicios están distribuidos en diversas plataformas por todo el mundo.
  • En general, menor coste, al no tener que mantener ni comprar una infraestructura local. Se paga sólo por lo que se está utilizando.
  • Capacidad de almacenamiento ilimitada.

Las principales desventajas del cloud computing son:

  • Requiere una conexión a Internet continua
  • En escenarios híbridos (con parte de la infraestructura local en la empresa) puede ofrecer bastante latencia (tiempo de respuesta de los servicios alojados en la nube).
  • Falta de confianza, e incluso problemas legales: se están almacenando datos en servidores remotos que no controlamos del todo.
  • Dependencia tecnológica de otras compañías. Si se pierden los datos en la nube, la compañía tendrá problemas motivados por causas ajenas.

3. Principales proveedores de servicios

Amazon fue la empresa pionera en cloud computing. La enorme tienda online en la que se estaba convirtiendo necesitaba de una enorme infraestructura para albergarla, y optaron por desarrollar su propia infraestructura y ahorrar en costes a largo plazo, vendiendo después sus servicios a terceros. Esta plataforma cloud comenzó a estabilizarse y ampliarse a partir de 2006.

Como se puede comprobar, esta idea fue todo un éxito. En 2018, la división AWS (Amazon Web Services), dentro de la compañía de Amazon, obtuvo 26.000 millones de dólares de beneficio. En los últimos años, otras compañías se han unido a este fenómeno, y la cuota de mercado se va dividiendo, aunque con bastante predominancia aún de AWS (en torno a un 30 o 35%).

El otro gran competidor actualmente de AWS es Azure, de Microsoft, con aproximadamente un 15 o 20% de cuota de mercado. Inicialmente (año 2008) se concibió como un proveedor PaaS, pero posteriormente amplió sus horizontes para ser un proveedor IaaS. A partir de 2014 aproximadamente, Microsoft considera prioritario reforzar su orientación al cloud computing.

Tras estos dos gigantes, podemos encontrar otros proveedores importantes, como Google o IBM, aunque con mucha menor cuota de mercado.

¿Quién utiliza AWS?

Podemos encontrar ejemplos significativos de clientes, como Netflix, Spotify, LinkedIn, Instagram... También Apple tiene alojado en Amazon su contenido iCloud. Se estima que aproximadamente el 25 o 30% del tráfico de Internet pasa por los servidores AWS.

¿Quién utiliza Azure?

También algunas grandes empresas emplean Azure como su proveedor de servicios cloud. Es el caso de MediaMarkt o Mercedes, entre otros.

3.1. Servicios implementados

Todos los grandes proveedores de servicios cloud ofrecen una serie de servicios básicos a sus clientes: desde el uso de bases de datos convencionales, a servicios de Big Data, contenerización, almacenamiento de archivos, etc. Esto hace que, en mayor o menor medida, dé igual el proveedor que seleccionemos, puesto que todos ellos implementan servicios equivalentes en categorías equivalentes.

Por ejemplo, para dar soporte a contenerización a través de Docker o Kubernetes, AWS dispone del EC2 Container Service, mientras que Azure cuenta con el Azure Container Service (AKS). Para la computación serverless, AWS cuenta con AWS Lambda, y Azure con Azure Functions.

En términos de inteligencia artificial, todas las plataformas "dominantes" ofrecen también una variedad de servicios pre-implementados, orientados a procesamiento de imágenes, textos, vídeos, etc. También disponen de herramientas online para desarrollar de modo más o menos sencillos nuestros propios modelos, como es el caso de SageMaker en Amazon, o Azure Machine Learning Studio en Azure. Y, por supuesto, también permiten que despleguemos y alojemos nuestras aplicaciones basadas en IA en sus infraestructuras.

3.2. ¿Cuál elegir?

Los motivos que pueden llevar a elegir un proveedor u otro están más relacionados con los costes, fiabilidad, o posibilidad de integrar lo que ya se tiene con la infraestructura proporcionada en la nube. Así, por ejemplo, los antiguos usuarios de tecnologías Microsoft pueden adaptarse mejor a las infraestructuras proporcionadas por Azure que a las de otros proveedores.

4. Algunos ejemplos reales

Para concluir esta introducción al cloud computing veremos un par de casos de éxito de empresas que decidieron migrar a cloud.

Meneame

Meneame es el mayor agregador de noticias en castellano a nivel mundial. Su portal tiene cientos de miles de visitas diarias, y necesita una infraestructura web que les dé soporte y sea flexible, para poderse adaptar a que ese flujo de visitas crezca o decrezca.

En 2010 decidieron migrar a AWS, y redujeron los costes a la décima parte, gastando en cada momento sólo lo necesario, y con la capacidad de crecer dinámicamente en un futuro de forma sencilla.

Securitas Direct

Securitas Direct es una multinacional con millones de clientes, que dispone de toda clase de dispositivos de seguridad que generan señales y multimedia por todo el mundo: más de 300 millones de señales al día y más de 42 millones de vídeos, que es necesario que circulen por su infraestructura para la monitorización de las viviendas e instalaciones que protegen.

En 2010 se comenzó con la grabación de vídeo, para lo que las infraestructuras existentes en la empresa eran insuficientes. Nuevamente, se apoyaron en AWS para esta expansión, empleando tecnologías serverless para el procesamiento de señales multimedia.