November 19, 2019
In modern virtualized data storage architectures, Memory Ballooning plays a vital role.Because memory resources are required for both physical and virtual assets, memory needs to be declared, freed, and reclaimed in a variety of ways.Memory balloon is a common technique used by virtualization technology, which USES virtual machine memory.In this article, we will explain the memory balloon definition and concepts, including the technology's relationship to the virtualization hypervisor
In recent years, IT professionals have become accustomed to one of the basic concepts of cloud computing and virtualization, namely elasticity or automatic scaling.That is, services and resources scale based on the need to accomplish a given task or meet specific availability requirements.Memory balloons are not exactly the same as autoflex, but conceptually they can be thought of as similar.Memory balloons are designed to allow virtual machine memory to expand -- if needed.With memory balloon technology, the system can provide more memory for specific virtual machines when needed.
The concept and method of memory balloon are specific to virtual machine memory and VMware memory use case and VMware memory performance.Other hypervisors, including Microsoft's hyper-v and the open source KVM project, have similar processes that provide virtual balloons for hypervisors' memory.Memory balloons work in a virtualized hypervisor.The hypervisor definition can be summarized as follows: a hypervisor is a technology that enables virtual machines to run and provides a virtual abstraction layer for software
There are many hypervisor technologies in widespread use, including VMware ESXi, Microsoft hyper-v, and open source Xen and KVM technologies.Each hypervisor can be used to enable guest virtual machines that run operating systems and applications in an abstract virtual manner.The hypervisor USES drivers across running guest virtual machines to address different requirements, including resource constraints such as virtual CPU, disk space, and memory.The balloon driver runs across virtual machines and enables the hypervisor to reallocate memory from one virtual machine to another
Understanding how hypervisors work is intrinsically related to understanding memory balloons.The hypervisor abstracts limited system resources and assigns them to running virtual machine processes.· host physical memory.Subordinate servers or cloud platforms have a certain amount of installed system memory, indicating the absolute amount of available memory.Physical memory of the client.The hypervisor is allocated to the host a certain amount of physical memory to provide resources for the running virtual machine.Client physical memory is the maximum amount of memory available to the hypervisor.
Virtual memory of the client.The hypervisor allocates a given amount of total memory resources as virtual memory to the running client virtual machine.In the memory balloon model, if a virtual machine has 8 GB of guest virtual memory allocated to it and it is not using that memory, a portion of RAM can be reallocated to another virtual machine that is running and needs additional memory.
The balloon driver tracks memory allocation from one virtual machine to another.The main goal of the memory balloon is to enable the virtual machine to obtain the memory needed to meet the peak demand of a particular process or application.This can happen even if it doesn't usually allocate enough memory.
Why are memory balloons important?Resource optimization.Using memory balloon technology, memory is taken out of virtual machines that are currently not using all available memory, and unused memory is reallocated to virtual machines that need additional resources.Memory availability.Rather than simply not supplying the virtual machine with the resources it needs because of demand or process surges, memory balloons provide more memory when needed.Reduce costs.By using memory more efficiently, there is no need to deploy more physical servers or allocate more physical memory, which incurs additional operational and energy costs.
Memory balloons also have some problems, high balloon memory utilization.One of the problems that can arise is high utilization.The balloon driver can take up so much memory that the hypervisor lacks all the resources it needs to run at its best performance.Performance.If more than one running virtual machine requests balloon memory at the same time, there can be a spike in CPU and physical disk usage, as the hypervisor USES memory swapping to acquire resources, further reducing the overall performance of the system