Hacia el Cloud Computing


Cloud Computing
Índice

1.- ¿De dónde viene el término “Cloud Computing”?
 
2.- ¿Qué es  “Cloud Computing"
  
3.- Opciones de despliegue del  “Cloud Computing”?
  
4.- Opciones de servicio de  “Cloud Computing”?
  
5.- Ventajas e inconvenientes del “Cloud Computing”?
   
<><><><><>








El término “Cloud Computing” o computación en la nube  es uno de los términos más de moda en el mundo de la tecnología en los últimos tiempos.
El término Cloud Computing puede datarse en 2006, año en el que grandes empresas como Google y Amazon empezaron a usar “computación en nube”.
Con este término se empezó a describir el nuevo paradigma en el que los usuarios podían acceder a gran cantidad de software a través de la Web sin necesidad de tenerlo instalado en sus ordenadores personales.
Algunos autores datan el nacimiento del término a una década antes, en 1996, en un parque empresarial en las afueras de Houston en donde un grupo de trabajadores de la empresa COMPAQ Computer analizaban las perspectivas de crecimiento de su negocio en Internet catalogándolo como “computación en nube”
Como si se tratase de profetas, estos emprendedores tenían claro que  todo el software de negocios  se movería en la Web, incluyendo el almacenaje de archivos como algo habitual.
Para Compaq era el principio de un negocio de dos mil millones de dólares anuales (unos 1.600 millones de euros) a través de la venta de servidores a proveedores de Internet. Para otros empleados de la empresa, la “computación en la nube” significaba el principio del desastre.
El término “computación en la nube” se está extendiendo rápidamente porque recoge un cambio histórico en la industria de la informática. Este cambio radica en que cada vez de forma más acentuada el uso de potencia de computación, tanto software como hardware se albergan en centros remotos, en la “nube”.
A partir de 2007 el término empezó a usarse de forma más habitual, cuando Amazon, Microsoft e IBM empezaron a promocionar también su “computación en nube”.
El término “computación en nube” surgió como término de marketing para identificar y catalogar a las redes de telecomunicaciones y el enlace de estas con las estrategias comerciales.
En realidad, ni el término ni la autoría puede atribuirse a nadie en particular aunque se puede decir que algunos ingenieros de Compaq pudieron ser los primeros en utilizarlo. La empresa descartó esta estrategia de marketing, denominando "computación en Internet"  a todo aquello que puede significar y representar el término en si mismo.




A veces, las aplicaciones comerciales que utilizamos habitualmente en casa o en nuestro lugar de trabajo son demasiado complejas de instalar y utilizar en los equipos que habitualmente utilizamos.

En algunas ocasiones, también son especialmente caras, sobre todo si se trata de aplicaciones de desarrollo software.
A veces es necesario tener multitud de aplicaciones instaladas para, por ejemplo, diseñar y desarrollar aplicaciones Web.
Todo esto tiene aparejadas directamente dos consecuencias:
  • El hardware que necesitamos tiene que ser potente y estar permanentemente actualizado.
  • Las aplicaciones que necesitamos a veces son complejas de instalar. Su instalación implica, a veces,  disponer de conocimientos excesivamente técnicos para algunas personas.
La realidad es que la cantidad y la variedad necesaria de hardware y software para ejecutar las aplicaciones, son abrumadoras. Se necesita todo un equipo de expertos para que las pueda instalar, configurar, probar, ejecutar, asegurar y actualizar.
Gracias a “cloud computing”  nos olvidaremos de gestionar personalmente ni el hardware ni el software: eso es responsabilidad de un proveedor, si es nuestra elección.
La infraestructura compartida hace que todo  funcione como una utilidad o aplicación. Véase:
  •      * Nosotros solo pagamos por lo que necesitamos. 
    •      * Cuando el software tiene que ser actualizado, a nosotros no nos preocupa ya que el proveedor instala las actualizaciones de forma automática.
    •      * Si estas aplicaciones necesitan mas hardware para ejecutarse, a nosotros no nos importa, él redimensiona el servicio acorde a las nuevas necesidades.
