Hay dos formas de responder esto: una sobre el concepto y la tecnología y la segunda sobre la forma en que estas tecnologías se utilizan en el mundo real para resolver problemas similares.
1. Las tecnologías de alto nivel.
La virtualización consiste en tomar un dispositivo físico y dividirlo en partes más pequeñas que se puedan aprovisionar, compartir, mover, etc., haciendo que los recursos sean más eficientes y dinámicos.
- ¿Existe alguna herramienta que pueda proporcionar administración de costos para mi infraestructura de nube pública?
- ¿Por qué lo llaman poner datos en la nube?
- ¿Cómo se compara Google Cloud Datastore con otras bases de datos como MongoDB y Redis?
- ¿Cuáles son las formas generales en que se puede implementar una gestión de identidad (IAM) para la nube?
- ¿Cuál es el mejor instituto de capacitación en computación en la nube en kolkata con una ubicación del 100%?
La nube se trata de hacer que los recursos de TI (virtualizados generalmente) estén disponibles bajo demanda, con un modelo de pago por uso, accesible a través de una API (un programa de software puede acceder, crear, configurar, etc., recursos virtuales)
2. Acerca de cómo se usan para resolver problemas de TI
Si bien son similares en la tecnología que usan (la mayoría de las soluciones en la nube dependen en gran medida de la tecnología de virtualización), son dos soluciones a dos problemas diferentes
La virtualización se trata de la optimización de recursos. Los grandes departamentos de TI tenían cientos de aplicaciones que se ejecutaban en hardware antiguo, por lo que también tenían que administrar cientos de servidores antiguos. La virtualización sirvió como una aplicación Tetris, donde múltiples aplicaciones, a veces cientos, podrían ejecutarse en un servidor físico. Esto dio como resultado una reducción drástica en la cantidad de servidores físicos que deben administrarse, lo que resulta en ahorros en el rendimiento, el costo y el consumo de energía, además de ahorrar tiempo y esfuerzo al mantener en funcionamiento estos servidores antiguos.
La virtualización ha evolucionado desde entonces, permitiendo réplicas de máquinas virtuales, moviendo máquinas a través de servidores, etc. Sin embargo, el concepto fundamental sigue siendo el mismo: los administradores mueven aplicaciones entre servidores en este juego de Tetris.
Con la nube, la infraestructura es completamente transparente. Una nube crea un conjunto de recursos de TI (potencia informática, almacenamiento, redes, etc.) y la pone a disposición de los clientes a pedido. Un usuario solicita recursos que se aprovisionan de inmediato y el usuario no tiene un concepto del hardware subyacente que no sea la capacidad asignada a él o ella.
El verdadero poder de la nube proviene de la automatización hecha posible mediante la creación de aplicaciones que son lo suficientemente inteligentes como para controlar los recursos de infraestructura que necesitan a través de una API.
Con la virtualización, una aplicación que necesita escalamiento generalmente obtiene un ladrillo de tetris más grande: el servidor virtual se hace más grande (pero aún está limitado a la capacidad total del servidor físico).
Con la nube, una aplicación puede escalar verticalmente cambiando el tamaño del servidor a uno más grande, pero también puede escalar horizontalmente, creando más servidores en un clúster según lo requiera la aplicación, en múltiples geografías, casi en tiempo real. La aplicación puede destruir servidores que ya no son necesarios. Si un servicio dentro de la aplicación no responde, la aplicación puede finalizar el servidor, crear uno nuevo, instalar el software que ejecuta el servidor y continuar.
No sé si hice justicia, pero es bastante increíble una vez que entiendes las diferencias prácticas.
Aquí hay una publicación de un colega que también puede ayudar: En los parques eólicos y la energía nuclear: las diferencias entre OpenStack y la virtualización – El blog oficial de Rackspace