Cloud computing: ¿qué se esconde detrás?
Quienes no deseen o puedan crear un data center propio, pueden recurrir al cloud computing (computación en la nube en español). Se trata de un modelo que ofrece distintas ventajas atractivas tanto para particulares como para empresas. Descubre qué es el cloud computing y las ventajas e inconvenientes que presenta.
¿Qué es el cloud computing?
Disponer de un data center propio lleva asociado cierta complejidad e implica una inversión económica considerable, ya que se requiere personal especializado. Además, no se puede escalar según se requiere, motivo por el cual a menudo se destinan más recursos de los necesarios, lo que supone una desventaja en cuanto a eficiencia.
Con el cloud computing, muchos de estos problemas desaparecen. En lugar de tener que adquirir, instalar y mantener un data center, las empresas y particulares recurren a servicios web alojados por un único proveedor. De esta forma, los usuarios se benefician tanto de la economía de escala como de la posibilidad de escalar sus recursos de manera rápida, fácil y dinámica. En la mayoría de los casos, esta forma de outsourcing funciona mediante un sistema de alquiler.
Con el cloud computing, no hay un límite establecido de servicios ofrecidos. Puede incluir desde el simple almacenamiento en la nube, en el que los usuarios obtienen recursos de almacenamiento en servidores remotos junto con el propio almacenamiento en disco, hasta la infraestructura en la nube, a través de la cual las empresas pueden obtener data centers completos por Internet.
De acuerdo con la publicación del National Institute of Standards and Technology (NIST), los servicios ofertados que se consideran dentro del concepto de cloud computing deben cumplir con una serie de características:
- Autoservicio a demanda: los usuarios han de poder acceder a los recursos que necesiten sin tener que ponerse en contacto con el proveedor.
- Acceso amplio de red: el acceso al cloud computing se realiza a través de Internet y no requiere utilizar un protocolo específico o técnicas poco comunes. El uso de métodos estandarizados se ocupa de que todos los usuarios tengan acceso al servicio sin problemas.
- Pool de recursos: la combinación de diferentes instancias de computación, que en la mayoría de los casos se trata de una granja de servidores, es prácticamente un requisito para la computación en la nube. Estos pools permiten que varios usuarios dispongan de la capacidad de almacenamiento o la potencia de cálculo requerida al mismo tiempo. Además, el cliente no tiene por qué saber el dispositivo que se usa para ello, ya que los recursos se van asignando de forma dinámica.
- Elasticidad y escalabilidad: los recursos deben estar a disposición de los usuarios con celeridad y de acuerdo con las necesidades de cada uno. En el mejor de los casos hay automatismos activos que sirven para activar o desactivar recursos sin intervención de clientes o empleados.
- Servicio medible: el uso de los servicios en la nube se está monitorizando en todo momento, lo que aporta transparencia tanto para el proveedor como para el usuario.
El cloud computing se basa bien en un centro de procesamiento de gran tamaño, bien en una granja de servidores, donde los ordenadores o servidores se conectan agrupando los recursos. Este tipo de computación en malla (grid computing) permite obtener un alto rendimiento. Además, si se combina con la virtualización, se pueden crear instancias virtuales dentro de la red para los usuarios individuales, aunque estos no sepan el dispositivo en el que se encuentran los datos. Y es que, aun no disponiendo de esta información, el acceso tiene lugar de forma rápida y sin problemas.
Variantes del cloud computing
Con el tiempo han ido apareciendo diferentes ofertas en el mercado, las cuales se diferencian principalmente en lo que se refiere al modelo de capas y a la forma de implementación, si bien también difieren según los precios y servicios que soportan.
Modelo de capas
Cada capa se refiere a un modelo concreto del servicio: hay diferentes tipos de capas “as a service” en función del alcance de la oferta, que se organizan en una estructura piramidal: mientras que el modelo infraestructura como servicio tiene el alcance mayor, el software como servicio se focaliza en una aplicación específica.
- Infraestrucutura como servicio (IaaS, Infrastructure as a Service). En esta capa el proveedor ofrece soluciones de hardware completas: potencia de procesamiento, espacio de almacenamiento y tecnología de red, tratándose de instancias completamente virtualizadas distribuidas en el pool de recursos. IaaS sirve como base para el resto de capas, aunque también se ofrece como producto individual.
- Plataforma como servicio (PaaS, Platform as a Service). Esta capa va un paso más allá y pone a disposición del usuario no solo el hardware sino también un entorno completo. PaaS está pensada sobre todo para desarrolladores de software. El proveedor se encarga de proporcionar un entorno de desarrollo ya creado en la nube en un hardware alojado, por lo que los programadores se ahorran la instalación y el mantenimiento del entorno.
- Software as a Service (SaaS, Software as a Service). En la capa superior se ofrece a los usuarios un software completo en la nube, es por eso que SaaS está pensado sobre todo para el consumidor medio, que no va a necesitar instalación ni mantenimiento y está seguro de que el rendimiento del hardware basta para el funcionamiento del software. Para poder acceder al software, los usuarios utilizan bien el navegador web, bien un programa restringido que carga la parte principal en la nube.
- Everything as a Service (XaaS). Junto a los tres modelos nombrados, van anunciándose cada vez con más frecuencia otros servicios, aunque se debe normalmente a motivos de marketing. Un XaaS sirve para designar cualquiera de las capas anteriores, aunque también puede no tener nada que ver con el cloud computing. Es el caso de Humans as a Service (HuaaS), que describe un tipo de crowdsourcing.
Modelo de implementación
Estos modelos describen el tipo de oferta: ¿se reservan las instancias para un único usuario o empresa o las comparte en un pool con otros usuarios?
- Nube privada: el servidor lo usará un solo usuario. Una nube privada puede estar, aunque no obligatoriamente, en una red interna (nube interna). Incluso con un proveedor de hosting con granjas de servidores es posible recurrir a un hardware dedicado al que no tienen acceso el resto de usuarios del proveedor.
- Nube comunitaria: una nube comunitaria funciona de forma similar a una nube privada, solo que este caso son varios clientes los que comparten una instancia de hardware dedicado. La combinación de usuarios no es casual, sino que pertenecen al mismo ámbito de negocios o comparten los mismos intereses. Este tipo de nube se puede gestionar tanto de forma interna como externa y frente a la nube privada supone un ahorro de costes.
- Public Cloud: este tipo de implementación se corresponde con el verdadero ideal en el que se basa el concepto de la nube. El usuario usa, al igual que el resto de personas, la misma conexión al servidor y desconoce quién usa qué hardware, ni tampoco puede determinarlo.
- Nube híbrida: se trata de una fusión entre la nube pública y la privada. Es la empresa o el particular el que decide qué parte de la operación tiene lugar en la nube privada (por ejemplo, aspectos importantes en la seguridad), y cuál le asigna la nube pública.
Ventajas y desventajas del cloud computing
El cloud computing ofrece numerosas ventajas, sobre todo a pequeñas y medianas empresas. La adquisición de una estructura de TI propia que incluya servidores es complicado, pues exige una importante inversión económica, además de un servicio de mantenimiento constante, lo que requiere un personal especializado. Asimismo, en el mejor de los casos, el data center crece con la empresa, aunque esto no significa que lo haga de acuerdo con los recursos requeridos. En lugar de ello se va comprando hardware en ciclos predeterminados, estimando la demanda en un futuro. Todo ello supone una adquisición de recursos mayor a la que necesita realmente.
Junto a la escalabilidad, el cloud computing ofrece otras ventajas. Además, las granjas de servidores profesionales, como las utilizadas por los proveedores de cloud computing, suelen contar con una mejor protección de la que se podría conseguir localmente, pues el personal de seguridad evita el acceso de terceros, los técnicos protegen los servidores de ataques digitales y los expertos en protección garantizan que los datos no se dañen o se destruyan. A ello se añade que algunos proveedores de cloud computing realizan copias de seguridad obligatorias.
Pero estos sistemas también presentan inconvenientes, por lo que muchas empresas siguen reacias a implantarlos. Para algunas empresas, la falta de adaptación es uno de los motivos para rechazar su implementación, pues se crea una dependencia de las configuraciones de los diferentes proveedores. Además de que, si el proveedor por algún motivo deja de ofrecer sus servicios, la empresa se encuentra ante un problema real. A todo esto hay que añadir la necesidad de contar con una conexión estable a Internet, pues de interrumpirse con frecuencia o ser muy lenta, el trabajo no es efectivo.
A pesar de todo, la protección de datos es probablemente el tema que suscite una reticencia mayor: si bien es cierto que los datos están protegidos en el espacio de almacenamiento, realizar una transmisión a través de Internet representa siempre un riesgo. Otro de los problemas tiene que ver con la localización del data center. Si, por ejemplo, el data center se encuentra en EE. UU., las empresas están obligadas por ley a revelar los datos a las autoridades estadounidenses si así se requiere. Dado que las empresas que usan la computación en la nube tratan a menudo con datos confidenciales de terceros, suelen ver con cierto escepticismo este tema.
Ventajas del cloud computing
- Sin compromiso de capital
- Soluciones escalables
- No requiere personal especializado
- Mantenimiento y la protección de los centros de datos están asegurados
Desventajas del cloud computing
- Requiere conexión a Internet rápida y estable
- Consideraciones ante las políticas de protección de datos
- Dependencia del proveedor
- La transmisión conlleva riesgos de seguridad
- Los precios reducidos conducen a menudo a recurrir a más recursos de los que se necesitan
Historia del cloud computing
Al contrario de lo que se pueda pensar, la interconexión de terminales con el fin de ofrecer un mayor espacio de almacenamiento y potencia de cálculo a más usuarios no es un descubrimiento nuevo. Ya en los años 1950 la aparición de los mainframes marcaba el inicio de lo que hoy se conoce como cloud computing. Como mainframe se entendía a una computadora central a la que los usuarios podían conectarse desde diferentes terminales dentro de una misma organización (ya fueran empresas o universidades), permitiéndoles utilizar sus capacidades. Sin embargo, en sus inicios los usuarios tenían que compartir el tiempo, esto es, reservar un tiempo de computación durante el que se podía usar los servicios de mainframe.
En la décadas siguientes se desarrolló la virtualización , gracias a lo cual se podían utilizar instancias de cálculo abstractas, completamente virtuales. Con el descubrimiento de Internet todo el mundo empezó a tener acceso a estos entornos virtualizados y finalmente su puesta en venta en los años noventa llevó a que estos modelos estuviesen disponibles para las grandes masas.
A partir de entonces la nube como concepto empezó a ganar popularidad, aunque realmente no fue hasta el nuevo milenio cuando las empresas y los particulares empezaron a prestar atención a este tipo de tecnología. Las primeras ofertas de cloud computing se trataban de servicios individuales, tales como espacio de almacenamiento para el intercambio de datos o las hojas de Google con las que varios usuarios pueden trabajar en un mismo documento de forma simultánea. Al mismo tiempo, Amazon empezó a poner a disposición de los usuarios su amplia oferta de servidores. La plataforma Amazon Web Services (AWS) permite a otras empresas utilizar la infraestructura del gigante del eCommerce y ejecutar en ella los programas.
La computación en la nube es ahora parte del día a día de numerosas personas. La mayoría de teléfonos móviles y, más concretamente, el Internet de las Cosas, está en contacto constante con la nube. Por ejemplo, cuando los usuarios hacen una foto, los móviles la suben directamente a la nube de Google o Apple, de modo que se puede acceder a la imagen desde otros dispositivos.