Entre otras cosas, es una forma de hacer que tanto nuestros sistemas operativos, como los datos que almacenamos, no estén físicamente en nuestro equipo, sino que estén en la red, en las “nubes”.
Una forma de explicar el concepto sería decir que "cloud computing" es lo que todos llevamos haciendo desde hace tiempo en  lo que se denomina Web 2.0.
El "cloud computing" ahora puede entenderse como una forma de posibilitar o potenciar lo esencial de esta nueva web: la interacción social ya que con esta nueva forma de trabajo se tiende a basar las aplicaciones en servicios alojados de forma externa en la web.
“el cloud computing es la verdadera batalla importante en este momento en la escena tecnológica: las compañías que dominen “la nube” serán los verdaderos actores del futuro, con esquemas de concentración muy importantes debido a la misma naturaleza de la actividad”


De esta forma, nuestros datos, aplicaciones e incluso configuraciones personales están disponibles desde cualquier lugar. Se puede llegar a hablar de Web 3.0 e incluso de Web 4.0.
Como hemos visto en el primer punto, las grandes empresas comenzaron a utilizar este término para referirse a aquellos servicios alojados en la red. Por ello, podemos decir que la palabra nube sería equivalente a lo que conocemos como Internet. Sin embargo, el concepto tiene mucho más alcance.

De forma general, podemos indicar que “Cloud computing” es:
  • Un modelo, no una tecnología como puede ser un ordenador personal, un portátil, o un teléfono móvil, ebook, ipad, etc.
  • Un medio, con el que se consiguen unos objetivos previamente marcados, como eficiencia y bajo coste.
  • Una oportunidad para mejorar la organización ya que con poca inversión podemos modificar, ampliar y optimizar los recursos que tenemos con poco coste.
  • Un camino de transformación de nuestra infraestructura del Centro de Procesos de Datos hacia:
  • una mayor eficiencia 
  • una mayor elasticidad
  • un mayor alineamiento con las necesidades de nuestra actividad
  • una mayor simplicidad
  • un mejor gobierno
Todo será mucho más simple y sobre todo, tendremos un control total sobre la infraestructura que estamos manejando.




3.-  Opciones de despliegue de  “Cloud Computing”?

Hoy en día, los clientes tienen la opción de elegir el modelo de nube que desean utilizar.  Se puede elegir entre las nubes privadas, las nubes públicas y nubes híbridas, como mezcla de las dos anteriores.
En cuanto a la forma de desplegar cloud computing, tenemos que tener en cuenta la propiedad de la infraestructura.
Esto es.
a)    La nube privada es para uso exclusivo de una organización o empresa.

Generalmente es mantenida, controlada y administrada por personal propio de la empresa  (Administradores de sistemas).
Sobre este tipo de nubes se tiene todo el control,  a diferencia de las públicas, en las que la administración corre a cargo del cliente.
Inicialmente, instalar una nube privada supone un coste elevado en infraestructura ya que estará alojada y administrada en las instalaciones del cliente. Como ventaja principal el cliente disfruta de una nube de su propiedad donde él es el único que reside en ella.

b)    La nube pública es compartida por varios inquilinos sobre una base común, y es organizado y administrado normalmente por un tercero (un proveedor de servicios).
Es una clara forma de externalización de servicios y de infraestructura.
La gran ventaja de las mismas es que no requieren de una inversión inicial para comenzar a utilizarlas y no suponen un gasto de mantenimiento para el cliente que la consume. Estas nubes son compartidas con otros clientes dentro de los data centers del proveedor.
c) Las nubes híbridas. Por último tenemos esta opción intermedia entre las dos nubes anteriores.
Se dice que este tipo será el más extendido en el futuro debido especialmente a que se hace uso de la nube en función de la necesidad real de cada cliente.

Por diseño en este tipo de nubes, el cliente podrá mantener el control de aquellas aplicaciones principales y delegar la administración en las que considere secundarias.
Hay algunas ventajas y desventajas básicas al momento de decidir entre las nubes públicas y privadas.
Si hablamos en general, podemos decir que las nubes públicas son mucho más baratas inicialmente, ya que no hay que hacer desembolso inicial. Las nubes públicas son más rápidas y más baratas para empezar.
Sin embargo, las nubes privadas pueden ofrecer costes más bajos a largo plazo. Para los proyectos de desarrollo de tecnologías, el período de amortización tiende a variar de 2 a 4 años, con un promedio de 3.

Esta es la gran pregunta: ¿Poseer o alquilar?
Las aplicaciones que se utilizan en una nube privada solamente son utilizadas por la empresa u organización propietaria de la nube. El coste de mantenimiento de estas aplicaciones (licencias, mano de obra, actualizaciones, etc.), es elevado si lo comparamos con las aplicaciones que se ejecutan en una nube pública en la que varios clientes comparten algunas o la mayor parte de las aplicaciones desplegadas en la nube.
Una gran solución es recurrir a nubes híbridas, de tal forma que la mayor parte de la infraestructura la gestione el propio cliente, pero en casos excepcionales de picos de demanda, podamos recurrir a alquilar servicios de nubes públicas que nos permitan cubrir con garantías esa demanda extra.







