Planificación de recuento de máquinas virtuales
Cuando se trata de averiguar cuántas máquinas virtuales debe planificar en un solo host, en realidad no hay reglas generales realmente buenas. De hecho, solo hay uno, y solo es bueno:
Los recuentos de máquinas virtuales generalmente están limitados por RAM, excepto cuando no lo están.
Lo cual no es terriblemente útil. Si esas máquinas virtuales van a ejecutar aplicaciones con poca CPU, entonces su limitador se basará en la RAM. Cada plataforma VM tiene sus propias capacidades para suscribir en exceso la RAM, por lo que no es tan fácil como TOTAL_RAM / Per-VM-RAM = MachineCount, pero ese número es un buen elemento de planificación.
Pero, ¿qué sucede si sus máquinas virtuales están haciendo otras cosas además de la escasez de paquetes con poca CPU?
Los recuentos de máquinas virtuales están limitados por siete recursos discretos disponibles para la máquina host:
- Hypervisor VMware, Xen, HyperV, KVM, lo que sea. Cada uno tiene sus propias características de impacto de conteo. Algunos son muy buenos en la deduplicación de páginas de memoria, otros no tanto. Algunos no permiten la suscripción excesiva de la capacidad de la CPU, otros sí.
- Velocidad del núcleo de la CPU Esto limita el rendimiento máximo de un solo subproceso que una VM podrá ejecutar. 36 núcleos de una CPU de 1.8 GHz pueden ser 64.8 GHz de CPU en un host, pero ningún hilo único funcionará más rápido que 1.8 GHz.
- CPU Core Count Esto, con velocidad de núcleo, describe el techo del rendimiento máximo de CPU que puede experimentar.
- RAM del sistema Como se describió anteriormente, esto limita la cantidad de máquinas virtuales que puede ejecutar. Ciertos hipervisores son mejores que otros en cosas como la deduplicación de páginas de memoria, por lo que si está ejecutando 100 máquinas virtuales idénticas, puede empaquetar mucho más en estos sistemas de deduplicación que si estuviera ejecutando 100 máquinas virtuales completamente diferentes.
- Tamaño del disco Cada imagen del sistema operativo ocupa una cierta cantidad de espacio. Necesita suficiente espacio para almacenarlo todo. Por lo tanto, el tamaño del disco pone un límite superior en la cantidad de máquinas virtuales que puede alojar.
- Ancho de banda de E / S El disco subyacente a las máquinas virtuales tiene un máximo de cuántas E / S por segundo puede manejar. Si le arrojas demasiado, los sistemas se estancarán esperando que se complete la E / S. Esto pone un límite superior en la cantidad de máquinas virtuales que consumen E / S que puede ejecutar.
- Ancho de banda de red Para las máquinas virtuales que usan redes, el ancho de banda de red disponible pondrá un límite a la cantidad de máquinas virtuales que puede ejecutar en un host determinado.
Todo esto puede ser lo que te hace tropezar, todo depende de lo que estés haciendo con tus máquinas virtuales. Algunas cosas para recordar:
- No existe un sistema genérico.
- No existe tal cosa como un servidor web genérico , ya que el código de la aplicación puede ejecutarse desde el estilo CDN de apenas movimiento de aguja hasta grandes y profundos elementos como la transcodificación de video.
- No existe un servidor de base de datos genérico . Estos pueden ejecutarse desde sistemas pequeños utilizados solo para el seguimiento del estado de la sesión, hasta sistemas muy grandes.
Para determinar cuántas máquinas virtuales puede empaquetar en un sistema host, necesita saber cómo funcionan sus sistemas y qué requieren para funcionar bien. Una vez que sepa eso, puede hacer la planificación del conteo. ¡Y mejor aún, descubra cuán fornido necesita hacer sus sistemas host!