header_conceptos
Conceptos > Lo que todo experto debe saber sobre la computación en la nube

Computación en la nube: todo lo que un experto debe saber

Nube hecha de código binario esparce números sobre un smartphone con aplicaciones

 

La computación en la nube, o cloud computing, cada vez se integra más a las tareas cotidianas de las personas. 

Gracias a ella, podemos llenar nuestra bandeja de entrada con 500 mails, procrastinar todo el fin de semana en Netflix o guardar en Google Drive las toneladas de selfis que nos tomamos a diario.

Como una agrupación enorme de agua, la nube almacena una cantidad gigante de recursos alojados en diferentes servidores alrededor del mundo. Así como la lluvia se dispersa en la superficie terrestre, la información que se concentra en la nube se distribuye a través de Internet. De ahí su nombre. 

Pero no solo los usuarios aprovechan estas ventajas. También las empresas se están beneficiando de este modelo de prestación de servicios tecnológicos. 

Debido a su flexibilidad, a su escalabilidad y a su modelo de pago por consumo, la computación en la nube ha permitido que las empresas desplieguen productos y servicios digitales sin necesidad de preocuparse por la infraestructura física.

Esto les ha ayudado a ahorrar costos a largo plazo y a desarrollar aplicaciones o actualizaciones de manera rápida.

Inicios de la computación en la nube

Al contrario de lo que muchos piensan, la computación en la nube no es una novedad. La historia de la nube se remonta a mediados del siglo XX, en plena Guerra Fría

En ese entonces, Estados Unidos y la Unión Soviética estaban compitiendo por llegar al espacio. El primer golpe lo dieron los soviéticos con el lanzamiento del satélite artificial Sputnik. Por supuesto, la reacción del gobierno estadounidense no tardó en llegar.  

En febrero de 1958 se fundó la Agencia de Proyectos Avanzados de Investigación (Arpa), adscrita al Departamento de Defensa de los Estados Unidos. Su objetivo principal, aventajar tecnológicamente al enemigo. 

Ante la amenaza de un posible ataque nuclear de los soviéticos, uno de los desafíos de Arpa consistía en crear un sistema de comunicación descentralizado sin una base de operaciones fija, de tal forma que no pudiera ser atacado o destruido. 

En el transcurso de varios años se desarrolló el Arpanet. Aunque en principio fue concebida como una solución militar, terminó absorbiendo el ideal utópico de sus creadores. 

Tanto Robnett Licklider como Ivan Sutherland y Robert Taylor, directores del proyecto, concibieron un sistema en red que les permitiera a las personas acceder y compartir información desde cualquier lugar.  

Procesador-de-mensajes-Arpanet

Así fue como en medio del conflicto entre dos potencias comenzó la idea de descentralizar los recursos de cómputo y almacenamiento para distribuirlos alrededor del mundo. 

Sin embargo, los avances tecnológicos de la época no eran suficientes para masificar la propuesta del Arpanet. Eso solo cambió unas cuantas décadas después con la aparición de la World Wide Web

A comienzos de los años noventa, Tim Berners-Lee comenzó a darle forma a la Internet como hoy la conocemos. Su idea se basaba en un sistema que facilitaba la comunicación entre navegadores y servidores. 

El desarrollo de Berners-Lee dio como resultado una herramienta de libre acceso, la Internet, y el lanzamiento del primer servidor. 

A medida que la nueva red se iba expandiendo, aumentó también la preocupación por la seguridad de las comunicaciones que circulaban por ella de forma pública y abierta.

Con el propósito de crear extensiones seguras que solucionaran ese problema, a mediados de los noventa aparecieron las primeras redes privadas virtuales (VPN). A través de ellas, las personas podían acceder de forma remota a la red de una organización por medio de una conexión privada.

En un principio, el símbolo de la nube se usó para representar únicamente esas redes privadas virtuales. Así se demarcaba la distancia entre las responsabilidades que asumía el proveedor y el alcance del usuario. 

Después, el concepto de nube se extendió asimismo a los servidores que recibían peticiones remotas. 

Solo fue cuestión de tiempo para que se desarrollaran entornos informáticos virtuales que permitieran ejecutar aplicaciones utilizando recursos en la nube. 

En el 2006 se lanzó el Amazon EC2, un servicio que ofrece capacidad informática en la nube para desarrollar aplicaciones.

Desde entonces, la computación en la nube ha abierto muchas más posibilidades. Ahora podemos encontrar en el mercado soluciones desarrolladas por gigantes informáticos como Google, Amazon o Microsoft. 

