Memory ballooning is a memory management technique in which the host is provided with unused memory space of its virtual machines
(VM) and can use it for the guest virtual machines. As soon as a virtual machine runs out of memory, the server requests unused memory from other virtual machines and thus increases its own memory capacity
, which it makes available to the virtual machines. Virtual machines can increase their free memory capacity by swapping out rarely used data, for example on virtual machine disks (VMDK), and thus contribute to memory ballooning.
Ballooning is used to determine which pages are available and can be used for memory expansion. The process of ballooning is characterized on the one hand by inflating the memory, the inflate, in which memory capacity is added, and on the other hand by shrinking the memory by making free memory space available for the guest virtual machines.