Computación en la nube: ¿Qué es, los diferentes modelos y para qué sirve?
Si has leído algunos de mis textos en Medium, sabes que una de mis pasiones es descomplicar los términos técnicos. Hoy tenemos uno de mis temas favoritos y con el que trabajo en mi día a día, en la empresa y también con mis clientes: Computación en la Nube o Cloud Computing.
Según el Instituto Nacional de Estándares y Tecnología (NIST), la Computación en Nube es, en traducción libre, "un modelo que permite el acceso a la red de forma ubicua, cómoda y bajo demanda a un conjunto compartido de recursos informáticos configurables (por ejemplo, redes, servidores, almacenamiento, aplicaciones y servicios) que pueden ser rápidamente aprovisionados y liberados con un mínimo esfuerzo de gestión o interacción del proveedor de servicios".
En términos más sencillos, el término Cloud Computing o Computación en la Nube es la disponibilidad de recursos informáticos, ya sean de almacenamiento (discos), de potencia de cálculo (CPUs) o de memoria (RAM), a través de Internet para clientes finales (como usted y yo) o grandes organizaciones (como Netflix o Spotify).
El uso de recursos en la nube aporta numerosas ventajas a las empresas, como:
- Rapidez y agilidad: Disponer de todos los recursos, en cualquier momento, accesibles desde cualquier dispositivo y por cualquier usuario de la organización hace que los usuarios de la nube aprovisionen los recursos con mayor rapidez, lo que conlleva una mayor rapidez en la comercialización de sus productos y aplicaciones. Esto los convierte en una ventaja competitiva a largo plazo en sus mercados.
- Alta Disponibilidad (High Availability): estos recursos que mencioné estarán siempre disponibles para los clientes porque están distribuidos en varias regiones, países y continentes.
- Alcance global: Las empresas con mercados en diferentes países se benefician al aprovechar los recursos de la nube que están disponibles en múltiples ubicaciones. Por ejemplo, los servicios de computación y almacenamiento de Microsoft Azure están disponibles en varios países. Cuando se accede a estos recursos en Europa o Japón, la latencia es menor ya que los recursos están físicamente cerca de los usuarios, lo que nos lleva al tercer beneficio.
- Recuperación de desastres (Disaster Recovery, DR): Como comenté en este artículo, la recuperación de desastres tiene como objetivo "garantizar que el negocio no se interrumpa en el ámbito de las tecnologías de la información (TI), ocupándose del centro de datos, los servidores, los ordenadores portátiles, las bases de datos y las aplicaciones, entre otros". Dado que estos recursos están repartidos por varios continentes, como he mencionado antes, una estrategia de RD resistente es uno de los beneficios de la implantación de la nube en las empresas.
Las cinco características de la nube
El Instituto Nacional de Normas y Tecnología también define las cinco características que hacen que una infraestructura se considere nube. Lo son:
- Autoservicio: Como en el catálogo de un restaurante, el usuario tiene acceso, en la palma de su mano, a diversos servicios y recursos informáticos para su disfrute, ya sea memoria, almacenamiento y procesamiento. Otros servicios disponibles en la nube son base de datos, servicios de machine learning, entre otros. Ve en este enlace algunos ejemplos de servicios en la nube que ofrece Google.
- Rápida elasticidad: Al utilizar los servicios en la nube, los clientes pueden aumentar o disminuir los recursos según cambien las demandas del día, la semana o el mes. Un ejemplo clásico es el Viernes Negro, cuando los sitios de comercio electrónico reciben un tráfico inusualmente alto en comparación con el resto del año. En este periodo, es necesario aumentar los recursos computacionales, pero no serán necesarios después de unos días. De este modo, la empresa paga sólo por el periodo en el que utiliza los recursos, lo que hace que su consumo sea más eficiente.
- Fondo de recursos: los servicios en la nube proporcionan un depósito de recursos para que el cliente se beneficie de ellos, como se ha mencionado anteriormente: memoria, almacenamiento, etc. Éstos forman parte de un pool (o repositorio) eficiente que está a disposición del cliente.
- Amplio acceso a la red: Los recursos de la nube están disponibles en múltiples regiones, por lo que el amplio acceso a la red permite a los usuarios aprovechar una gran red a la que se puede acceder (en su mayoría) globalmente, en múltiples regiones, si sólo los usuarios tienen acceso a Internet. A la hora de construir una estrategia eficaz en la nube, el cliente debe tener en cuenta los requisitos de ancho de banda y latencia de la conexión para garantizar una buena experiencia de usuario.
- Servicio medido: En un entorno de nube, el cliente tiene acceso a las métricas de los servicios y recursos informáticos que se utilizan. Piensa en esta función como en la factura de tu teléfono móvil que describe el número de mensajes, llamadas y consumo de MB/GB utilizados ese mes. Es sencillo ver lo que has consumido durante ese periodo, ¿verdad? Con la nube es lo mismo. Sin embargo, las partidas están relacionadas con el consumo de la CPU, la memoria utilizada, el espacio consumido en los discos, etc.
Modelos de computación en nube
Al elegir una estrategia en la nube, una empresa puede optar por cuatro formas de implementación:
- Nube privada: En la que todos los servicios y recursos computacionales (memoria, CPU, redes y almacenamiento) residen en sus instalaciones y no se comparten recursos con otras empresas. La nube privada puede ser gestionada por la propia empresa o por un tercero contratado por la empresa.
- Nube pública: Todos los servicios y recursos informáticos están disponibles en un entorno virtual y se puede acceder a ellos a través de Internet. Los proveedores de nubes públicas más comunes son: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP) y Alibaba.
- Nube híbrida: Se compone de dos o más tipos de nube (por ejemplo, los datos y las aplicaciones de la empresa están en la nube privada, y otros están en la nube pública). En este modelo, es esencial que la empresa disponga de alguna forma de gestión, orquestación y portabilidad entre nubes para garantizar que la infraestructura ofrezca capacidades eficientes a sus usuarios.
- Estrategia multinube: Mientras que la nube híbrida se refiere a la coexistencia de dos tipos de nube, la estrategia multinube se refiere a 2 o más nubes, independientemente del tipo (por ejemplo, una empresa que utiliza servicios de Azure y AWS).
Para cada uno de los modelos de nube mencionados, se requiere la presencia de las 5 características citadas anteriormente.
Independientemente de si la empresa construye su propia infraestructura de nube privada, subcontrata su gestión o simplemente utiliza los servicios de la nube pública, necesita asegurarse de que cuenta con la estructura necesaria para alojar todos los recursos en un portal de acceso para los usuarios y con unas métricas de consumo definidas.
Y entonces, ¿conocías este término? ¿Qué te pareció?
¿Trabajas o está interesado en trabajar en este ámbito? Hablemos ;)