Saltar a contenido

Computación en la Nube.

¿Qué entendemos por computación en la nube?

Hacer uso de infraestructura (almacenamiento, CPUS, RAM, ancho de banda, electricidad, refrigeración) y servicios (bases de datos, firewalls, servicios DNS, balanceadores, ...) de terceros y habitualmente pagando por uso.

Ventajas

💥 Escalabilidad: Si necesito ampliar o reducir cualquier componente lo puedo hacer a través de unos pocos clicks. Puedo incrementar/decrementar los recursos según mis necesidades: cantidad de servidores, balanceadores de carga, no estoy limitado por falta de espacio físico o por falta de stock al no haber previsto algún acontecimiento, etc.

💥 Centralizado: Se configura cualquier servicio, independientemente del tipo o de la localización desde la misma interfaz.

💥 Agilidad: Con una serie de clicks podemos levantar y configurar un servidor (No es necesario montarlo y cablearlo físicamente).

💥 Control de Coste: Se paga por uso del servicio, por ejemplo pagaremos dependiendo del uso que hagamos del ancho de banda, o del tiempo que esté la CPU encendida.

💥 Ahorro Inicial: Inversión inicial es menor al no tener que comprar el hardware y parte del software.

💥 Menor Mantenimiento: No debes destinar recursos de tu empresa al mantenimiento de la infraestructura: Temperatura del CPD, redundancia del sistema eléctrico, mantenimiento del cableado, electricidad, etc.

Desventajas

💥 Si no controlas bien tus servidores o si no diseñas una buena arquitectura en la nube el coste se puede disparar.

💥 Necesitas de gente con conocimientos específicos de la plataforma para un despliegue eficiente y adecuado.

💥 Los datos sensibles están almacenados en máquinas que realmente no son propiedad de la empresa, incluso puede que se encuentren en otro país y no se rijan por las mismas normativas, por ejemplo no es la misma normativa de protección de datos aquí que en USA.

Modelos y Servicios.

  • IaaS (Infraestructura como Servicio): Ofrece recursos físicos (hardware) accesibles desde Internet como servidores (RAM, Disco, CPU) además de la interconexión de red entre ellos. Por ello hablamos de que son recursos de infraestructura virtualizados.

  • PaaS (Plataforma como Servicio): Es un entorno completo para el desarrollo, la ejecución y gestión de aplicaciones (Desarrollo Software). Es decir, ya no solo estamos contratando el hardware si no que también nos gestionan el tener instalado un sistema operativo, un entorno de programación (IDE), las actualizaciones, los paquetes de programación necesarias, el despliegue de la base de datos, etc.

  • SaaS (Software como Servicio): Permite que el proveedor te despliegue y gestione (actualizaciones, corrección de errores, mantenimiento, ...) una aplicación a la cual los clientes acceden normalmente mediante web o una API. Son las aplicaciones basadas en la nube

Tipos de Nubes.

Nubes Públicas.

  • Son las más extendidas.

  • Los servidores son propiedad de terceros (Amazon -AWS, Microsoft - Azure, Google).

  • Se accede a dichos recursos a través de Internet (red pública).

Ejemplos

Amazon AWS

Microsoft Azure

Google Cloud

Nubes Privadas.

  • Todos los recursos están dedicados a un única organización/empresa, estos recursos pueden estar alojados en un datacenter de la empresa o de un tercero.

  • Se encuentran en una red privada.

  • Suelen pertenecer a grandes organizaciones (gobiernos, bancos, etc) con necesidades muy específicas sobre las cuales necesitan un control total.

Ventajas

💥 Mayor flexibilidad y control de los recursos. Al pertenecer a la empresa no se compartirán recursos con terceros, es decir, si levantamos un servicio en un servidor, sabes que todo los recursos del servidor están destinados a uno o varios servicios de la misma empresa, del cual además tenemos el control 100%.

💥 Mayor escalabilidad en cuanto a que no dependemos de las limitaciones de terceros. Esto siempre será bueno si nuestra organización tiene el poder económico muy grande.

Desventajas

💥 Mayor inversión inicial.

💥 Necesitas mucha más personal cualificado para el despliegue y mantenimiento de hardware/software.

Se pueden desplegar nubes privadas virtuales en nubes públicas.

Nubes Híbridas.

Son aquellas organizaciones cuya parte de su lógica de negocio se encuentra en una nube pública y parte en una nube privada.

MultiCloud.

Se habla de MultiCloud cuando una misma organización tiene servicios alojados en diferentes nubes públicas, por ejemplo en AWS y Azure.

Ventajas

💥 Puede aportar redundancia si hay algún problema con una de las nubes públicas.

💥 Puedes aprovecharte de las mejores innovaciones de una y otra.

💥 Puedes seleccionar los servicios más rentables económicamente de cada uno.

Desventajas

💥 Necesitas gente con conocimientos de más de una nube pública, lo que hace que la gestión pueda ser más complicada.

Resumen.

☁️ Tipo 💡 Idea principal 📌 Ejemplo
Nube pública Utiliza recursos de un proveedor cloud AWS
Nube privada Una organización dispone de su propia nube OpenStack
Nube híbrida Combino nube pública y privada CPD propio + AWS
Multicloud Utilizo varias nubes públicas AWS + Azure

OpenStack.

OpenStack es un software de código abierto que permite:

  • Crear y gestionar infraestructuras de nube privada y pública.

  • Proporciona herramientas para la gestión de recursos como computación, almacenamiento y redes, todo de manera escalable y flexible.

OpenStack es el software por debajo que permite:

💥 Generar las instancias de máquinas virtuales usando diferentes recursos (CPU, RAM, disco, ...) de servidores físicos.

💥 Manejar el almacenamiento asociado a cada máquina virtual.

💥 Crear redes virtuales para asociar e interconectar las máquinas entre ellas y a través de Internet cuando sea necesario.

💥 ...

Existen alternativas a OpenStack: VMware vSphere, Microsoft Azure Stack, Apache CloudStack o Proxmox VE