4.- Opciones de servicio de  “Cloud Computing”?

Una vez que ya sabemos los tipos de nubes que hay, ¿Qué podemos hacer con ellas?
Dependiendo de la necesidad que necesitemos cubrir, existen distintos tipos de servicios dentro del cloud computing.

Infraestructura como Servicio (Infraestructure as a Service).
Este tipo de servicio lo que nos ofrece es la infraestructura necesaria para poder colocar crear nuestro entorno de trabajo y además ejecutar el software que queramos en ella.
En esta modalidad, el cliente no tiene la infraestructura ni la tecnológica (capacidad de procesamiento, almacenamiento y / o comunicaciones). Esta se dimensionará de acuerdo a las necesidades reales del cliente.
El cliente que use la infraestructura, la puede dimensionar a su medida desde su empresa limitando normalmente la gestión de la dimensión  a los recursos de memoria, proceso, almacenamiento y conectividad de red.
 En este caso la idea básica es la externalización de servidores, en vez de tener el control de los servidores de la propia empresa.
Con un IaaS lo que se obtiene es una solución basada en la virtualización y se paga por el uso de los recursos, como pueden ser espacio en disco, espacio en bases de datos, etc.

Con este modelo tenemos las herramientas necesarias para construir el ambiente de aplicaciones preparado para servir las necesidades particulares de cada cliente.
Un ejemplo de IaaS sería Amazon Web Service  (AWS).  AWS ofrece a las empresas una plataforma de servicios basados en el cloud. Las empresas pueden acceder a potencia informática, servidores de almacenamiento, etc, a su medida y redimensionarlas según sea el caso.
Sólo se paga por el consumo utilizado y es un entorno seguro y fiable. Fácilmente escalable, es el usuario quien controla los recursos que consume y ofrece varios servicios que se pueden incorporar en las aplicaciones del cliente.

Plataforma como Servicio (Platform as a Service).
Cuando estamos utilizando la nube como plataforma es cuando se nos ofrece el servicio necesario para poder desplegar las aplicaciones que deseemos sin preocuparnos por la infraestructura.
En esta modalidad el cliente contrata el hosting o alojamiento de aplicaciones, bien sean propias o bajo licencia, pudiendo ampliar este hosting a bases de datos, servidores o cualquier otra aplicación, dentro de un entorno dotado con herramientas de desarrollo.
Suelen ser plataformas de varios servidores de aplicaciones y BB.DD que permiten ejecutar aplicaciones para dichas plataformas.
No es necesario que el cliente gestione el sistema operativo, que lo actualice, que gestiones aplicaciones básicas ya que todo esto incluyendo la instalación, gestión y mantenimiento puede correr a cargo del proveedor. El cliente únicamente tiene que preocuparse del  despliegue de sus Aplicativos y sus Datos.
Utilizar el cloud computing en esta modalidad soluciona el problema de la infraestructura hardware y también algunas capas de infraestructura software.
Con PaaS, las empresas intentan elaborar una plataforma que contenga todo lo necesario para desarrollar y ejecutar aplicaciones basadas en la web y servicios online.
De esta manera las aplicaciones pueden ser compartidas, se pueden construir de nuevas, no hace falta instalación de software especial para desarrolladores, ni licencias, y se ahorra tiempo en desarrollo e implementación.
Un ejemplo puede ser  Windows Azure.

Con esta plataforma Windows ofrece un entorno para que los desarrolladores creen aplicaciones y servicios para el cloud, mediante los centros de datos de Microsoft.

Software  como   Servicio (Software as a Service).
Tal vez el servicio más conocido por todos en el que el proveedor nos suministra directamente aplicaciones finales, listas para ser utilizadas sin necesidad de configurar ni instalar nada o casi nada.
En este tipo de servicio se nos asegura el mantenimiento, el soporte y la disponibilidad del software, siempre o casi siempre.
Dentro de este conjunto, podemos encontrar Microsoft Business Productivity Online Standard (BPOS) como un conjunto de conocidas aplicaciones en su versión online como SharePoint Online, Exchange Online, Office Live Meeting y Office Communications Online.
En esta modalidad se contratan aplicaciones de productividad y desarrollo de negocio, como pueden ser también los entornos Salesforce, conocidos principalmente por su CRM en la nube, y Basecamp donde su producto estrella es su herramienta de colaboración para proyectos.

