El balloon-driver permite ceder memoria desde las máquinas virtuales al VMkernel para que este, pueda asignar dicha memoria a otras máquinas virtuales más necesitadas de memoria RAM.
Este mecanismo de compartición de memoria – balloon driver – también es conocido como vmmenctl. Cuando una maquina virtual necesita “ceder” parte de su memoria a otras maquinas virtuales, es el sistema operativo guest el que decide que páginas de memoria serán decidas ya que este conoce mejor las páginas de memoria que fueron accedidas en última instancia.
El sistema operativo guest dentro de la maquina virtual no es “consciente” de la comunicación que existe entre el mecanismo del balloon-driver y el VMkernel. No obstante, el sistema operativo guest es consciente de que el balloon-driver (vmmenctl) ha sido instalado, aunque no conoce cuál es el propósito final de dicho driver.
Así, cuando la memoria física del servidor ESX/ESXi escasea, el VMkernel elige una maquina virtual a la cual reclamara memoria RAM.
Por defecto, el VMkernel puede reclamar hasta un 65% de la memoria virtual de las maquinas virtuales durante el proceso de ballooning, siempre que estas maquinas virtuales no tengan memoria virtual reservada, en cuyo caso esta no podrá ser reclamada por el VMkernel si esta en uso.
El parámetro avanzado del VMkernel que controla cuanta memoria puede ser reclamada por esta técnica de ballooning es Mem.CtlMaxPercent y puede ser configurado hasta un total del 75% de la memoria virtual de las maquinas virtuales.
Para poder usar este mecanismo de compartición de memoria, es necesario tener instaladas las VMware tools en la máquina virtual, ya que de no tenerlas instaladas, la maquina virtual no podría usar esta técnica.
Un uso excesivo de actividad de balloon driver entre las máquinas virtuales y el VMkernel, seguido de una actividad “alta” del VMkernel swap, podría indicar que el servidor físico necesita más memoria física. Por consiguiente, el componente de memoria RAM física del servidor ESX/ESXi, podría contener un cuello de botella.
Hasta la proxima semana con un nuevo truco de VMware – mejor dicho -, hasta el próximo año.
El blog de Virtualización te desea un propero año nuevo
![]() |
|
Los lectores que leyeron este post, también leyeron:






















Excelente artículo y mejor explicado… no sabía de la existencia de ésta característica.
Hola,
)
respecto a esto. ¿Como selecciona el VMKernel las máquinas virtuales para lanzar el ballon? No veo mucha información al respecto (o no se buscarla) pero no me cuadra que las máquinas sean elegidas al azar. Entiendo que deberían ser las vms con menos memoria activa o algo parecido porque de otra manera las consecuencias pueden ser aun peor que el remedio.
¿Puedes orientarme por favor?
Muchas gracias, un blog fantástico
Muy buena pregunta Mcanseco,
El VMkernel sabe que VM tiene menos active guest memory y empieza por estas. Asimismo el driver de ballooning dentro de la VM tiene a su vez inteligencia, en cuanto a que usa las paginas de memoria mas antiguas para paginar a disco.
Espero haberte aclarado la duda.
rgds,
J.