Por eso, este tipo de servicios se ha expandido en todas las industrias que requieren acceder a información o desplegar soluciones tecnológicas de forma eficaz.

Servicios que se pueden desplegar en la nube 

Después de haber conocido los orígenes de la computación en la nube, tal vez te estás preguntando qué ¿@$&0 se puede hacer en ella.

Pues bien, la nube no solo sirve para almacenar grandes cantidades de datos. Además, tiene diversas aplicaciones. Aquí te contamos algunas de ellas.

Cómputo 

Los servicios de cómputo en la nube soportan la capa de procesamiento de las aplicaciones. 

En otras palabras, el cómputo en la nube permite desplegar aplicaciones sin tener que preocuparse por la disponibilidad de un servidor.

El usuario solo tiene que configurar la cantidad de memoria que va a ocupar y los núcleos de procesamiento. 

Almacenamiento

Este es el recurso más conocido por todos. La nube proporciona un espacio para almacenar grandes cantidades de información. 

Incluso los maratones de series que ves en Netflix son posibles gracias a que esta compañía cuenta con miles de servidores y terabytes de almacenamiento en la nube. Esto facilita el acceso a la información inmediata y con una alta tolerancia a fallos.

Networking

Esta solución se refiere al uso de algunos recursos y servicios de red. Así se garantiza un acceso confiable y seguro a las aplicaciones que se utilizan diariamente en una organización.

En el siguiente video te profundizamos más acerca de los usos prácticos de la computación en la nube.

 

Ventajas de la computación en la nube

Antes del auge de la computación en la nube, la infraestructura era administrada por cada empresa. Esto implicaba un esfuerzo económico y logístico enorme para monitorear los servidores y mantener los sistemas a punto. 

Sin embargo, hoy en día es posible ahorrar costos, acelerar el ritmo de los proyectos y agilizar la transformación digital de las empresas gracias a las ventajas que ofrece la computación en la nube:

Menor inversión inicial

Cuando comienza un proyecto de tecnología, lo primero que se debe decidir es la infraestructura tecnológica en la que se va a desarrollar, si física o en la nube.

En la nube no es necesario comprar máquinas, pues el cloud computing provee servidores fáciles de configurar en cuestión de minutos. Por tanto, probar una aplicación o desplegarla de forma productiva es más fácil gracias a estas soluciones.

Adicionalmente, la computación en la nube funciona con un modelo de cobro por consumo. De esa forma la inversión se determina por el uso que se haga de la plataforma y no por cobros de suscripción. Así se evitan los costos de electricidad o mantenimiento de equipos, que son ineludibles cuando contamos con una infraestructura física.

Agilidad y rapidez

La computación en la nube facilita el acceso a diferentes tecnologías mucho más rápido que con una solución on premise.

Por ejemplo, con un solo clic, en la nube se puede tener acceso a una base de datos Oracle, Redis o Mongo sin necesidad de una instalación completa del producto.

Incluso existen servicios de inteligencia artificial, procesamiento de lenguaje natural o de biometría en la nube. Estas soluciones de cloud computing nos evitan grandes desarrollos desde cero y nos facilitan la implementación de servicios digitales en corto tiempo.

Flexibilidad

A medida que ejecutamos una estrategia de transformación digital, seguramente vamos a ir cambiando los productos para obtener retroalimentación temprana de los clientes. Esto presenta un desafío tecnológico para cualquier organización, pues exige introducir pequeñas modificaciones en el producto, ya sea para mejorarlo o reemplazarlo de forma rápida, y con el menor impacto posible.

Programadores-usan-servicio-en-la-nube-en-un-laptop

En este caso, la computación en la nube ayuda a impulsar este tipo de cambios. Como lo mencionamos anteriormente, la nube tiene la capacidad de desplegar servicios de forma casi inmediata. Esto nos permite reasignar recursos ininterrumpidamente sin incurrir en cobros adicionales.

Si fuéramos a hacer lo mismo usando tecnologías on premise, perderíamos tiempo y dinero haciendo los cambios necesarios para adaptarnos a las nuevas demandas del usuario.

Por esos motivos, el cloud computing facilita la la transformación digital de una empresa rápidamente. Hoy en día se ha convertido en un recurso infaltable, debido a la gran cantidad de  servicios que se ofrecen en el mercado.

Para que conozcas más sobre las ventajas de la computación en la nube, en el siguiente pódcast te explicamos cómo el cloud computing ha ayudado a la democratización de las tecnologías emergentes.

Aplicaciones de la computación en la nube

Una de las preguntas más comunes cuando se pretende migrar a la nube es cuáles aplicaciones se pueden ejecutar en ella. 

En realidad no existen restricciones en cuanto a las aplicaciones que se pueden correr en la nube. En teoría, se podrían ejecutar aplicaciones con arquitecturas tradicionales, aplicaciones de arquitecturas basadas en microservicios o en arquitecturas serverless

Usuario-utiliza-aplicaciones-en-la-nube-en-un-smartphone

Aplicaciones de arquitecturas tradicionales

En las aplicaciones de arquitectura tradicional, el despliegue se lleva a cabo en el sistema operativo y en algún servidor previamente instalado. 

En la actualidad existen servicios de máquinas virtuales que en minutos están disponibles con una capacidad de cómputo, memoria y almacenamiento configurable.  

De esa forma, migrar a la nube bajo esta arquitectura sería totalmente posible, sin tener que modificar la arquitectura base. 

Aplicaciones de arquitecturas basadas en microservicios

Un microservicio es un componente funcional e independiente de cualquier otro servicio. Por ejemplo, la arquitectura basada en contenedores. 

Cada contenedor posee unos recursos de hardware y de software. Estos no dependen del sistema operativo que se instaló en la máquina donde se corren. 

Estos contenedores se crean en múltiples plataformas. Docker es la más común. Asimismo, se pueden ejecutar y gestionar a gran escala por medio de Kubernetes

Podemos constatar, entonces, que la nube cuenta con los recursos suficientes para ejecutar aplicaciones basadas en microservicios. 

Por tanto, migrar a ellos es incluso más sencillo que con la arquitectura tradicional, gracias a que los contenedores agrupan las librerías y dependencias que se requieren para hacerlo. 

Aplicaciones de arquitecturas serverless

Las aplicaciones serverless son por definición hijas de la nube (serverless = sin servidor). 

En este caso, el proveedor es responsable de suministrar y gestionar los recursos de cómputo necesarios. Así, no hay que preocuparse por la demanda de usuarios que haya, pues esta será atendida 24/7.

Con las aplicaciones serverless, el desarrollador puede concentrarse únicamente en optimizar la aplicación, mientras que el proveedor garantiza el funcionamiento de la infraestructura.

Lo único que necesitan los usuarios para ejecutar soluciones bajo este modelo de arquitectura es el código fuente de sus aplicaciones. 

Existen distintos ejemplos de modelo serverless en el portafolio de AWS, como por ejemplo las funciones Lambda o las bases de datos DynamoDB.


Modelos de servicio de cloud computing

Existen múltiples proveedores de nube con soluciones distintas. Aún así, hay tres modelos de servicio que se ofrecen en el mercado. 

Ingeniero diseña la arquitectura de una aplicación en la nube

Infrastructure as a Service (IaaS) 

Son aquellos servicios en los que el usuario administra un sistema operativo y todas las plataformas que despliegue sobre él. El proveedor de nube, por su parte, es quien debe suministrar la infraestructura sobre la que se ejecuta el sistema operativo.

Platform as a Service (PaaS) 

En estos servicios, se proporciona una plataforma que les permite a los usuarios desarrollar, ejecutar y gestionar aplicaciones sin que tengan que lidiar con la complejidad de construir o mantener la infraestrucutra necesaria para desarrollarlas.

Software as a Service (SaaS)

En el modelo SaaS, el proveedor ofrece aplicaciones que pueden ser consumidas a través de Internet. Por medio de un modelo de pago por uso, el cliente utiliza el software, pero no administra las características individuales de la aplicación, excepto las configuraciones.


¿Y cuáles son los tipos de nube?

Existen diferentes tipos de nube con los cuales se puede trabajar:

Nube pública

En las nubes públicas, los servidores y el almacenamiento pertenecen a un tercero que disponibiliza los recursos a múltiples clientes. Esto quiere decir que los recursos son compartidos y se paga solo por lo que se usa. Algunos de los servicios disponibles de nube pública son Microsoft AzureGoogle Cloud o Amazon Web Services.

Nube privada

Son servicios informáticos que están disponibles únicamente para una red privada de usuarios. Esto garantiza un mayor control y escalabilidad. Por lo tanto, la nube privada es más segura y apta para almacenar datos sensibles o información confidencial.

Nube híbrida

Es la mezcla de los entornos de nube pública y privada. Este grupo de recursos se compone de diferentes hardwares que disponibilizan diversos proveedores y que se coordinan a través de una API. Este tipo de nube es mucho más flexible que las dos anteriores, pues el usuario puede escoger en cada caso dónde almacenar la información, si en una nube pública o en una privada local.

Ebook Computación en la nube