El proveedor pone a disposición del cliente soluciones completas en las que sólo tendrá que hacer uso de las mismas, ya sean propias, como soluciones de portales y sitios Sharepoint a medida.
En SaaS, el software es alojado en un proveedor de servicios del cloud para que este sea utilizado por otros usuarios desde cualquier parte del mundo.
Gracias al SaaS, los usuarios se libran del mantenimiento de las aplicaciones, operaciones técnicas y de soporte
 Gmail sería un claro ejemplo. Podemos acceder a nuestro gmail desde cualquier sitio que tenga conexión a la red y en cualquier momento, gracias a que es una aplicación alojada en el cloud.
Viendo todas las soluciones que nos proporciona el cloud computing, vemos la gran potencia que tiene y lo lejos que podemos llegar aprovechándonos de todas las ventajas que nos ofrece.
Además de darnos cuenta, que conscientemente o no, el cloud o los recursos basados en el cloud están presentes en el día a día de todos.
Respecto de los usuarios que utilizarán normalmente cada una de las modalidades, analicemos la siguiente tabla:

Modalidad
Descripción
Usuarios
IaaS
(Infrastructure as a Service)
Infraestructura como servicio.
Recomendada para ingenieros sistemas y comunicaciones.
PaaS
(Platform as a Service)
 Plataforma como servicio.
Recomendada para desarrolladores e ingenieros de software.
SaaS
(Software as a Service)
Software como servicio
Recomendada para usuarios finales





5.- Ventajas e desventajas del “Cloud Computing”?

 Como ventajas de este modelo de administración y desarrollo podemos destacar:
Ahorro de costes. Dado que los proveedores de los servicios utilizan en ambientes de alta eficiencia y con altos márgenes de utilización, es posible que el costo total de operación y mantenimiento de dicha infraestructura sea repartido entre miles de usuarios.
Escalabilidad. Cada aplicación puede obtener los recursos que requiere para dar respuesta a todos los usuarios, sean pocos o muchos, reduciendo los riesgos y costos operacionales.
Fiabilidad. El proveedor garantiza el servicio mediante acuerdos de niveles de servicio.
Abstracción del mantenimiento del hardware. La empresa se dedica a su actividad y se olvida del hardware necesario y de su mantenimiento y actualización. Se incrementa la eficiencia y se reducen los costes de mantenimiento y operación de la plataforma tecnológica.
Pago por uso. Con el modelo de pago por utilidad que manejan todos los proveedores, cada usuario sólo paga por lo que realmente está usando y no por la infraestructura que se tiene pero está siendo subutilizada, como ocurre con el modelo tradicional.
Agilidad de despliegue de  servicios en el cliente. Posibilidad que el propio cliente sea el que gestione sus propias imágenes y maquinas virtuales, desplegándolas a gusto y según necesidad.




 Las desventajas de este modelo se pueden resumir en:
Inseguridad. Al desplazar nuestra información fuera de nuestro alcance físico, se puede tener una sensación de vulnerabilidad.
Para solventar este "miedo" entre los posibles clientes, las grandes empresas del cloud disponen de sistemas eficientes y de alta seguridad para mantener los datos a salvo de posibles ataques.
Servicios poco personalizables. Para las pequeñas organizaciones este puede ser un punto más crítico ya que las aplicaciones de la modalidad  SaaS son algo de lo que se puede disponer pero no modificar al contrario que las aplicaciones desarrolladas bajo demanda.
Alta latencia. Todas las aplicaciones en la nube sufren de este problema asociado a la latencia generada por las conexiones WAN con la que el usuario se conecta a la infraestructura de la nube. Así aplicaciones que requieren de la transferencia de volúmenes de datos son susceptibles de tener periodos de latencia excesivamente altos.
Dependencia de un proveedor de Internet. Debido a la localización de los servicios, estamos atados a esta necesidad, por lo que es recomendable disponer de una segunda conexión en caso de fallo de la principal. Aunque cada día menos, todavía existe cierta inmadurez en alguno de los servicios ofrecidos por falta de funcionalidad, en relación a productos similares diseñados para satisfacer estas necesidades en servidores dentro del cliente.
Trabaja bien en el presente para que en el futuro
no tengas que arrepentirte de tu pasado.