La Tecnología del Cloud Computing
El disponer ya de unos años en este negocio, te permite tener perspectiva y criterio de todo lo que ha sucedido en este área. Desde los años 60 las empresas necesitaban consultar grandes cantidades de información desde distintos lugares de acceso. Sin embargo, recurrir a infraestructuras era extremadamente caro, por lo que se comenzó a estudiar cómo conseguir que los recursos de CPU y almacenamiento pudiesen ser compartidos por múltiples usuarios.
John McCarthy fue el primero en sugerir como solución a este problema la tecnología de tiempo compartido. Ofrecer tecnología como servicio público, al igual que el agua o la luz.
En 1969 Joseph Carl Robnett Licklider, uno de los padres de ARPAnet, introdujo el concepto de Redes de ordenadores intergalácticas, aunque el “estado del arte” de la tecnología hizo que la idea de computación compartida quedase parada hasta los años 90, cuando Internet comenzó a disponer de ancho de banda suficiente para soportar el peso de la nube.
Tras 30 años de evolución de la Red, fue a finales de los 90 cuando los técnicos de Amazon analizaron que tenían una gran infraestructura informática de la que apenas utilizaban un 15% de su capacidad y se plantearon una forma de rentabilizarla. En 2002 comenzaron a ofrecer los servicios web con AWS.
En 2006 Amazon introdujo por primera vez el término Elastic Compute Cloud (EC2) como un servicio comercial que permitía a pequeñas y medianas empresas alquilar los servidores donde poder hacer “correr” sus propias aplicaciones. En los años siguientes, grandes empresas como Google, Microsoft o IBM, viendo el éxito de Amazon, iniciaron su carrera en el cloud computing.
Por tanto, el Cloud Computing democratiza el acceso a recursos de software a nivel internacional, facilitando a las pequeñas empresas la capacidad de acceder a tecnología avanzada de manera escalable en función de sus necesidades y posibilidades.
Actualmente, se pueden subcontratar todas las capas de los sistemas informáticos que necesitamos para operar en una empresa. Para ordenarlos, dichos sistemas podemos dividirlos en varias tecnologías en las cuales compiten los diferentes vendors del mercado.
Y antes de entrar en detalle pensemos en las partes que tiene un servidor de aplicaciones local: Hardware + Software. Por un lado necesitamos la máquina, esa máquina necesita capacidad de procesamiento, almacenamiento y sobre ese hardware necesita un sistema operativo para funcionar, y sobre ese sistema operativo, aplicaciones que nos dan el servicio que necesitamos. Con esa analogía... las tecnologías que podemos contratar actualmente en la nube son:
- Virtualización: es la parte básica que provee al Cloud de máquinas (CPU) virtuales siendo éste el “gran” contenedor. Es decir, el espacio virtual donde va a residir nuestro servidor (virtual).
- Vendors privados: VMware, Citrix, Oracle,...
- Vendors open source: Xen Cloud Platform, OpenVZ, Openstack,...
- Sistema Operativo Cloud: sobre esa máquina virtual hay que instalar un sistema operativo para dicha gestión.
- Vendors privados: VMware, CA
- Vendors open source: Eucalyptus, Openstack,...
- Almacenamiento: El almacenamiento no necesita descripción. Espacio para guardar desde el Sistema Operativo hasta las aplicaciones. Pero al estar en la nube es un espacio que puede crecer bajo demanda, “mágicamente” sin contar con un disco “físico”.
- Vendors privados: EMC, Google,...
- Vendors open source: Eucalyptus, Openstack,...
- Gestión de Cloud: Se trata de la gestión o panel de control para gestionar el resto de servicios y/o máquinas contratadas.
- Vendors privados: VMware, CA, Microsoft,...
- Vendors open source: Eucalyptus, Openstack, Apache,...
Una vez entendido qué tecnologías engloba el cloud, habrá que entender la manera de adaptarlo desde nuestro negocio y definir el modelo tecnológico para su uso. Actualmente para ese entendimiento los servicios en el cloud se dividen en 3:
- Iaas: Infraestructura como servicio. Es un modelo orientado a un administrador de Sistemas, en el cual el vendor provee a la empresa con recursos de procesamiento y almacenamiento (básicamente por eso se le llama Infraestructura). El IaaS puede incluso utilizarse sobre superordenadores de Amazon (EC2), Google (GCE - Google Compute Engine), IBM (SoftLayer) o Walhalla por ejemplo.
- PaaS: Es un modelo orientado a desarrolladores de aplicaciones. Aquí ya no se tiene que preocupar del hardware, sino que directamente se utiliza la plataforma para el desarrollo (SDK’s, API’s, Software de desarrollo,...). Ejemplos en el mercado son: Salesforce Heroku, AWS Elastic Beanstalk, Microsoft Azure,... o de nuevo Walhalla
- SaaS: es el modelo que ofrece aplicaciones bajo demanda que son alojadas y administradas por el proveedor de servicios y se pagan por suscripción. Estando en la capa más alta está preparado para los usuarios finales. Casos de uso conocidos: paquete ofimático (Gdocs, Office365,...) o bien algo más complejo como software a medida para llamadas desde nuestra programación, como puede ser una API que nos de el Geoposicionamiento de un dispositivo, la temperatura de una torre eólica, una calculadora compleja, etc… Es decir, los SaaS pueden ser complejos (como un paquete de software completo) o tan simples como una llamada que devuelva un dato. Ejemplos de Saas: Google Apps, Salesforce, WebEx,...
Estos 3 modelos de servicio los representamos uno encima del otro así (esta clasificación es necesaria para poder indicar el rol que cumple un determinado servicio en la nube) :
Una vez detallados estos 3 modelos habría que tomar la decisión qué servicios habría qué migrar o construir. También habría que valorar si soportarlos sobre una Cloud pública, privada o híbrida. Pero eso requiere de otro artículo al respecto. ;)
Looking forward to new Eco & Human-Friendly 🌎🤗 challenges and opportunities | Technology is not the answer
6 añosGrande... Me encanta el final, sobre todo porque ya sabes la respuesta, jajajajaaaa
Process & Quality Assurance Manager (ATM)
6 añosMuy buen articulo Paco, enhorabuena y muchas gracias por compartir.
Director de proyectos, consultor y formador senior. Creador del Modelo Competencias 2.0.
6 añosEsperamos siguientes artículos, Francisco...