vCPU: ¿qué es una CPU virtual?
Las vCPU son versiones virtualizadas de CPU físicas y juegan un papel fundamental en el cloud computing. Entre las ventajas de las unidades de procesamiento virtualizadas destaca su excelente escalabilidad, lo que las convierte en un componente clave del cloud hosting, por ejemplo.
¿Qué es una vCPU?
Una vCPU (Virtual Central Processing Unit) es una versión virtualizada de una CPU física. En otras palabras, las vCPU son las unidades centrales de procesamiento de las máquinas virtuales (VM) y entornos en la nube. Los procesadores multinúcleo (multicore) actuales no solo pueden utilizarse como una única vCPU, sino como base para varias CPU virtuales. La cantidad de vCPU potenciales no está vinculada al número de núcleos e hilos (ver multithreading), sino que depende del resultado de esta fórmula:
(hilos x núcleos) x CPU física = número de vCPU
Técnicamente, las vCPU son implementaciones de software que el sistema operativo respectivo percibe como núcleos de procesador reales. Cada máquina virtual requiere al menos una vCPU. Sin embargo, según el escenario de aplicación, también se pueden asignar varias unidades centrales de procesamiento virtuales si los trabajos en ejecución lo requieren.
¿Quieres profundizar en este tema? Nuestros artículos sobre virtualización y virtualización de servidores ofrecen información adicional sobre las características y posibilidades de los recursos informáticos virtuales.
¿Qué ventajas tienen las vCPU?
Las vCPU ofrecen ventajas importantes en comparación con las CPU físicas, entre las que destacan:
- mayor escalabilidad
- mayor eficacia
- mayor flexibilidad
- menores costes
La principal ventaja de la virtualización es su excelente escalabilidad de recursos de hardware. Las vCPU en una máquina virtual pueden provenir de varios hosts físicos diferentes, lo que permite una fácil escalabilidad del rendimiento del procesador a medida que aumenta la carga de trabajo.
Cuando las vCPU dejan de ser necesarias, se pueden reasignar fácilmente a otras máquinas virtuales. Dicha flexibilidad es especialmente valiosa para proveedores de entornos de hosting, ya que les permite compartir la infraestructura subyacente entre sus clientes de forma eficiente. Además, como usuario, te beneficias de la capacidad de ajustar de forma flexible la vCPU que necesitas. Al no haber una configuración fija de hardware, es más fácil aumentar o reducir la potencia del procesador conforme a tus necesidades, tanto en soluciones como un servidor cloud o un VPS.
La eficiencia y escalabilidad de las vCPU ofrecen ventajas en lo que respecta a los costes. En un único sistema host, es posible ejecutar varios sistemas operativos y el software de aplicación correspondiente, optimizando la potencia de cálculo disponible y, en muchos casos, ahorrando hardware adicional.
Descubre más diferencias entre las unidades centrales de procesamiento virtualizadas y físicas en nuestro artículo “CPU vs. vCPU”.
¿Cuándo se utilizan las vCPU?
Las vCPU son esenciales para el cloud computing. Se utilizan en todas las áreas donde se proporciona hardware y software en la nube, como en el almacenamiento en la nube, el hosting de servidores y soluciones como Windows 365. El número necesario de vCPU varía según la carga de trabajo, al igual que en el caso de las unidades de procesamiento físicas. Normalmente, son suficientes una o dos vCPU. En cambio, los requisitos son mayores para cargas de trabajo más exigentes, como servidores de bases de datos, correo electrónico o juegos.
Las plataformas de contenedores, como Docker, también se basan en la tecnología de virtualización de vCPU. A diferencia de las máquinas virtuales, los contenedores no virtualizan sistemas completos, sino aplicaciones individuales.
¿Cómo se calcula el número necesario de vCPU?
Para aprovechar al máximo las ventajas, el gran desafío en un entorno virtualizado es proporcionar suficientes vCPU sin desperdiciar potencia de cálculo. Puedes basarte en los requisitos de instalación de hardware físico para determinar la cantidad de vCPU que necesitas: por ejemplo, si el software (incluyendo el sistema operativo) requiere ocho núcleos físicos, debes asignar ocho vCPU a la máquina virtual.
Si los requisitos aumentan más adelante porque ejecutas más aplicaciones en paralelo o tu proyecto se vuelve más complejo, simplemente debes aumentar el número de vCPU. Lo mismo se aplica en el caso contrario, es decir, cuando los requisitos disminuyen y, por lo tanto, necesitas menos capacidad de procesamiento.
Para cargas de trabajo intensivas en procesamiento, es crucial asignar vCPU de diferentes CPU físicas. Por ejemplo, si dispones de hardware con una CPU de doble núcleo (2 núcleos físicos y 4 procesadores lógicos) como punto de partida, deberías dividir los cuatro procesadores lógicos de la siguiente manera para mejorar el rendimiento:
- Asigna los procesadores lógicos 0 y 2 a la primera máquina virtual, que corresponde al primer núcleo de la Dual Core CPU física. Los recursos asignados a la primera máquina virtual deberían ser suficientes para poder ejecutar la carga de trabajo requerida.
- Asimismo, puedes asignar los procesadores lógicos 1 y 3, es decir, el segundo núcleo de la Dual Core CPU física, a otras cargas de trabajo que no requieran tantos recursos, como un servidor DNS.
Descubre más sobre procesadores y unidades centrales de procesamiento (CPU) en los siguientes artículos: