VMware Cloud Community
discussionsbyqe
Contributor
Contributor
Jump to solution

The guest with balloon driver can balloon itself ?

The guest with balloon driver can balloon itself ?

as the subject.

0 Kudos
1 Solution

Accepted Solutions
shishir08
Hot Shot
Hot Shot
Jump to solution

Yes whatever you have said is true.With the Virtualization technique inplace we always try to overcommit to 1.5x or 2X. Taking one example which will make this scenario much clearer.

Like you have a Host with 8GB of memory and you powered on four VMs each with 4GB which is 2X overcommitment.Now to achieve this overcommitment level VMkernel uses several Page reclaimation technique like :

Page sharing

Ballooning

Compression

and Swapping.

There may be a case when VM1 is in high memory pressure and VM2 is lightly loaded ,in that case Balloon driver will inflate in VM2 and pass on the memory address to VMkernel which in turn pass on those addresses to VM1 .Please remember VM is completely uinaware of all these transition.Once the need has been fulfilled  the VM2 balloon driver will deflate and reclaim its memory.

Please note that Balloon driver is nothing but a program which uses system call named as Malloc() to reserve the memory.

View solution in original post

0 Kudos
4 Replies
shishir08
Hot Shot
Hot Shot
Jump to solution

Balloon driver is something which will be present in every guest if VMware tool is installed.The Balloon driver present in the VM works on the direction of the VMkernel of the Host.Balloon driver keeps on polling to the host if the host is in need of memory.If the Host finds that  it is approaching towards hard state and is in need of memory then it reclaims the meory from the Guest through Balloon driver.With the Host VMkernel direction only Balloon driver will work.

discussionsbyqe
Contributor
Contributor
Jump to solution

Thanks for your answer,another related question about the balloon:

Assume there are only 2 vms(vm1 and vm2),stress the vm2,then the balloon of vm1 has inflate,after remove the pressure to the vm2,the balloon of vm1 will deflate automatically or not?

NOTE:Pls in detailed to answer the question as I encoutner sometimes automatically deflate,sometiems you need to stress the vm1 to let the balloon of vm1 to deflate.

0 Kudos
shishir08
Hot Shot
Hot Shot
Jump to solution

Yes whatever you have said is true.With the Virtualization technique inplace we always try to overcommit to 1.5x or 2X. Taking one example which will make this scenario much clearer.

Like you have a Host with 8GB of memory and you powered on four VMs each with 4GB which is 2X overcommitment.Now to achieve this overcommitment level VMkernel uses several Page reclaimation technique like :

Page sharing

Ballooning

Compression

and Swapping.

There may be a case when VM1 is in high memory pressure and VM2 is lightly loaded ,in that case Balloon driver will inflate in VM2 and pass on the memory address to VMkernel which in turn pass on those addresses to VM1 .Please remember VM is completely uinaware of all these transition.Once the need has been fulfilled  the VM2 balloon driver will deflate and reclaim its memory.

Please note that Balloon driver is nothing but a program which uses system call named as Malloc() to reserve the memory.

0 Kudos
sharninder
Enthusiast
Enthusiast
Jump to solution

yes the baloon driver works automatically and you don't have to do anything to invoke it. Essentially it's just a daemon that uses the malloc() system call to reserver memory and when it's got that memory, it releases it. It basically causes the guest to swap processes to disk and so when the drivers deflates, the guest is left with free useable RAM.