¿Qué es Cloud Computing?

Cloud Computing es un paradigma que permite ofrecer servicios de computación a través de Internet.

Cloud computing es el desarrollo y la utilización de capacidad de procesamiento computacional basado en Internet (la “nube”). El concepto es un cambio de paradigma, a través del cual los usuarios ya no necesitan contar con conocimientos, experiencia o control sobre la infraestructura tecnológica que se encuentra “en la nube”, la misma que soporta sus actividades. Este concepto involucra típicamente la provisión de recursos fácilmente escalables y casi siempre virtualizados, tratados como servicios sobre Internet.

El termino “nube” (cloud en ingles) es usado como una metáfora para el Internet, basado en como el Internet es representado en los diagramas de redes computacionales y como  abstracción de la infraestructura subyacente que el misma oculta. Los proveedores de cloud computing proveen aplicaciones en línea de negocio, las mismas que se pueden acceder desde exploradores de internet (Firefox, IE, Opera, Chrome, Safari, etc), mientras el software y los datos son almacenados en los servidores.

Estas aplicaciones están ampliamente divididas en las siguientes categorías: Software como Servicio (Software as a Service – SaaS), Utility Computing, Web Services, Plataformas como Servicio (Platform as a Service – PaaS), Proveedores de Servicios Administrados (Managed Service Providers – MSP), Servicio de Comercio (Service Commerce) e Integración de Internet (Internet Integration).

El nombre de “cloud computing” fue inspirado por el símbolo de la nube que usualmente representa a la Internet en diagramas de flujo y de redes.

Comparaciones

Cloud computing puede ser confundido con:

  1. Grid computing – “una forma de computación distribuida, a través de la cual una ‘super computadora virtual’ compuesta de un grupo de computadoras que se encuentran conectados a la red libremente, trabajan en conjunto para realizar tareas muy complejas”
  2. Utility computing – el “empaquetado de recursos computacionales, tales como capacidad de procesamiento y almacenamiento, medido de forma similar como los servicios tradicionales, ej.: servicio de electricidad”
  3. Computación autónoma – “sistemas de computación capaces de auto-administrarse”

Efectivamente, muchas implementaciones de cloud computing dependen de “redes computacionales” (también llamadas Grids) de características autónomas, las mismas que se facturan como servicios.

Sin embargo cloud computing se inclina a expanderse más alla de las redes computacionales (grids) y de los servicios. Algunas arquitecturas exitosas en la “nube” tienen muy poca infraestructura o la misma no se encuentra centralizada e incluso ni siquiera cuentan con sistemas de facturación, como ejemplo se encuentran las redes peer-to-peer como BitTorrent y Skype, e incluso computación de voluntariado como el proyecto SETI@home.

Las capas de cloud computing

Existen varias capas que conforman el concepto de “Cloud Computing”, sin embargo para contar con una explicación clara y sencilla, nos concentraremos en las tres capas más importantes.

capas-cc

Software

El software en la nube (Software as a Service – SaaS, por sus siglas en inglés) potencia el concepto de “cloud computing” en una arquitectura de software, eliminando frecuentemente la necesidad de instalar y ejecutar la aplicación en la computadora del usuario final, eliminando la carga del mantenimiento del software, los costos de las operación y el soporte técnico.

Plataforma

Una plataforma en la nube (Platform as a Service – PaaS, por sus siglas en inglés) entrega una plataforma computacional y/o un conjunto de soluciones como servicio, que generalmente utilizan infraestructura en la nube y soportan software o aplicaciones en la nube. Facilita la implementación de aplicaciones sin el costo y complejidad de comprar y administrar el hardware subyacente y sus capas de software.

Infraestructura

Infraestructura en la nube (Infrastructure as a service – IaaS, por sus siglas en inglés), es la entrega de infraestructura de computación como un servicio, generalmente en un entorno de virtualización de plataforma.