Conceptos Básicos de Cloud Computing – ¿Qué necesito saber?

El tremendo desarrollo que están teniendo las redes de comunicaciones, tanto móviles como fijas, han permitido el desarrollo de nuevas aplicaciones que ya no se ejecutan en nuestro ordenador si no en un ordenador conectado en algún sitio de internet. Este tipo de aplicaciones se engloban en un nuevo concepto denominado “Cloud Computing” o procesamiento en la nube (internet). En la mayoría de los casos se desconoce la ubicación de este ordenador que nos da servicio pero debemos tener claro que siempre hay un ordenador físico ejecutando estas aplicaciones.

SaaS – Software as a Service Hosting
IaaS – Infraestructure as a Service Almacenamiento en la nube – Cloud Storage
PaaS – Platform as a Service

En muchos casos se accede a estas aplicaciones con un navegador web con lo que no es necesario instalar ningún programa en nuestro ordenador. En otros casos debemos instalar un programa en nuestro ordenador denominado “cliente” que realiza la intermediación entre nuestro ordenador y la aplicación ejecutada en el ordenador “servidor”. En los dos casos las necesidades de procesamiento en el “cliente” son muy pequeñas por lo que el cliente puede ser una tablet o incluso un teléfono móvil.

SaaS

Siglas de “Software as a Service” o software como servicio. Tradicionalmente un programa se compra y, una vez instalado, lo podemos utilizar indefinidamente e incluso volverlo a instalar en un ordenador más potente cuando el anterior queda obsoleto. El precio suele ser alto ya que se compra el uso ilimitado de este programa. Cuando se vende un software como servicio estamos comprando el uso por un determinado periodo. Si pagamos mensualmente estamos comprando el derecho de uso por un mes. Esto permite que la cantidad a pagar sea bastante pequeña. Si estamos contentos con la aplicación no tendremos problema en seguir pagando, además suele estar incluido el soporte de la aplicación. En el momento en el que ya no sea útil podemos cancelar el uso y la aplicación dejaría de funcionar. Ejemplo de SaaS son los antivirus en los que se compra el derecho de uso por un periodo determinado que suele ser de un año. Si, al finalizar el periodo, no renovamos la licencia el antivirus deja de funcionar. El concepto es independiente de que el programa se instale en nuestro ordenador o se utilice a través de una página web.

IaaS

Siglas de “Infraestructure as a Service” o infraestructura como servicio. En este caso el servicio que se ofrece es un ordenador con su sistema operativo y listo para que el usuario pueda instalar el software que quiera. Este ordenador suele tener una dirección IP fija para facilitar el acceso del usuario. Este acceso se realiza utilizando un software de acceso remoto como puede ser el Remote Desktop de Windows. Este ordenador puede ser un ordenador real (más caro) o un ordenador virtual (más barato). Los ordenadores virtuales se crean con un software de virtualización como VMware, Citrix, Oracle, etc. Este software crea varios ordenadores virtuales sobre un mismo ordenador real. Cada ordenador virtual tiene su sistema operativo y funciona de manera independiente de los demás.

Para entender como funciona la virtualización podemos instalar Oracle VirtualBox o Microsoft Virtual PC. Ambas aplicaciones se pueden instalar fácilmente en nuestro ordenador como una aplicación más. Tanto VMWare como Citrix XenServer son ya aplicaciones profesionales que implican dedicar varios ordenadores exclusivamente para realizar la instalación.

Hosting

Hosting o alojamiento es un servicio que permite la publicación de un servidor Web. Cuando se contrata este servicio las páginas se almacenan en una carpeta en un servidor compartido con otros muchos usuarios. A la vez se contrata un dominio y el proveedor configura el sistema para que, cuando se accede a dicho dominio, las peticiones van a la carpeta donde están nuestras páginas. Esto permite que un mismo servidor de servicio a un gran número de usuarios por lo que el coste por usuario es muy reducido. Esto nos permite crear un servidor web por un precio muy económico. Muchos servicios de hosting permiten que nuestras páginas tengas programas en lenguaje PHP y, además, nos permiten utilizar una base de datos común. Con esto es posible crear páginas que incluyan aplicaciones como una tienda en internet o un blog.

PaaS

Siglas de “Platform as a Service” o plataforma como servicio. Es una versión poco utilizada y algo compleja de utilizar. Pongamos un ejemplo: Google ofrece un entorno de desarrollo para realizar aplicaciones. Estas aplicaciones no se ejecutarían en nuestro ordenador si no en un entorno de ejecución situado en algún punto de internet. Esto permite a un desarrollador crear aplicaciones en la nube solamente aprendiendo a utilizar el entorno de desarrollo de google. No es muy utilizado ya que se depende totalmente de este entorno de desarrollo y ejecución. Si cambia el entorno la aplicación deja de funcionar y el desarrollador está obligado a actualizarla gastando un esfuerzo que, a lo mejor, no tenía previsto.

Almacenamiento en la nube

Es otro ejemplo de SaaS. Estas aplicaciones nos permiten almacenar en un servidor en internet lo que pongamos en una carpeta de nuestro ordenador. Nuestros ficheros están por tanto duplicados ya que están en nuestro ordenador y también en este servidor en internet. Para este servicio nuestro identificador es una dirección de correo electrónico y un password que elegimos. Podemos instalar la aplicación en varios ordenadores con lo que conseguimos replicar nuestra información en varios ordenadores e incluso en nuestro tablet o dispositivo móvil. También se puede acceder a través de una página web. Por supuesto debemos elegir para ello una aplicación de probada confianza como pueden ser Google Drive o Microsoft Onedrive. Ambos ofrecen varios Gigabytes de almacenamiento gratuito y solo es necesario pagar por el espacio adicional.